A comprehensive Python project template with LLM integration, designed for building AI-powered applications. This template provides a solid foundation with pre-configured LLM client, utility functions, and best practices documentation.
- LLM Integration: Pre-configured OpenRouter client for easy access to various LLM models
- Project Structure: Well-organized Python package structure with separate modules for API clients and utilities
- Documentation: Comprehensive guides and best practices
manifesto.md: Development principles and practicesprojectplan.md: Template for project planningclinetips.md: Tips for working with Clinelibrarynotes.md: Documentation of standard librariesdev_log.md: Development session tracking
- Configuration Management: YAML-based configuration and environment variables support
- Development Tools: Integrated development environment setup with virtual environment support
my_project/
├── .venv/ # Virtual environment
├── .env # Environment variables (API keys, etc.)
├── .env.example # Example .env file
├── .gitignore # Git ignore file
├── prompts/ # Prompts for LLMs
├── src/ # Source code
│ ├── api/ # API interaction modules
│ │ ├── __init__.py
│ │ └── llm_client.py
│ ├── utils/ # Utility functions
│ │ ├── __init__.py
│ │ └── helpers.py
│ └── main.py # Main application entry point
├── tests/ # Unit tests
├── config/ # Configuration files
│ └── config.yaml
├── requirements.txt # Project dependencies
├── README.md # Project documentation
├── manifesto.md # Development principles
├── projectplan.md # Project planning template
├── clinetips.md # Tips for working with Cline
├── librarynotes.md # Library documentation
└── dev_log.md # Development log
- Clone the repository:
git clone https://github.com/williamrthomas/base.git new-project-name
cd new-project-name- Create and activate virtual environment:
python3 -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Set up environment variables:
cp .env.example .env
# Edit .env with your API keys- Update configuration:
# Edit config/config.yaml with your project-specific settings- Read through
manifesto.mdto understand the development principles and practices - Use
projectplan.mdto plan your project - Follow the tips in
clinetips.mdfor effective development with Cline - Reference
librarynotes.mdfor information about the standard libraries - Maintain a development log in
dev_log.md
The template includes support for common Python libraries:
- LangChain: Framework for building LLM applications
- LlamaIndex: Data framework for LLM applications
- PyMuPDF: PDF processing
- Openpyxl: Excel file handling
- Requests: HTTP client
- BeautifulSoup4: HTML parsing
- NumPy: Numerical computing
- Pandas: Data manipulation
- Scikit-learn: Machine learning
- Requests-cache: HTTP caching
- OpenAI: OpenAI API client
Feel free to submit issues and enhancement requests!
This project is licensed under the MIT License - see the LICENSE file for details.