Getting Started
This guide will help you set up Mako on your local machine for development.
Prerequisites
Section titled “Prerequisites”- Node.js (v20+)
- pnpm (v8+)
- Docker & Docker Compose (for MongoDB)
Installation
Section titled “Installation”-
Clone the repository:
Terminal window git clone https://github.com/your-org/mako.gitcd mako -
Install dependencies:
Mako is a monorepo managed by pnpm.
Terminal window pnpm install -
Environment Setup:
Copy the example environment file to
.env:Terminal window cp .env.example .envUpdate the
.envfile with your configuration. At a minimum, you’ll need:DATABASE_URL: Your MongoDB connection string (default:mongodb://localhost:27017/mako)WEB_API_PORT: Port for the API (default:8080)CLIENT_URL: URL for the frontend (default:http://localhost:5173)
-
Start Infrastructure:
Start MongoDB using Docker:
Terminal window pnpm run docker:up
Running the App
Section titled “Running the App”Start the development server. This will launch the API, the React App, and the Inngest dev server concurrently.
pnpm run dev- Web App: http://localhost:5173
- API: http://localhost:8080
- Inngest Dashboard: http://localhost:8288
Running Sync Jobs
Section titled “Running Sync Jobs”Mako includes a CLI for running data sync jobs manually.
# Interactive modepnpm run sync
# Command line modepnpm run sync -s <source_id> -d <dest_id>