Skip to content

Getting Started

Welcome to Model Match! Follow these steps to set up your development environment.


1. Install Bun

Bun is our package manager and script runner.

sh
curl -fsSL https://bun.sh/install | bash

2. Install Chromium

Chromium is required for generating report images.
Why: Our reports service uses Puppeteer to render charts and export images.

How to install:

sh
npx @puppeteer/browsers install chromium@latest --path /tmp/localChromium

After installation, note the path to the Chromium binary and add it to your config if needed (see tools/sst/src/index.ts for details).


3. Install Lefthook

Lefthook manages our git hooks for formatting, linting, etc.

sh
bun run lefhook

We recommend using VSCode.
Open the Command Palette (Cmd+Shift+P), type Extensions: Show Recommended Extensions, and install all listed.
These are auto-suggested from our .vscode/extensions.json.


5. Set Up Your Environment Variables

Copy the example env file and fill in your values:

sh
cp .env.example .env

Edit .env and provide the required secrets and configuration.


6. Configure AWS Credentials

Edit (or create) ~/.aws/credentials and add:

[default]
aws_access_key_id = ...
aws_secret_access_key = ...
region = us-west-2

[prod]
aws_access_key_id = ...
aws_secret_access_key = ...
region = us-west-2

[dev]
aws_access_key_id = ...
aws_secret_access_key = ...
region = us-west-2

7. Install Docker Desktop

Docker is required for local development services.
Download and install from: https://www.docker.com/products/docker-desktop/


8. Install Typos CLI

Typos checks for spelling mistakes in code.

sh
brew install typos-cli

9. Create Your Personal Stage Config

Create a config file for your personal stage in the .mmv3 directory.
Example: .mmv3/nickgraffis.config.ts

Follow the structure in tools/sst/src/index.ts for available options.