Metadata-Version: 2.4
Name: basiliskcli
Version: 0.1.0
Summary: Bootstrap Python CLI projects with best practices
Project-URL: Homepage, https://github.com/martin-juul/basiliskcli
Project-URL: Repository, https://github.com/martin-juul/basiliskcli
Project-URL: Issues, https://github.com/martin-juul/basiliskcli/issues
Author-email: Martin Juul <code@juul.xyz>
License: MIT
License-File: LICENSE
Keywords: bootstrap,cli,python,scaffold,template
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development
Classifier: Topic :: Utilities
Requires-Python: >=3.10
Requires-Dist: questionary>=2.0.0
Requires-Dist: rich>=13.0.0
Requires-Dist: typer>=0.12.0
Provides-Extra: build
Requires-Dist: build>=1.0; extra == 'build'
Requires-Dist: twine>=6.0; extra == 'build'
Provides-Extra: dev
Requires-Dist: coverage[toml]>=7.4; extra == 'dev'
Requires-Dist: mypy>=1.8; extra == 'dev'
Requires-Dist: pytest-cov>=5.0; extra == 'dev'
Requires-Dist: pytest-mock>=3.12; extra == 'dev'
Requires-Dist: pytest-xdist>=3.5; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.6.0; extra == 'dev'
Description-Content-Type: text/markdown

# Basilisk CLI

Bootstrap Python CLI projects with best practices.

## Installation

```bash
# Using uv (recommended)
uv pip install basiliskcli

# Using pip
pip install basiliskcli
```

## Usage

### Create a new project (interactive)

```bash
basiliskcli new my-cli-app --interactive
```

### Create a new project (command line)

```bash
basiliskcli new my-cli-app \
    --description "My awesome CLI app" \
    --author "Your Name" \
    --email "your.email@example.com" \
    --python-version 3.10
```

### Quick start

```bash
# Create project with defaults
basiliskcli new my-cli-app

# Navigate to the project
cd my-cli-app

# Run the CLI
make run-help
```

## What's included

The generated project includes:

- **Modern packaging** with `pyproject.toml` and hatchling
- **CLI framework** - Typer (default) or argparse
- **Testing** - pytest with coverage support
- **Linting** - ruff for fast linting and formatting
- **Type checking** - mypy with strict mode
- **Makefile** - Common development tasks

## Project structure

```
my-cli-app/
├── src/
│   └── my_cli_app/
│       ├── __init__.py
│       └── cli.py
├── tests/
│   ├── __init__.py
│   ├── conftest.py
│   ├── unit/
│   │   ├── __init__.py
│   │   └── test_cli.py
│   └── integration/
│       ├── __init__.py
│       └── test_integration.py
├── pyproject.toml
├── Makefile
├── README.md
├── LICENSE
└── .gitignore
```

## Development commands

```bash
make init        # Initialize development environment
make test        # Run tests
make test-cov    # Run tests with coverage
make lint        # Run linter
make fmt         # Format code
make typecheck   # Run type checker
make check       # Run all checks
make build       # Build package
```

## License

MIT License - see [LICENSE](LICENSE) for details.
