Skip to main content
This guide walks you through setting up folksbase on your local machine.

Prerequisites

Before you start, make sure you have:
  • Node.js 24+download here
  • pnpm 10+ — install with npm install -g pnpm
  • A Neon Postgres databasecreate one
  • A Supabase projectcreate one (for authentication)
You’ll also need these services (or compatible alternatives):
  • Upstash Redis — caching and rate limiting
  • Vercel Blob — CSV file storage
  • Inngest — background job processing
  • Anthropic API key — AI-powered CSV column mapping
The app degrades gracefully if any of these are missing, but all four are required for full functionality.

1. Clone and Install

2. Configure Environment Variables

Copy the example files and fill in your values:
At minimum, you need these values to get started: apps/api/.env — backend configuration: Generate an encryption key with:
apps/web/.env — frontend configuration:
See the Environment Variables page for the full list of configuration options.

3. Set Up the Database

Push the Drizzle schema to your Neon database:
Optionally, seed the database with sample data:

4. Start Development

Run all apps in dev mode with a single command:
This starts:

5. Verify It Works

  1. Open http://localhost:3000 in your browser
  2. Sign up or log in through Supabase Auth
  3. Try importing a CSV file or creating a contact manually
  4. Check the dashboard for stats and recent activity
You can also verify the API is running:
You should see a response like:

Useful Commands

What’s Next?

Architecture Overview

Understand how the monorepo is structured and why.

Contributing Setup

Detailed development environment setup for contributors.