A modern, feature-rich API application built with the Nexios framework, featuring robust authentication, database integration, and a clean architecture.
- 🔐 JWT-based Authentication System
- 📦 Modular Route Structure
- 🗃️ Database Integration
- 🛠️ Environment Configuration Management
- 📝 OpenAPI Documentation
- ⚡ High-Performance Async Operations
- Python 3.9+
- Nexios Framework (v2.3.2)
- Dependencies:
- python-jose[cryptography]: JWT token handling
- passlib[bcrypt]: Password hashing
- python-multipart: Form data processing
- aiosqlite: Async SQLite support
- voltar: Schema validation
app/
├── migrations/ # Database migrations
├── models/ # Data models
├── routes/ # API routes
│ ├── auth/ # Authentication endpoints
│ └── index/ # Main application endpoints
├── schemas/ # Data validation schemas
├── utils/ # Utility functions
├── config.py # Application configuration
└── main.py # Application entry point
The application implements a JWT-based authentication system with the following features:
- User registration and login endpoints
- Access token (30 minutes validity)
- Refresh token (7 days validity)
- Secure password hashing with bcrypt
POST /auth/signup
Content-Type: application/json
{
"email": "user@example.com",
"password": "secure_password"
}POST /auth/login
Content-Type: application/json
{
"email": "user@example.com",
"password": "secure_password"
}- Python 3.9 or higher
- Poetry (recommended) or pip
- Clone the repository:
git clone <repository-url>
cd nexios-api-app- Install dependencies:
# Using Poetry (recommended)
poetry install
# Using pip
pip install -r requirements.txt- Create a
.envfile:
DEBUG=True
secret_key=your-secure-secret-key
DB_URL=sqlite:///db.sqlite3- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
This project is licensed under the terms of the license provided with the repository.
Built with ❤️ using Nexios Framework