Celis – Creative Collaboration Platform (Backend)
Celis is a modern backend system designed for a creative collaboration ecosystem where musicians, producers, visual artists, and industry professionals can connect, collaborate, and build projects together.
This backend powers a full platform including social networking, project collaboration, industry briefs, marketplace transactions, and real-time creative sessions.
Built with a scalable architecture using NestJS, PostgreSQL, TypeORM, Docker, and Nodemailer.
Key Features Authentication & Security
JWT Authentication (Access + Refresh Tokens)
Google OAuth Login
Apple OAuth Login
OTP Email Verification
Secure Password Reset System
Creator Social Platform
Creator discovery with advanced filtering
Social feed with audio, video, lyrics, and photo posts
Reactions, comments, bookmarks, and sharing
User connection system
Real-Time Collaboration
Live audio calls and video sessions
Real-time chat during sessions
Invite collaborators via platform or email
Industry Briefs & Projects
Companies can publish industry briefs
Creators can submit applications
Automatic conversion of briefs into collaborative projects
File sharing, comments, and revenue split management
Digital Marketplace
Sell creative assets such as:
Beats / Tracks
Lyrics
Sample Packs
Visual Assets
Exclusive and Non-Exclusive licenses
Integrated payment support
Subscription & Storage System
Tier-based subscription plans
Storage management for uploaded media
Upgrade system for additional features and storage
Tech Stack
Backend Framework
NestJS
Database
PostgreSQL
TypeORM
Infrastructure
Docker
Email System
Nodemailer
Authentication
JWT
OAuth (Google & Apple)
Architecture
The backend follows a modular scalable architecture:
Auth Module
Users Module
Feed Module
Briefs Module
Projects Module
Marketplace Module
Sessions Module
Notifications Module
This structure ensures clean code, scalability, and maintainability.
Environment Variables
Example .env
DATABASE_HOST=localhost DATABASE_PORT=5432 DATABASE_USERNAME=postgres DATABASE_PASSWORD=your_password DATABASE_NAME=celisdb
JWT_SECRET=your_secret
EMAIL_USER=your_email EMAIL_PASS=your_email_password
GOOGLE_CLIENT_ID=your_google_client_id GOOGLE_CLIENT_SECRET=your_google_client_secret
APPLE_CLIENT_ID=your_apple_client_id APPLE_CLIENT_SECRET=your_apple_client_secret Run the Project
Install dependencies
npm install
Start development server
npm run start:dev
Run with Docker
docker-compose up --build Author
Abdullah Al Zubaer
Backend Developer | MERN Stack Developer | Freelancer
Focused on building scalable backend systems, modern APIs, and full-stack platforms.