Skip to content

nexios-labs/nexios

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1,697 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

NEXIOS

Typing SVG

Support

Nexios 3.x.x

Python Version Downloads Contributions Active Development


Star the repo if u like it🌟

Nexios is a utility-first Python web framework designed for developers who need powerful tooling and extensibility. Built with a modular architecture, Nexios provides a comprehensive toolkit for building everything from simple APIs to complex distributed systems. The framework emphasizes developer productivity through its rich ecosystem of utilities, middleware, and community-contributed extensions. Whether you're building microservices, real-time applications, or enterprise-grade backends, Nexios gives you the tools and flexibility to craft solutions that scale with your needs.


Installation πŸ“¦

Requirements:

  • Python 3.9 or higher
  • pip (Python package manager)

To install Nexios, you can use several methods depending on your environment and preferred package manager. Below are the instructions for different package managers:

1. From pip (Standard Python Package Manager)

# Ensure you have Python 3.9+
python --version

# Install Nexios
pip install nexios

# Or install with specific version
pip install nexios == 3.4.0

Utility-First Features ✨

Core Utilities & Tooling

  • Modular Architecture - Mix and match components as needed
  • Rich CLI Tooling - Project scaffolding, code generation, and development tools
  • Plugin System - Extensible architecture for custom functionality
  • Developer Utilities - Debug toolbar, profiling, and development helpers
  • Testing Framework - Built-in testing utilities and fixtures

Web Framework Essentials

  • Powerful Routing - Type-safe routing with parameter validation
  • Automatic OpenAPI Documentation - Self-documenting APIs
  • Authentication Toolkit - Multiple auth backends and strategies
  • Middleware Pipeline - Composable request/response processing
  • WebSocket Support - Real-time communication utilities
  • Session Management - Flexible session handling

Community & Extensibility

  • Community Contrib Package - nexios-contrib with community extensions
  • Custom Middleware Support - Build and share your own middleware
  • Event System - Hook into framework events and signals
  • Dependency Injection - Clean, testable code architecture
  • Security Utilities - CORS, CSRF, secure headers, and more

Quick Start - Utility-First Approach

from nexios import NexiosApp
from nexios.http import Request, Response

# Create app with built-in utilities
app = NexiosApp(title="My Utility API")

@app.get("/")
async def basic(request: Request, response: Response):
    return {"message": "Hello from Nexios utilities!"}

Using Community Extensions

from nexios import NexiosApp, Depend
from nexios_contrib.etag import ETagMiddleware
from nexios_contrib.trusted import TrustedHostMiddleware
from nexios.http import Request, Response

app = NexiosApp()

# Add community-contributed middleware
app.add_middleware(ETagMiddleware())
app.add_middleware(TrustedHostMiddleware(allowed_hosts=["example.com"]))

# Utility function with dependency injection
async def get_database():
    # Your database utility here
    return {"connection": "active"}

@app.get("/health")
async def health_check(request: Request, response: Response, db: Depend(get_database)):
    return {"status": "healthy", "database": db}

Visit http://localhost:8000/docs to view the Swagger API documentation.

See the full docs

πŸ‘‰ https://nexioslabs.com

Contributors


🌟 Community-Driven Development

Nexios thrives on community contributions and collaboration. We believe the best tools are built by developers, for developers.

Get Involved

  • Contribute Code: Submit PRs to the main framework or nexios-contrib
  • Share Utilities: Create and share your own middleware, plugins, and tools
  • Join Discussions: Participate in GitHub Discussions
  • Help Others: Answer questions and help fellow developers

Community Resources

Support the Project

If Nexios has helped you build something awesome, consider supporting its continued development:

πŸ‘‰ Buy Me a Coffee and help fuel the community-driven future of Nexios.