Skip to content
/ Python-Template Public template

🐍 Opinionated uv Python template with batteries included. Cursorrules, LLMs, linting, dead code analysis, and a whole lot more.

License

Notifications You must be signed in to change notification settings

Miyamura80/Python-Template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Python-Template

2

Description of the project here.

Key Features β€’ Requirements β€’ Quick Start β€’ Configuration β€’ Credits β€’ About the Core Contributors

Project Version Python Version GitHub repo size GitHub Actions Workflow Status


2

Key Features

  • Super opinionated python stack to enable super fast development on new projects without getting the usual tooling available
  • CI/Linters built-in
  • LLM Inference/Observability built-in
  • (Optional) saas branch contains default template for building SaaS apps

Requirements

  • uv
    curl -LsSf https://astral.sh/uv/install.sh | sh
    

Quick Start

  • make all - runs main.py
  • make fmt - runs black linter, an opinionated linter
  • make banner - create a new banner that makes the README nice 😊
  • make test - runs all tests defined by TEST_TARGETS = tests/folder1 tests/folder2

Configuration Options

This project uses pydantic-settings for configuration management, providing automatic validation and type checking.

Configuration Files:

  • common/global_config.yaml - Base configuration values
  • common/config_models.py - Pydantic models for validation
  • common/global_config.py - Main Config class
  • .env - Environment variables and secrets (create this file)
  1. Global config: common/global_config.yaml - Add hyperparameters here

  2. Environment Variables: Store environment variables in .env (git-ignored) and common/global_config.py will read them automatically with validation:

    .env file:

    OPENAI_API_KEY=sk-...

    python file:

    from common import global_config
    
    print(global_config.OPENAI_API_KEY)

Credits

This software uses the following tools:

About the Core Contributors

Made with contrib.rocks.

About

🐍 Opinionated uv Python template with batteries included. Cursorrules, LLMs, linting, dead code analysis, and a whole lot more.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •