Skip to main content

A FastAPI-based web framework

Project description

Vilcos Framework 🚀

A modern, full-stack web framework built on FastAPI and Vue.js with real-time capabilities.

Features ✨

  • Real-time WebSockets - Built-in support for multi-channel WebSocket communication
  • Modern UI - Integrated with Vue 3 + Vuetify for beautiful interfaces
  • Authentication - Complete auth system with Supabase integration
  • Database - Async SQLAlchemy with connection pooling
  • API Ready - FastAPI-powered REST endpoints with automatic OpenAPI docs
  • Developer Friendly - CLI tools, hot reloading, and interactive shell

Quick Start 🏃

Installation

# Create and activate virtual environment
python -m venv venv
source venv/bin/activate  # On Windows use: venv\Scripts\activate

# Install vilcos
pip install vilcos

Setup

  1. Create project and environment:
mkdir myproject && cd myproject

# Create .env file
cat > .env << EOF
DATABASE_URL=postgresql+asyncpg://user:pass@localhost/dbname
SUPABASE_URL=your-supabase-url
SUPABASE_KEY=your-supabase-key
SECRET_KEY=your-secret-key
REDIS_URL=redis://localhost:6379
EOF
  1. Initialize and run:
vilcos init-db
vilcos run

Your app is now running at http://localhost:8000 🎉

Project Structure 📁

myproject/
├── .env                # Configuration
└── vilcos/            # Application
    ├── static/        # Assets
    ├── templates/     # Views
    ├── routes/        # Endpoints
    ├── models.py      # Database models
    └── config.py      # Settings

Key Features 🔑

WebSockets

// Connect and send messages
const ws = new WebSocket('ws://localhost:8000/live/ws/mychannel');
ws.send(JSON.stringify({ message: 'Hello!' }));

// Receive messages
ws.onmessage = (event) => console.log(JSON.parse(event.data));

Authentication

  • Built-in routes: /auth/signin, /auth/signup, /auth/signout
  • Supabase integration
  • GitHub OAuth support
  • Session management with Redis

CLI Tools

vilcos version          # Show version
vilcos run             # Development server
vilcos init-db         # Setup database
vilcos shell           # Interactive shell

Requirements 📋

  • Python 3.8+
  • PostgreSQL
  • Redis

Configuration ⚙️

Essential .env settings:

DATABASE_URL=postgresql+asyncpg://user:pass@localhost/dbname
SUPABASE_URL=your-project-url
SUPABASE_KEY=your-api-key
SECRET_KEY=your-secret-key
REDIS_URL=redis://localhost:6379

Contributing 🤝

  1. Fork the repository
  2. Create feature branch (git checkout -b feature/amazing)
  3. Commit changes (git commit -m 'Add feature')
  4. Push branch (git push origin feature/amazing)
  5. Open Pull Request

License 📄

MIT License - see LICENSE file

Support 💬

  • GitHub Issues: Bug reports
  • GitHub Discussions: Questions
  • Documentation: [Coming Soon]

Built with ❤️ using FastAPI, Vue.js, and modern web technologies.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vilcos-0.1.2.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vilcos-0.1.2-py3-none-any.whl (17.4 kB view details)

Uploaded Python 3

File details

Details for the file vilcos-0.1.2.tar.gz.

File metadata

  • Download URL: vilcos-0.1.2.tar.gz
  • Upload date:
  • Size: 13.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.0

File hashes

Hashes for vilcos-0.1.2.tar.gz
Algorithm Hash digest
SHA256 2bc96706e43b7ccde33d07cf5a4f19b59d03bd0b6dcf69bcd0ac3096226fad29
MD5 eb86b7fc399c8ed8fc7aa3f8d9ceb53e
BLAKE2b-256 f0baa9ea748a6ee80eecd88d035e5f1a8ff2f01c517e61e6659e13209e0c3c92

See more details on using hashes here.

File details

Details for the file vilcos-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: vilcos-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 17.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.0

File hashes

Hashes for vilcos-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8602e0f1b455e0a7b5f2c4bde726640cbf3aeb9262a917abf28af726b1269555
MD5 34e6b743a713d5fe4c7014e47b8f85bc
BLAKE2b-256 6f5bed3c6f671e4aff98c52f687c65da2c11edd2545a182ba881ce6e0751c88e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page