Claude-skill-registry backend-quality
Runs backend quality checks including formatting, linting, and tests. Use before commits, to verify code quality, or when the user says "check backend", "run backend tests", "format backend".
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/backend-quality" ~/.claude/skills/majiayu000-claude-skill-registry-backend-quality && rm -rf "$T"
manifest:
skills/data/backend-quality/SKILL.mdsource content
Backend Quality Checks
Runs formatting, linting, and tests for the backend.
Quick Run (Recommended)
Using task automation:
cd back && task format && task tests
Or run individually:
1. Format Code
cd back && task format
This runs pre-commit hooks including:
- Ruff: Linting and formatting
- Autoflake: Remove unused imports
2. Check Linting
cd back && uv run ruff check src tests
Fix issues automatically:
cd back && uv run ruff check --fix src tests
3. Check Formatting
cd back && uv run ruff format --check src tests
Apply formatting:
cd back && uv run ruff format src tests
4. Run Tests
All tests:
cd back && task tests
Or with pytest directly:
cd back && uv run pytest tests/ -v
Specific module:
cd back && uv run pytest tests/api/example/ -v
Single test file:
cd back && uv run pytest tests/api/example/domain/test_create_item.py -v
Configuration
- Ruff: Configured in
back/pyproject.toml - Line length: 110 characters
- Python version: 3.13
Common Issues
Import Order
Ruff handles import sorting automatically. Run
task format to fix.
Unused Imports
Autoflake removes them. Run
task format to fix.
Type Hints
Use
| for optional types:
# Good def foo(x: str | None) -> int | None: # Bad (deprecated) def foo(x: Optional[str]) -> Optional[int]:
Test Failures
Check that Docker containers are running:
docker compose ps
If database tests fail, ensure database is initialized:
docker compose down && docker compose up -d
Pre-commit Checklist
Before committing:
- Format and linttask format
- Run all teststask tests- Review changes
- Commit