Ctrl K
ComunidadGuías…

Justfile

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
export DATASETTE_SECRET := "not_a_secret"

# Run tests and linters
@default: test lint

# Setup project
@init:
  uv sync

# Run pytest with supplied options
@test *options: init
  uv run pytest -n auto {{options}}

# Install Playwright browser support, Chromium by default
@playwright-install browser="chromium":
  uv run --group playwright playwright install {{browser}}

# Install all Playwright browsers used by the test suite
@playwright-install-all:
  uv run --group playwright playwright install chromium firefox webkit

# Run Playwright tests, Chromium by default
@playwright browser="chromium" *options:
  uv run --group playwright pytest tests/test_playwright.py --playwright --browser {{browser}} {{options}}

# Run Playwright tests against all supported browsers
@playwright-all *options:
  uv run --group playwright pytest tests/test_playwright.py --playwright --browser chromium --browser firefox --browser webkit {{options}}

@codespell:
  uv run codespell README.md --ignore-words docs/codespell-ignore-words.txt
  uv run codespell docs/*.rst --ignore-words docs/codespell-ignore-words.txt
  uv run codespell datasette -S datasette/static --ignore-words docs/codespell-ignore-words.txt
  uv run codespell tests --ignore-words docs/codespell-ignore-words.txt

# Run linters: black, ruff, prettier, cog
@lint: codespell
  uv run black datasette tests --check
  uv run ruff check datasette tests
  npm run prettier -- --check
  uv run cog --check README.md docs/*.rst

# Apply ruff fixes
@fix:
  uv run ruff check --fix datasette tests

# Rebuild docs with cog
@cog:
  uv run cog -r README.md docs/*.rst

# Serve live docs on localhost:8000
@docs: shots cog blacken-docs
  uv run make -C docs livehtml

# Build docs as static HTML
@docs-build: cog blacken-docs
  rm -rf docs/_build && cd docs && uv run make html

# Take any missing documentation screenshots defined in docs/shots.yml
@shots:
  uv run --group shots shot-scraper install
  cd docs && uv run --group shots shot-scraper multi shots.yml --no-clobber --reduced-motion --retina

# Apply Black
@black:
  uv run black datasette tests

# Apply blacken-docs
@blacken-docs:
  uv run blacken-docs -l 60 docs/*.rst

# Apply prettier
@prettier:
  npm run fix

# Format code with both black and prettier
@format: black prettier blacken-docs

@serve *options:
  uv run sqlite-utils create-database data.db
  uv run sqlite-utils create-table data.db docs id integer title text --pk id --ignore
  uv run python -m datasette data.db --root --reload {{options}}