Secure streaming and course platform with authenticated access, Axinom DRM playback, admin management, Zoom meetings, support tickets, watermarking, session controls, analytics, and external service integrations.
- Secure playback: Multi-DRM playback through Axinom and Shaka Player.
- Access control: NextAuth sessions, whitelisted access, course enrollment, and direct video access.
- Admin operations: User, course, video, analytics, whitelist, permission, ticket, and security-event management.
- Meetings and support: Zoom Meeting SDK flow plus support ticket handling.
- Runtime integrations: Prisma MongoDB, Upstash Redis, Azure Blob, Cloudflare R2, Sentry, and Vercel-oriented deployment.
- Node >=20.9.0. The repo pins
20.11.1in.nvmrc. - npm with the committed
package-lock.json. - Prisma MongoDB through
DATABASE_URL. - Optional external services for full integration checks: Google OAuth, Upstash Redis, Axinom, Azure/R2 storage, Zoom, SMTP, reCAPTCHA, and Sentry.
npm install
cp .env.example .env.local
npm run prisma:generate
npm run db:push
npm run verify:setup
npm run devReplace placeholder values in .env.local before running workflows that need real external services. npm run verify:services checks configured service variables and skips missing optional local credentials by default.
- Maintainer setup
- Environment matrix
- Axinom setup
- Axinom staging checklist
- Verification commands
- Secret hygiene
- System architecture
- API endpoints
- Business rules
- Changelog
- Framework: Next.js 16 App Router
- Database: Prisma ORM with MongoDB
- Auth: NextAuth.js
- Player: Shaka Player
- Meetings: Zoom Meeting SDK
See CONTRIBUTING.md when the maintainer contribution guide is added.
Proprietary. All rights reserved.