Skip to content

Quick Start

Quick Start

Get the Manacore monorepo running locally in just a few steps.

Prerequisites

Before you begin, ensure you have:

  • Node.js 20 or higher
  • pnpm 9.15.0 (npm install -g pnpm@9.15.0)
  • Docker and Docker Compose
  • Git

Installation

  1. Clone the repository

    Terminal window
    git clone https://github.com/manacore/manacore-monorepo.git
    cd manacore-monorepo
  2. Install dependencies

    Terminal window
    pnpm install
  3. Start infrastructure services

    This starts PostgreSQL, Redis, and MinIO (S3-compatible storage):

    Terminal window
    pnpm docker:up
  4. Setup environment variables

    Generate environment files for all apps:

    Terminal window
    pnpm setup:env
  5. Start an application

    Use dev:*:full commands for the best experience - they automatically set up databases:

    Terminal window
    pnpm dev:chat:full

    Opens at http://localhost:5173 (web) and http://localhost:3002 (API)

What dev:*:full Does

The full commands automatically:

  1. Create the database if it doesn’t exist
  2. Push the latest schema with Drizzle
  3. Start Mana Core Auth (authentication service)
  4. Start the backend (NestJS API)
  5. Start the web app (SvelteKit)

All processes run concurrently with color-coded output.

Verify Installation

Once running, you should be able to:

  1. Open the web app at the URL shown in the terminal
  2. Check the API health endpoint:
    Terminal window
    curl http://localhost:3002/api/v1/health
  3. Access MinIO console at http://localhost:9001 (user: minioadmin, password: minioadmin)

Next Steps

Troubleshooting

Docker not running

Terminal window
# Make sure Docker Desktop is running, then:
pnpm docker:up

Port already in use

Check what’s using the port and stop it:

Terminal window
lsof -i :3002 # Check port 3002
kill -9 <PID> # Stop the process

Database connection issues

Ensure PostgreSQL is running:

Terminal window
docker ps # Should show postgres container
pnpm docker:logs postgres # Check logs