Modern backend infrastructure for TypeScript. Fast, modular, and scalable — powered by PostgreSQL, Bun, and Redis.
Nuvix is feature-complete and entering pre-production testing. Major systems are implemented; current focus is test coverage, stability, and documentation ahead of the first stable release.
- Overview
- Core features
- Ecosystem
- Quick start
- Roadmap
- Contributing
- Security
- License
- Acknowledgements
- Community
- Vision
Nuvix is a high-performance backend platform that combines the simplicity of BaaS with the flexibility of a custom backend. It offers a modular architecture with first-class TypeScript support and a PostgreSQL-first data model.
Highlights:
- Built-in authentication, storage, messaging, and schema management
- Extensible, modular components
- Fine-grained access control using PostgreSQL Row-Level Security (RLS)
- Optional companion console for visual administration
Flexible schema system
Nuvix supports multiple data models to match your needs:
| Schema type | Description | Typical use case |
|---|---|---|
| Document | NoSQL-like structure with relationship-based querying | Rapid prototyping |
| Managed | Auto-provisioned permissions tables with PostgreSQL RLS for granular access control | Secure, multi-tenant apps |
| Unmanaged | Direct PostgreSQL access for advanced use cases | Full database control |
Authentication and authorization
- User and session management
- JWT-based authentication
- Role/permission-based access control
- Automatic RLS enforcement on managed schemas
Unified messaging
- Email, SMS, and push notifications through a single interface
- Template-driven messages
- Redis-backed queues for reliability
File storage
- S3-compatible or local adapters
- Chunked uploads
- Built-in file permissions
Developer experience
- Ultra-fast Bun runtime
- Modular TypeScript + NestJS architecture
- Integrated Redis for caching, queues, and events
- Designed for simplicity, scalability, and performance
A companion dashboard to manage users, schemas, messages, and configuration.
Repository: https://github.com/Nuvix-Tech/console
Comprehensive docs and API references are in progress.
Docs (coming soon): https://docs.nuvix.in
Prerequisites
- Git
- Docker and Docker Compose
Setup with Docker
- Clone the repository:
git clone https://github.com/Nuvix-Tech/nuvix.git
cd nuvix- Start the stack:
docker compose up --buildThis launches:
- PostgreSQL
- Redis
- Nuvix Server
- Access the server:
| Milestone | Status |
|---|---|
| Authentication & Authorization | Complete |
| Flexible Schema System | Complete |
| Messaging (Email, SMS, Push) | Complete |
| Storage System | Complete |
| Admin Dashboard | Console ready |
| Test Suite & Coverage | In progress |
| Documentation | In progress |
| First Production Release | Pending tests |
Contributions are welcome. Please read the contributing guide before opening pull requests or issues.
- Contributing guide: ./CONTRIBUTING.md
- Good first issues: https://github.com/Nuvix-Tech/nuvix/issues
If you discover a security issue, please report it responsibly using private channels. Do not open public issues for security reports.
This project is licensed under the Business Source License 1.1 (BSL). See ./LICENSE for terms and conversion conditions.
Inspired by:
- Supabase
- Appwrite
- Firebase
Nuvix builds on these ecosystems while introducing multi-schema flexibility, automatic RLS, and Bun-native performance.
Nuvix unifies backend development by combining the power of PostgreSQL with modern tooling. The goal is a single, developer-first platform that scales from prototype to production with minimal friction.
