Skip to main content

Bootstrap Python CLI projects with best practices

Project description

Basilisk CLI

Bootstrap Python CLI projects with best practices.

Installation

# Using uv (recommended)
uv pip install basiliskcli

# Using pip
pip install basiliskcli

Usage

Create a new project (interactive)

basiliskcli new my-cli-app --interactive

Create a new project (command line)

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

Quick start

# 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

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 for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

basiliskcli-0.1.0.tar.gz (73.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

basiliskcli-0.1.0-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file basiliskcli-0.1.0.tar.gz.

File metadata

  • Download URL: basiliskcli-0.1.0.tar.gz
  • Upload date:
  • Size: 73.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for basiliskcli-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ab2abc145702adb37dad93c085831197256420a0793132ae03a9afff7943ce64
MD5 910e77805ed95cade0203865f198b26d
BLAKE2b-256 913c466ad5e4e88a4406b8ba547926b0366072b2d54449f1497f7fd200b3bce0

See more details on using hashes here.

File details

Details for the file basiliskcli-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: basiliskcli-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for basiliskcli-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fc801e89d00a34584e7ed8dca87593819b03a9242b5babd48d60e151e8a1dea6
MD5 dca5e3236250e534f94853354d73bfe5
BLAKE2b-256 fc63ad9e9062db0bd5552f2be5bce02516ec46da9ec2d0e8c691d91c30538ec0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page