PerkOS-xyz /
PerkOS
Your business just hired its first team. Launch a working AI agent team in one click: a Team Lead plans, workers execute, you approve. Multi-agent platform built on Base with OpenClaw and Hermes runtimes.
65/100 healthLoading repository data…
Giants-Ware / repository
Launch your AI product in days, not months. A comprehensive, open-source SaaS boilerplate with multi-model AI support, authentication, multi-tenancy, billing, and admin dashboard.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Launch your AI product in days, not months. A comprehensive, open-source SaaS boilerplate with multi-model AI support, authentication, multi-tenancy, billing, and admin dashboard.
NexusAI is a fully-featured AI SaaS boilerplate built with modern web technologies. It provides everything you need to launch an AI-powered product quickly:
┌──────────────────────────────────────────────────────┐
│ FRONTEND (React) │
│ Next.js 16 + TypeScript + TailwindCSS + shadcn/ui │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ Auth │ │AI Chat UI│ │Dashboard │ │ Admin │ │
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
│ │ │ │ │ │
│ ┌────┴─────────────┴────────────┴─────────────┴────┐ │
│ │ Zustand State Management │ │
│ │ (auth-store, chat-store, ui-store) │ │
│ └─────────────────────┬───────────────────────────┘ │
└────────────────────────┼─────────────────────────────┘
│ REST API / SSE
┌────────────────────────┼─────────────────────────────┐
│ BACKEND (Next.js API) │
│ ┌─────────────────────┴───────────────────────────┐ │
│ │ Auth Guard (JWT) │ │
│ └──┬──────────┬──────────┬──────────┬──────────┬──┘ │
│ │ │ │ │ │ │
│ ┌──┴──┐ ┌───┴───┐ ┌──┴───┐ ┌──┴───┐ ┌──┴───┐ │
│ │Auth │ │AI Chat│ │Orgs │ │Admin │ │Billng│ │
│ │API │ │API │ │API │ │API │ │API │ │
│ └──┬──┘ └───┬───┘ └──┬───┘ └──┬───┘ └──┬───┘ │
│ │ │ │ │ │ │
│ ┌──┴─────────┴─────────┴─────────┴─────────┴──┐ │
│ │ AI Provider Abstraction Layer │ │
│ │ (z-ai-web-dev-sdk → LLM Integration) │ │
│ └──────────────────────┬───────────────────────┘ │
│ │ │
│ ┌──────────────────────┴───────────────────────┐ │
│ │ Prisma ORM (SQLite/PostgreSQL) │ │
│ └──────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────┘
Selected from shared topics, language and repository description—not editorial ratings.
PerkOS-xyz /
Your business just hired its first team. Launch a working AI agent team in one click: a Team Lead plans, workers execute, you approve. Multi-agent platform built on Base with OpenClaw and Hermes runtimes.
65/100 healthnexusai/
├── src/
│ ├── app/
│ │ ├── api/
│ │ │ ├── admin/ # Admin endpoints (stats, users)
│ │ │ ├── ai/ # AI endpoints (chat, stream, conversations, templates)
│ │ │ ├── auth/ # Auth endpoints (register, login, refresh)
│ │ │ ├── billing/ # Billing endpoints (subscription, usage)
│ │ │ ├── organizations/ # Organization CRUD
│ │ │ ├── upload/ # File upload
│ │ │ └── users/ # User profile
│ │ ├── layout.tsx
│ │ ├── page.tsx # Main SPA entry
│ │ └── globals.css
│ ├── components/
│ │ ├── admin/ # Admin dashboard page
│ │ ├── auth/ # Login/Register page
│ │ ├── billing/ # Billing & usage page
│ │ ├── chat/ # AI Chat interface
│ │ ├── dashboard/ # Main dashboard
│ │ ├── layout/ # App layout, sidebar, topbar
│ │ ├── organizations/ # Organization management
│ │ └── ui/ # shadcn/ui components
│ ├── lib/
│ │ ├── ai-provider.ts # AI abstraction layer (z-ai-web-dev-sdk)
│ │ ├── api-response.ts # Standardized API responses
│ │ ├── api.ts # Authenticated fetch helper
│ │ ├── auth-guard.ts # JWT auth middleware
│ │ ├── auth.ts # JWT & bcrypt utilities
│ │ ├── db.ts # Prisma client
│ │ └── utils.ts # General utilities
│ ├── store/
│ │ ├── auth-store.ts # Auth state (Zustand + persist)
│ │ ├── chat-store.ts # Chat state
│ │ └── ui-store.ts # UI state (navigation, theme, toasts)
│ ├── types/
│ │ └── index.ts # TypeScript types for all entities
│ └── hooks/ # Custom React hooks
├── prisma/
│ ├── schema.prisma # Database schema (10 models)
│ └── seed.ts # Seed script with demo data
├── Dockerfile # Multi-stage Docker build
├── docker-compose.yml # App + PostgreSQL + Redis
└── package.json
10 models covering all SaaS requirements:
| Model | Purpose |
|---|---|
| User | User accounts with roles (USER/ADMIN) |
| RefreshToken | JWT refresh token storage |
| Organization | Multi-tenant workspaces |
| OrganizationMember | Org membership with roles (OWNER/ADMIN/MEMBER) |
| Conversation | AI chat conversations |
| Message | Individual messages with token tracking |
| PromptTemplate | Reusable AI prompt templates |
| Subscription | Billing plans (FREE/PRO) with limits |
| UsageRecord | AI usage analytics (tokens, latency) |
| UploadedFile | File upload metadata (PDF, images) |
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/auth/register | Register new user |
| POST | /api/auth/login | Login with email/password |
| POST | /api/auth/refresh | Refresh access token |
| GET | /api/users/me | Get current user profile |
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/ai/chat | Send message, get complete response |
| POST | /api/ai/stream | SSE streaming for real-time responses |
| GET | /api/ai/conversations | List conversations (paginated) |
| GET | /api/ai/conversations/:id | Get conversation with messages |
| DELETE | /api/ai/conversations/:id | Delete conversation |
| GET | /api/ai/templates | List prompt templates |
| POST | /api/ai/templates | Create prompt template |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/organizations | List user's organizations |
| POST | /api/organizations | Create organization |
| GET | /api/organizations/:id | Get org with members |
| PUT | /api/organizations/:id | Update organization |
| DELETE | /api/organizations/:id | Delete organization |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/admin/stats | System-wide statistics |
| GET | /api/admin/users | List users (paginated, searchable) |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/billing/subscription | Get current subscription |
| PUT | /api/billing/subscription | Change plan (FREE/PRO) |
| GET | /api/billing/usage | Get usage history |
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/upload | Upload file (PDF, images, etc.) |
AIProvider Interface
├── chat(options) → { content, usage }
└── stream(options) → AsyncGenerator<AIStreamChunk>
Implementation:
└── AIService (z-ai-web-dev-sdk)
├── Multi-turn conversations
├── System prompt support
├── Token estimation
└── Streaming with SSE
The AI abstraction layer supports extending to additional providers (Ollama, OpenAI, etc.) through a factory pattern.
# Clone and install
cd nexusai
bun install
# Set up database
bun run db:push
bun run db:generate
# Seed demo data
bunx tsx prisma/seed.ts
# Start development
bun run dev
After seeding, use these accounts:
| Account | Password | Role | |
|---|---|---|---|
| Admin | admin@nexusai.dev | admin123456 | ADMIN |
| Demo | demo@nexusai.dev | password123 | USER |
| User | user2@example.com | password123 | USER |
# Build and start all services
docker-compose up -d
# View logs
docker-compose logs -f app
# Stop
docker-compose down
Includes:
| Category | Technology |
|---|---|
| Framework | Next.js 16 (App Router) |
| Language | TypeScript 5 |
| Styling | Tailwind CSS 4 |
| Components | shadcn/ui (New York style) |
| Icons | Lucide React |
| State | Zustand + persist |
| Database | Prisma ORM (SQLite/PostgreSQL) |
| Auth | JWT (jsonwebtoken + bcryptjs) |
| AI | z-ai-web-dev-sdk |
| Charts | Recharts |
| Animations | Framer Motion |
| Markdown | react-markdown |
| Containerization | Docker + Docker Compose |
MIT License - feel free to use this for your projects!
All contributions are welcome!