Vibetuner generates full-stack web applications with authentication, database, frontend, Docker deployment, and CLI tools pre-configured.
Built by All Tuner Labs for rapid iteration and modern development.
uvx vibetuner scaffold new my-project
cd my-project && just dev
# → Full application running at http://localhost:8000In 30 seconds you have:
- ✅ FastAPI backend with async support
- ✅ Flexible database: MongoDB (Beanie) or SQL (SQLModel/SQLAlchemy)
- ✅ OAuth + magic link authentication
- ✅ HTMX reactive frontend
- ✅ Tailwind CSS + DaisyUI styling
- ✅ Docker dev/prod environments
- ✅ Background jobs with Redis (optional)
- ✅ i18n support
- ✅ Hot reload for everything
No installation needed - use uvx:
uvx vibetuner scaffold new my-appOr install globally:
uv tool install vibetuner
vibetuner scaffold new my-app# Create project (interactive)
uvx vibetuner scaffold new my-app
# Or skip questions with defaults
uvx vibetuner scaffold new my-app --defaults
# Start developing
cd my-app
just dev # Docker mode with hot reloadVisit http://localhost:8000 - your app is running!
Born from real needs at All Tuner Labs when spawning new projects:
- Simplicity: Minimal boilerplate, clear conventions, obvious patterns
- Speed: Sub-second hot reload, one command to start, fast iteration
- Modern Stack: Latest stable versions, async-first, production-tested
- Assistant-Friendly: Works great with Claude, Cursor, and other coding AI
- MongoDB + Beanie ODM - Document database (optional)
- SQLModel / SQLAlchemy - SQL databases: PostgreSQL, MySQL, MariaDB, SQLite (optional)
- Redis + Streaq - Caching and background jobs (optional)
- HTMX - Dynamic HTML without complex JavaScript
- Tailwind CSS - Utility-first CSS framework
- DaisyUI - Beautiful Tailwind components
- Jinja2 - Template engine with i18n
- Docker - Multi-stage builds for dev/prod
- uv - Fast Python package management
- bun - Fast JavaScript tooling
- just - Command runner
FastAPI: Async-first, automatic API docs, Pydantic validation, type hints everywhere.
Flexible databases: Start with MongoDB for rapid prototyping, or use PostgreSQL/MySQL/SQLite with SQLModel for relational data. Both are optional - use what fits your project.
HTMX over React/Vue: Simplicity wins. Server-rendered HTML with sprinkles of interactivity. Less complexity, faster development, easier to reason about.
Tailwind + DaisyUI: Utility-first CSS is fast once you learn it. DaisyUI provides components without JavaScript bloat.
Docker-first: Consistent environments, easy deployment, no "works on my machine" problems.
uv + bun: Speed matters. Both are order-of-magnitude faster than pip/npm. Fast lockfiles, fast installs, fast everything.
# Terminal 1: Frontend assets (auto-rebuild on changes)
bun dev
# Terminal 2: Backend server (auto-reload on changes)
just local-devjust dev # All-in-one with hot reload
just worker-dev # Background worker (if enabled)just sync # Sync all dependencies
just format # Format code
just build-prod # Test production buildGenerated projects separate framework code from your code:
my-app/
├── src/vibetuner/ # Core framework (immutable)
│ ├── frontend/ # FastAPI app, auth, middleware
│ ├── models/ # User, OAuth models
│ ├── services/ # Email, storage services
│ └── cli/ # CLI framework
├── src/app/ # Your code (edit freely)
│ ├── frontend/routes/ # Your HTTP routes
│ ├── models/ # Your database models
│ ├── services/ # Your business logic
│ └── tasks/ # Your background jobs
├── templates/ # Jinja2 templates
├── assets/ # Static files
└── Dockerfile # Production deployment
Core framework handles authentication, database, email, etc. Your code focuses on business logic.
Built-in authentication with zero config:
- OAuth: Google, GitHub, and more via Authlib
- Magic Links: Passwordless email authentication
- Sessions: Secure cookie-based sessions
- Extensible: Add providers or custom auth easily
Full i18n support:
just extract-translations # Extract strings
just compile-locales # Compile translations{% trans %}Welcome to {{ app_name }}{% endtrans %}just test-build-prod # Test locally
just release # Build and pushEnvironment variables via .env:
# MongoDB (optional)
MONGODB_URL=mongodb://localhost:27017/mydb
# SQL database (optional) - PostgreSQL, MySQL, or SQLite
DATABASE_URL=postgresql+asyncpg://user:pass@localhost/mydb
# DATABASE_URL=sqlite+aiosqlite:///./data.db
# Redis for background jobs (optional)
REDIS_URL=redis://localhost:6379
SECRET_KEY=your-secret-key- Development Guide – Daily workflow for generated projects
- CLI Reference – Usage for
vibetuner scaffoldandvibetuner run - Scaffolding Reference – Copier prompts and update commands
- Changelog – Version history and release notes
- Contributing – Contribution guidelines
- Assistant Guidance – Tips for AI coding partners
Vibetuner consists of three packages:
| Package | Description | Published |
|---|---|---|
vibetuner |
Python framework | PyPI |
@alltuner/vibetuner |
Frontend dependencies | npm |
| Scaffolding template | Copier template | GitHub |
All version-locked and tested together.
Update existing projects to the latest template:
cd my-app
vibetuner scaffold updateWe welcome contributions that align with our core principles! See CONTRIBUTING.md.
Built for All Tuner Labs' internal needs, shared publicly because it might help you too.
MIT License - Copyright (c) 2025 All Tuner Labs, S.L.
See LICENSE for details.
- Repository: https://github.com/alltuner/vibetuner
- Changelog: https://github.com/alltuner/vibetuner/blob/main/CHANGELOG.md
- Issues: https://github.com/alltuner/vibetuner/issues
- PyPI: https://pypi.org/project/vibetuner/
- npm: https://www.npmjs.com/package/@alltuner/vibetuner
Created and maintained by All Tuner Labs, S.L. and David Poblador i Garcia (@davidpoblador | davidpoblador.com)
Made with ❤️ for rapid prototyping and production deployments