Cliq is a self-hosted affiliate software solution designed for startups. It enables organizations to manage, track, and optimize their affiliate and promoter programs with ease. The platform provides robust APIs, a modern promoter portal, and is built with scalability and maintainability in mind.
- Affiliate and promoter management
- Referral tracking and commission calculation
- Detailed reporting and analytics
- Secure authentication and authorization
- Responsive, modern UI for promoters
- Extensible API for integrations
- Framework: NestJS (Node.js)
- Language: TypeScript
- Database: (Configurable, typically PostgreSQL)
- ORM: TypeORM or Prisma (as configured)
- API Documentation: OpenAPI (Swagger)
- Authentication: JWT, Role-based access control
- Framework: Angular
- Language: TypeScript
- UI Library: Angular Material
- Styling: Tailwind CSS, SCSS (custom themes and overrides)
- State Management: Angular Signals, RxJS
- Build Tooling: Angular CLI
- Monorepo Management: Custom folder structure
- Containerization: Docker, Docker Compose
- Linting & Formatting: ESLint, Prettier
.
├── api/ # NestJS backend API
├── frontend/
│ ├── projects/
│ │ └── promoter-portal/ # Angular frontend for promoters
│ └── ... # Frontend configuration and shared resources
├── lib/
│ └── ... # Client and core packages
├── resources/ # Static resources
├── docker-compose.*.yml
├── Dockerfile
└── README.md
The resources/ directory contains supporting assets for the platform, including:
- Excel templates and data for schema generation
- Postman collection
These resources help with development, testing, and integration workflows.
- Node.js (v18+ recommended)
- npm or yarn
- Docker (for containerized deployment)
- PostgreSQL (or your configured database)
- Redis (for caching, queues, and background jobs)
- Navigate to the
api/directory. - Copy
.env.exampleto.envand configure your environment variables. - Install dependencies:
npm install
- Run the development server:
npm run start:dev
- Navigate to
frontend/. - Copy
.env.exampleto.envif required and configure. - Install dependencies:
npm install
- Run the promoter portal development server:
npm run start:promoter-portal
To run the entire stack using Docker Compose:
docker-compose -f docker-compose.yml up --buildContributions are welcome! Please open issues or submit pull requests for improvements and bug fixes.
- Quicko Engineering
- See individual
package.jsonfiles for contributors.