Built with passion by Umar π»
π― Features β’ πΌοΈ Screenshots β’ π Quick Start β’ π Documentation β’ π€ Contributing
Hey there! I'm Umar, and I built NexusCore because I was tired of spending the first 3 months of every SaaS project building the same boring infrastructure over and over again.
Authentication? β
Done.
Multi-tenancy? β
Done.
Billing? β
Done.
Role-based permissions? β
Done.
Now you can focus on what actually makes your product unique. Ship faster. Build better.
"The best code is the code you don't have to write." β Me, after building my 5th authentication system from scratch π
| Feature | Description |
|---|---|
| JWT Authentication | Secure access & refresh token system |
| Argon2 Hashing | Industry-leading password security |
| Session Management | Track devices, revoke sessions |
| Email Verification | Verify user emails with tokens |
| Password Reset | Secure password recovery flow |
| Rate Limiting | Protect against brute force attacks |
| Feature | Description |
|---|---|
| Organizations | Isolated workspaces for teams |
| Role-Based Access | Owner, Admin, Member, Viewer roles |
| Granular Permissions | 15+ fine-grained permissions |
| Team Invitations | Email-based invite system |
| Member Management | Add, remove, update team members |
| Feature | Description |
|---|---|
| Multi-tier Plans | Free, Pro, Enterprise tiers |
| Usage Tracking | Monitor limits and quotas |
| Invoice Generation | Automatic invoice creation |
| Trial Periods | Configurable free trials |
| Plan Upgrades | Seamless plan switching |
| Feature | Description |
|---|---|
| Real-time Stats | Live metrics and KPIs |
| Activity Feed | Track user actions |
| Audit Logging | Complete action history |
| Usage Charts | Visual data representation |
| Feature | Description |
|---|---|
| Responsive Design | Works on all devices |
| Dark/Light Themes | User preference support |
| Toast Notifications | Real-time feedback |
| Loading States | Smooth user experience |
π¦ nexuscore/
βββ π backend/
β βββ π src/
β β βββ π modules/
β β β βββ π auth/ # Authentication & sessions
β β β βββ π€ users/ # User management
β β β βββ π’ organizations/ # Multi-tenancy & RBAC
β β β βββ π³ subscriptions/ # Plans & usage limits
β β β βββ π billing/ # Invoices & payments
β β β βββ π notifications/ # In-app notifications
β β β βββ π audit/ # Audit logging
β β β βββ π dashboard/ # Analytics & stats
β β βββ π shared/ # Shared utilities
β βββ π migrations/ # Database migrations
β βββ π package.json
β
βββ π frontend/
β βββ π src/
β β βββ π api/ # API client & endpoints
β β βββ π components/ # Reusable UI components
β β βββ π pages/ # Page components
β β βββ π hooks/ # Custom React hooks
β β βββ π stores/ # Zustand state stores
β β βββ π styles/ # CSS design system
β βββ π package.json
β
βββ π³ docker-compose.yml # Docker configuration
βββ π .env.example # Environment template
βββ π README.md # You are here!
- Node.js 20 or higher
- Docker & Docker Compose
- Git
git clone https://github.com/Mavdii/Nexus-Core.git
cd Nexus-Corecp .env.example .env
# Edit .env with your configuration# Start PostgreSQL, Redis, and MailHog
docker-compose up -d postgres redis mailhogcd backend
npm install
npm run db:migrate
npm run db:seed
npm run devcd frontend
npm install
npm run devπ Authentication
| Method | Endpoint | Description |
|---|---|---|
POST |
/api/auth/signup |
Register new user |
POST |
/api/auth/login |
Authenticate user |
POST |
/api/auth/logout |
Invalidate session |
POST |
/api/auth/refresh |
Refresh access token |
GET |
/api/auth/me |
Get current user |
POST |
/api/auth/forgot-password |
Request password reset |
POST |
/api/auth/reset-password |
Reset password |
POST |
/api/auth/verify-email |
Verify email address |
π’ Organizations
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/organizations |
List user's organizations |
POST |
/api/organizations |
Create organization |
GET |
/api/organizations/:id |
Get organization details |
PATCH |
/api/organizations/:id |
Update organization |
DELETE |
/api/organizations/:id |
Delete organization |
GET |
/api/organizations/:id/members |
List members |
POST |
/api/organizations/:id/members |
Invite member |
PATCH |
/api/organizations/:id/members/:userId |
Update member role |
DELETE |
/api/organizations/:id/members/:userId |
Remove member |
π³ Subscriptions
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/subscriptions/plans |
List available plans |
GET |
/api/subscriptions/organizations/:id |
Get subscription |
POST |
/api/subscriptions/organizations/:id/change |
Change plan |
POST |
/api/subscriptions/organizations/:id/cancel |
Cancel subscription |
GET |
/api/subscriptions/organizations/:id/usage |
Get usage stats |
π Billing
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/billing/organizations/:id/invoices |
List invoices |
GET |
/api/billing/organizations/:id/invoices/:invoiceId |
Get invoice |
GET |
/api/billing/organizations/:id/invoices/:invoiceId/pdf |
Download PDF |
# Backend tests
cd backend && npm run test
# Frontend tests
cd frontend && npm run test
# E2E tests
npm run test:e2e# Build and start all services
docker-compose up -d --build
# View logs
docker-compose logs -f
# Stop all services
docker-compose down- Authentication & Authorization
- Multi-tenancy with RBAC
- Subscription Management
- Invoice Generation
- Activity & Audit Logs
- Notification System
- Stripe Integration
- Webhook System
- Admin Dashboard
- Email Templates
- API Rate Limiting Dashboard
- Mobile App (React Native)
Contributions are what make the open source community amazing! Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.




