Installation
Get Tasteful up and running on your system in minutes.Prerequisites
Before installing Tasteful, ensure you have:- Python 3.8+ (Python 3.11+ recommended)
- Poetry (for dependency management) or pip
- Git (for cloning examples and contributing)
- Check Python Version
- Install Poetry
Install Tasteful
Using Poetry (Recommended)
For new projects, use the Tasteful CLI to generate a project template:Using pip
For existing projects or minimal installations:Development Installation
To contribute to Tasteful or work with the latest features:Verify Installation
Create a simple test application to verify everything works:http://localhost:8000/docs to see the automatic API documentation, or http://localhost:8000/identity/me to test the identity endpoint.
Project Structure
A typical Tasteful project structure:Configuration
Environment Variables
Configure your application using environment variables:Configuration File
Create aconfig/settings.py file using Tasteful’s BaseConfig:
For comprehensive configuration patterns, see the Configuration Management Guide.
Database Setup
SQLAlchemy Integration
For database integration, install SQLAlchemy support:Migrations with Alembic
Set up database migrations:Docker Setup
Dockerfile
Docker Compose
IDE Setup
VS Code
Recommended VS Code extensions:PyCharm
- Open the project directory
- Configure Poetry interpreter: Settings > Project > Python Interpreter > Add > Poetry Environment
- Enable type checking: Settings > Editor > Inspections > Python > Type checker
Next Steps
Quick Start Tutorial
Build your first Tasteful application
Core Concepts
Learn about flavors, services, and architecture
Built-in Flavors
Explore ready-to-use functionality
Troubleshooting
Common Issues
ImportError: No module named 'tasteful'
ImportError: No module named 'tasteful'
Ensure you’ve installed Tasteful in your current Python environment:
Port already in use
Port already in use
Change the port in your main.py or kill the process using port 8000:
Database connection errors
Database connection errors
Verify your database is running and the connection string is correct: