Block a user
@nexus/core (0.3.17)
Published 2025-02-10 13:57:50 +01:00 by Frozenverse
Installation
@nexus:registry=
npm install @nexus/core@0.3.17
"@nexus/core": "0.3.17"
About this package
Nexus Framework
Nexus is a powerful, TypeScript-based backend framework designed to build scalable, maintainable, and secure applications. It provides a comprehensive set of features including authentication, multi-tenancy, event handling, and more, all while maintaining clean architecture principles.
Key Features
- Authentication & Session Management: Built-in session handling and user authentication
- Multi-tenancy Support: First-class support for multi-tenant applications
- Powerful Controller System: Decorator-based routing with middleware support
- Database Integration: Flexible database layer with plugin system
- Event System: Robust event bus for decoupled communication
- Permission System: Fine-grained access control
- Service Container: Dependency injection and service management
- Plugin Architecture: Extensible plugin system
- Logging: Configurable logging system
Quick Start
# Install the framework
npm install @nexus/framework
# Create a new Nexus application
npx create-nexus-app my-app
Basic Usage
import { Nexus, Controller, Get } from '@nexus/framework';
@Controller('/hello')
class HelloController {
@Get('/')
async sayHello() {
return { message: 'Hello from Nexus!' };
}
}
// Initialize Nexus
const app = new Nexus({
controllers: [HelloController],
});
// Start the server
app.start();
Documentation
For detailed documentation, please refer to the following sections:
- Installation Guide
- Core Concepts
- Authentication
- Controllers
- Database
- Events
- Permissions
- Plugins
- Services
- Multi-tenancy
Examples
Check out our examples directory for complete usage examples.
Contributing
We welcome contributions! Please see our contributing guide for details.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Dependencies
Dependencies
ID | Version |
---|---|
@paulmillr/qr | ^0.3.0 |
check-disk-space | ^3.4.0 |
ms | ^2.1.3 |
otpauth | ^9.3.6 |
validator | ^13.12.0 |
Development Dependencies
ID | Version |
---|---|
@aws-sdk/client-s3 | ^3.712.0 |
@aws-sdk/s3-request-presigner | ^3.712.0 |
@rollup/plugin-typescript | ^12.1.2 |
@swc/core | ^1.10.4 |
@types/amqplib | ^0.10.6 |
@types/cors | ^2.8.17 |
@types/express | ^5.0.0 |
@types/jsonwebtoken | ^9.0.7 |
@types/ms | ^0.7.34 |
@types/multer | ^1.4.12 |
amqplib | ^0.10.5 |
body-parser | ^1.20.3 |
cors | ^2.8.5 |
express | ^4.21.2 |
form-data | ^4.0.1 |
helmet | ^8.0.0 |
jsonwebtoken | ^9.0.2 |
mongoose | ^8.9.0 |
multer | ^1.4.5-lts.1 |
reflect-metadata | ^0.2.2 |
terser | ^5.37.0 |
ts-morph | ^25.0.0 |
ts-node | ^10.9.2 |
tsc-alias | ^1.8.10 |
tsup | ^8.3.5 |
tsyringe | ^4.8.0 |
typescript | ^5.7.2 |
uuid | ^11.0.5 |
vite-tsconfig-paths | ^5.1.4 |
vitest | ^2.1.8 |
winston | ^3.17.0 |
zod | ^3.24.1 |
Peer Dependencies
ID | Version |
---|---|
@types/express | ^5.0.0 |
amqplib | ^0.10.5 |
body-parser | ^1.20.3 |
cors | ^2.8.5 |
express | ^4.21.2 |
helmet | ^8.0.0 |
mongoose | ^8.9.0 |
reflect-metadata | ^0.2.2 |
tsyringe | ^4.8.0 |
winston | ^3.17.0 |
zod | ^3.24.1 |