Getting Started

Prerequisites

  • Node.js 24+ - Download from nodejs.org

  • pnpm 10+ - Install via npm install -g pnpm

    • Your system is using Corepack to manage package managers. Corepack acts as a wrapper that ensures the version of pnpm used matches what the project expects.

  • PowerShell 5.1+ (comes with Windows 10/11)

  • Sign up for a Square Developer account

  • Sign up for a Radar SDK account (required for location services)

  • Map Tiles: We use OpenFreeMap by default (no account required)

  • Sign up for a Convex account

Quick Start

1. Clone the repository

git clone <repo_url>
cd ftn-site

2. Install dependencies

Run this in the root directory:

pnpm install

3. Configure environment variables

Navigate to the site-nextjs directory and copy the template files:

cd site-nextjs
cp .env.example .env.local

Populate .env.local with your personal API keys. See Environment Variables for details.

4. Start Convex dev server

Start the Convex development server in a separate terminal from the site-nextjs directory:

# Ensure you are in site-nextjs
pnpm exec convex dev

This will sync your schema and functions to Convex and start a local proxy.

5. Start the development server

Back in your main terminal (inside site-nextjs):

pnpm dev

6. Open your browser

Available Scripts (in site-nextjs)

  • pnpm dev - Start development server with Turbopack

  • pnpm build - Build the application for production

  • pnpm start - Start the production server

  • pnpm lint - Run ESLint

  • pnpm format - Run Biome formatter

New: events, venues, and social previews

After pulling updates that add Convex tables (publicEvents, hostVenues, etc.), keep pnpm exec convex dev running locally (or deploy Convex in your pipeline) so pnpm build and runtime queries match the deployment.

For link previews (Open Graph / Twitter cards), set NEXT_PUBLIC_APP_URL in site-nextjs to your real site origin — see Environment Variables.

Feature overview and fairness notes: Events & Host Venues.

Manual Setup

If you prefer manual setup or encounter issues with the workspace, see Manual Setup for step-by-step instructions.