https://github.com/level09/enferno
This collection of modern libraries and tools, built on top of the Flask framework, allows you to quickly create any website or web-based application (SAAS) with impressive speed.
https://github.com/level09/enferno
celery css docker flask hackathon postgresql python redis saas sqlalchemy sqlite vue vuetify webframework
Last synced: 10 days ago
JSON representation
This collection of modern libraries and tools, built on top of the Flask framework, allows you to quickly create any website or web-based application (SAAS) with impressive speed.
- Host: GitHub
- URL: https://github.com/level09/enferno
- Owner: level09
- License: mit
- Created: 2014-07-09T12:57:38.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2024-03-29T11:04:59.000Z (about 1 year ago)
- Last Synced: 2024-04-14T19:24:32.700Z (12 months ago)
- Topics: celery, css, docker, flask, hackathon, postgresql, python, redis, saas, sqlalchemy, sqlite, vue, vuetify, webframework
- Language: CSS
- Homepage: https://enferno.readthedocs.io/
- Size: 8.18 MB
- Stars: 470
- Watchers: 23
- Forks: 74
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- jimsghstars - level09/enferno - This collection of modern libraries and tools, built on top of the Flask framework, allows you to quickly create any website or web-based application (SAAS) with impressive speed. (CSS)
- starred-awesome - enferno - A Flask-based Framework for the Next Decade. (Python)
- awesome-opensource-boilerplates - Enferno Framework - Flask based framework. (Web Development / Flask)
- awesome-opensource-boilerplates - Enferno Framework - Flask based framework. (Web Development / Flask)
README
# Project Enferno
[](https://opensource.org/licenses/MIT)
Enferno is a modern Flask framework optimized for AI-assisted development workflows. By combining carefully crafted development patterns, smart Cursor Rules, and modern libraries, it enables developers to build sophisticated web applications with unprecedented speed. Whether you're using AI-powered IDEs like Cursor or traditional tools, Enferno's intelligent patterns and contextual guides help you create production-ready SAAS applications faster than ever.

Key Features
===========
- **Modern Stack**: Python 3.11+, Flask, Vue 3, Vuetify 3
- **Authentication**: Flask-Security with role-based access control
- **OAuth Integration**: Google and GitHub login via Flask-Dance
- **Database**: SQLAlchemy ORM with PostgreSQL/SQLite support
- **Task Queue**: Celery with Redis for background tasks
- **Frontend**: Client-side Vue.js with Vuetify components
- **Security**: CSRF protection, secure session handling
- **Docker Ready**: Production-grade Docker configuration
- **Cursor Rules**: Smart IDE-based code generation and assistance
- **Package Management**: Fast installation with uvFrontend Features
---------------
- Vue.js without build tools - direct browser integration
- Vuetify Material Design components
- Axios for API calls
- Snackbar notifications pattern
- Dialog forms pattern
- Data table server pattern
- Authentication state integration
- Material Design IconsOAuth Integration
---------------
Supports social login with:
- Google (profile and email scope)
- GitHub (user:email scope)Configure in `.env`:
```bash
# Google OAuth
GOOGLE_AUTH_ENABLED=true
GOOGLE_OAUTH_CLIENT_ID=your_client_id
GOOGLE_OAUTH_CLIENT_SECRET=your_client_secret# GitHub OAuth
GITHUB_AUTH_ENABLED=true
GITHUB_OAUTH_CLIENT_ID=your_client_id
GITHUB_OAUTH_CLIENT_SECRET=your_client_secret
```Prerequisites
------------
- Python 3.11+
- Redis (for caching and sessions)
- PostgreSQL (optional, SQLite works for development)
- Git
- uv (fast Python package installer and resolver)Quick Start
----------### Local Setup
1. Install uv:
```bash
# Install using pip
pip install uv# Or using the installer script
curl -sSf https://astral.sh/uv/install.sh | bash
```2. Clone and setup:
```bash
git clone [email protected]:level09/enferno.git
cd enferno
./setup.sh # Creates Python environment, installs requirements, and generates secure .env
```3. Activate Environment:
```bash
source .venv/bin/activate
```4. Initialize application:
```bash
flask create-db # Setup database
flask install # Create admin user
```5. Run development server:
```bash
flask run
```### Docker Setup
One-command setup with Docker:
```bash
docker compose up --build
```The Docker setup includes:
- Redis for caching and session management
- PostgreSQL database
- Nginx for serving static files
- Celery for background tasksConfiguration
------------Key environment variables (.env):
```bash
# Core
FLASK_APP=run.py
FLASK_DEBUG=1 # 0 in production
SECRET_KEY=your_secret_key# Database (choose one)
SQLALCHEMY_DATABASE_URI=sqlite:///enferno.sqlite3
# Or for PostgreSQL:
# SQLALCHEMY_DATABASE_URI=postgresql://username:password@localhost/dbname# Redis & Celery
REDIS_URL=redis://localhost:6379/0
CELERY_BROKER_URL=redis://localhost:6379/1
CELERY_RESULT_BACKEND=redis://localhost:6379/2# Email Settings (optional)
MAIL_SERVER=smtp.example.com
MAIL_PORT=465
MAIL_USE_SSL=True
MAIL_USERNAME=your_email
MAIL_PASSWORD=your_password
[email protected]# OAuth (optional)
GOOGLE_AUTH_ENABLED=true
GOOGLE_OAUTH_CLIENT_ID=your_client_id
GOOGLE_OAUTH_CLIENT_SECRET=your_client_secretGITHUB_AUTH_ENABLED=true
GITHUB_OAUTH_CLIENT_ID=your_client_id
GITHUB_OAUTH_CLIENT_SECRET=your_client_secret# Security Settings
SECURITY_PASSWORD_SALT=your_secure_salt
SECURITY_TOTP_SECRETS=your_totp_secrets
```Security Features
---------------
- Two-factor authentication (2FA)
- WebAuthn support
- OAuth integration
- Password policies
- Session protection
- CSRF protection
- Secure cookie settings
- Rate limiting
- XSS protectionFor detailed documentation, visit [docs.enferno.io](https://docs.enferno.io)
Contributing
-----------
Contributions welcome! Please read our [Contributing Guide](CONTRIBUTING.md).License
-------
MIT licensed.