71 lines
1.1 KiB
Markdown
71 lines
1.1 KiB
Markdown
# {{ cookiecutter.project_name }}
|
|
|
|
{{ cookiecutter.description }}
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
uv sync --frozen --group dev
|
|
```
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
{{ cookiecutter.project_slug }} --help
|
|
{{ cookiecutter.project_slug }} config show
|
|
{{ cookiecutter.project_slug }} config init
|
|
```
|
|
|
|
## Configuration
|
|
|
|
Default config path (XDG):
|
|
|
|
```
|
|
~/.config/{{ cookiecutter.project_slug }}/config.toml
|
|
```
|
|
|
|
Override with:
|
|
|
|
```bash
|
|
export {{ cookiecutter.package_name | upper }}_CONFIG=/path/to/config.toml
|
|
```
|
|
|
|
Resolution order:
|
|
1. `{{ cookiecutter.package_name | upper }}_CONFIG` explicit path (errors if missing)
|
|
2. `~/.config/{{ cookiecutter.project_slug }}/config.toml` when present
|
|
3. In-code defaults
|
|
|
|
## Reproducible Workflow
|
|
|
|
```bash
|
|
uv lock
|
|
uv sync --frozen --group dev
|
|
uv run invoke lint
|
|
uv run invoke test
|
|
```
|
|
|
|
## Development
|
|
|
|
### Setup
|
|
```bash
|
|
uv sync --frozen --group dev
|
|
```
|
|
|
|
### Code Quality
|
|
```bash
|
|
uv run ruff check src tests
|
|
uv run ruff format --check src tests
|
|
uv run mypy src
|
|
uv run invoke lint
|
|
```
|
|
|
|
### Testing
|
|
```bash
|
|
uv run pytest
|
|
uv run invoke test
|
|
```
|
|
|
|
## License
|
|
|
|
MIT License - see LICENSE file for details.
|