Skip to main content

Quick Start

Get the AIQLick platform running locally in minutes.

Prerequisites

  • Node.js 20+
  • Python 3.11+
  • Docker Desktop (for PostgreSQL, Redis, MinIO)
  • AWS CLI v2 (for cloud resources)

1. Start Infrastructure

# PostgreSQL 16 with pgvector
docker run -d --name aiqlick-local-postgres \
--restart unless-stopped \
-e POSTGRES_USER=aiqlick \
-e POSTGRES_PASSWORD=aiqlick \
-e POSTGRES_DB=aiqlick_db \
-p 15432:5432 \
pgvector/pgvector:pg16

# Redis 7
docker run -d --name aiqlick-local-redis \
--restart unless-stopped \
-p 6379:6379 \
redis:7-alpine

# MinIO (S3-compatible storage)
docker run -d --name aiqlick-local-minio \
--restart unless-stopped \
-e MINIO_ROOT_USER=minioadmin \
-e MINIO_ROOT_PASSWORD=minioadmin \
-p 9000:9000 -p 9001:9001 \
minio/minio server /data --console-address ":9001"
tip

Enable pgvector after first start:

psql -h localhost -p 15432 -U aiqlick -d aiqlick_db -c "CREATE EXTENSION IF NOT EXISTS vector;"

2. Backend

cd aiqlick-backend
cp .env.example .env # Edit with local database URLs
npm install
npx prisma generate
npm run seed:essential
npm run start:dev # http://localhost:4001/graphql

3. Background Tasks

cd background-tasks
cp .env.example .env # Same DATABASE_URL as backend
pip install -r requirements.txt
uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload

4. Frontend

cd aiqlick-frontend
cp .env.example .env.local
npm install
npm run dev # http://localhost:4000

Startup Order

  1. Docker containers (PostgreSQL, Redis, MinIO)
  2. Backend API (:4001)
  3. Background Tasks (:8000)
  4. Frontend (:4000)
caution

Backend and Background Tasks share the same PostgreSQL database. Always start the backend first to ensure the schema is up to date.