Metadata-Version: 2.4
Name: nexios
Version: 3.2.0
Summary: Nexios is a modern, high-performance ASGI web framework for Python with multi-server support with zero overhead.
Author-email: Chidebele Dunamis <techwithdunamix@gmail.com>
License-Expression: BSD-3-Clause
License-File: LICENSE
Keywords: API,ASGI,HTTP,Python,async,asynchronous,backend,concurrent,framework,granian,real-time,scalable,uvicorn,web,web server,websocket
Requires-Python: >=3.9
Requires-Dist: anyio==4.11.0
Requires-Dist: itsdangerous>=2.1.2
Requires-Dist: pydantic<3.0,>=2.0
Requires-Dist: python-multipart>=0.0.6
Requires-Dist: typing-extensions>=4.12.2; python_version < '3.10'
Requires-Dist: uvicorn>=0.27.0
Provides-Extra: all
Requires-Dist: anyio>=4.0.0; extra == 'all'
Requires-Dist: click>=8.1.3; extra == 'all'
Requires-Dist: granian>=1.2.0; extra == 'all'
Requires-Dist: itsdangerous>=2.1.2; extra == 'all'
Requires-Dist: jinja2>=3.1.6; extra == 'all'
Requires-Dist: pyjwt>=2.7.0; extra == 'all'
Requires-Dist: python-multipart>=0.0.6; extra == 'all'
Requires-Dist: uvicorn>=0.27.0; extra == 'all'
Provides-Extra: cli
Requires-Dist: click>=8.1.3; extra == 'cli'
Provides-Extra: dev
Requires-Dist: anyio>=4.0.0; extra == 'dev'
Requires-Dist: black>=23.0.0; extra == 'dev'
Requires-Dist: click>=8.1.3; extra == 'dev'
Requires-Dist: coverage<8.0,>=6.3; extra == 'dev'
Requires-Dist: granian>=1.2.0; extra == 'dev'
Requires-Dist: httpx<0.29.0,>=0.23.3; extra == 'dev'
Requires-Dist: isort>=5.13.2; extra == 'dev'
Requires-Dist: itsdangerous>=2.1.2; extra == 'dev'
Requires-Dist: jinja2>=3.1.6; extra == 'dev'
Requires-Dist: mypy>=1.15.0; extra == 'dev'
Requires-Dist: pyjwt>=2.7.0; extra == 'dev'
Requires-Dist: pytest-asyncio<0.27.0,>=0.25.3; extra == 'dev'
Requires-Dist: pytest<8.5.0,>=8.3.4; extra == 'dev'
Requires-Dist: python-multipart>=0.0.6; extra == 'dev'
Requires-Dist: ruff>=0.0.256; extra == 'dev'
Requires-Dist: typing-extensions==4.15.0; extra == 'dev'
Requires-Dist: uvicorn>=0.27.0; extra == 'dev'
Provides-Extra: granian
Requires-Dist: granian>=1.2.0; extra == 'granian'
Provides-Extra: http
Requires-Dist: anyio>=4.0.0; extra == 'http'
Requires-Dist: itsdangerous>=2.1.2; extra == 'http'
Requires-Dist: python-multipart>=0.0.6; extra == 'http'
Requires-Dist: uvicorn>=0.27.0; extra == 'http'
Provides-Extra: jwt
Requires-Dist: pyjwt>=2.7.0; extra == 'jwt'
Provides-Extra: templating
Requires-Dist: jinja2>=3.1.6; extra == 'templating'
Description-Content-Type: text/markdown

## `NEXIOS` 



<div align="left">

<a href="https://git.io/typing-svg"><img src="https://readme-typing-svg.demolab.com?font=Fira+Code&pause=1000&color=4CAF50&center=true&width=435&lines=Nexios+ASGI+Framework;Fast%2C+Simple%2C+Flexible" alt="Typing SVG" /></a>


<p align="center">
    <img alt=Support height="350" src="https://nexios-labs.github.io/nexios/logo.png">
    </p>
    <h1 align="center">Nexios 3.x.x</h1>

   </a>
</p>

<!-- Badges Section -->
<p align="center">
  <img src="https://img.shields.io/badge/Python-3.9+-blue?logo=python" alt="Python Version">
  <img src="https://img.shields.io/badge/Downloads-10k/month-brightgreen" alt="Downloads">
  <img src="https://img.shields.io/badge/Contributions-Welcome-orange" alt="Contributions">
  <img src="https://img.shields.io/badge/Active Development-Yes-success" alt="Active Development">
</p>

<p align="center">
<a href="https://github.com/nexios-labs/Nexios?tab=followers"><img title="Followers" src="https://img.shields.io/github/followers/nexios-labs?label=Followers&style=social"></a>
<a href="https://github.com/nexios-labs/Nexios/stargazers/"><img title="Stars" src="https://img.shields.io/github/stars/nexios-labs/Nexios?&style=social"></a>
<a href="https://github.com/nexios-labs/Nexios/network/members"><img title="Fork" src="https://img.shields.io/github/forks/nexios-labs/Nexios?style=social"></a>
<a href="https://github.com/nexios-labs/Nexios/watchers"><img title="Watching" src="https://img.shields.io/github/watchers/nexios-labs/Nexios?label=Watching&style=social"></a>

</br>

<h2 align="center"> Star the repo if u like it🌟</h2>

Nexios is a community-driven, 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)

```bash
# Ensure you have Python 3.9+
python --version

# Install Nexios
pip install nexios

# Or install with specific version
pip install nexios==3.0.0b1
```

## Utility-First Features ✨

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

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

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


### Quick Start - Utility-First Approach

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

# Create app with built-in utilities
app = NexiosApp(
    title="My Utility API",
    debug=True,  # Enables debug toolbar and dev utilities
    auto_reload=True  # Hot reload during development
)

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

### Using Community Extensions

```py
from nexios import NexiosApp, Depend
from nexios_contrib.middleware import ETagMiddleware, 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

👉 <a href="https://nexios-labs.github.io/nexios">https://nexios-labs.github.io/nexios</a>

## Contributors:

<a href="https://github.com/nexios-labs/nexios/graphs/contributors">
  <img src="https://contrib.rocks/image?repo=nexios-labs/nexios" />
</a>

---


## 🌟 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](https://github.com/nexios-labs/nexios-contrib)
- **Share Utilities**: Create and share your own middleware, plugins, and tools
- **Join Discussions**: Participate in [GitHub Discussions](https://github.com/nexios-labs/nexios/discussions)
- **Help Others**: Answer questions and help fellow developers

### Community Resources
- 📚 **Documentation**: [nexios-docs.netlify.app](https://nexios-docs.netlify.app)
- 🛠️ **Community Extensions**: [nexios-contrib package](https://github.com/nexios-labs/nexios-contrib)
- 💬 **Discussions**: [GitHub Discussions](https://github.com/nexios-labs/nexios/discussions)
- 🐛 **Issues**: [Report bugs and request features](https://github.com/nexios-labs/nexios/issues)

### Support the Project
If Nexios has helped you build something awesome, consider supporting its continued development:

👉 [**Buy Me a Coffee**](https://www.buymeacoffee.com/techwithdul) and help fuel the community-driven future of Nexios.
