Prerequisites
Before you begin, ensure you have the following installed:- Node.js (v16 or higher)
- npm or yarn
- PostgreSQL (v12 or higher)
- Redis (v6 or higher)
- Docker (optional, for containerized development)
Environment Variables
Create a.env file in the root directory with the following required variables:
Installation
- Clone the repository:
- Install dependencies:
- Set up the database:
- Start the development server:
Development Commands
Project Structure
Service Architecture
Each service follows a consistent pattern:Testing API Endpoints
We use Bruno for API testing. The specifications are located in thespec/ directory:
Service Modes
The API supports different deployment modes:Single Service Mode
Aggregated Mode (Development)
Worker Mode
Debugging
Enable debug logging by setting theDEBUG environment variable:
Common Issues
Database Connection Issues
Database Connection Issues
- Ensure PostgreSQL is running on the correct port
- Check your
DATABASE_URLenvironment variable - Verify database credentials and permissions
- Make sure the database exists
Redis Connection Issues
Redis Connection Issues
- Ensure Redis is running on the correct port - Check your
REDIS_URLenvironment variable - Verify Redis is accessible from your application
Port Already in Use
Port Already in Use
- Change the
PORTenvironment variable - Kill the process using the port:
lsof -ti:3000 | xargs kill -9 - Use a different port for development

