Setup Instructions
GitHubFollow these steps to set up your own FIRST TeamMatch instance for your state or region.
Prerequisites
- • Node.js 18+ and npm
- • A Neon account (free, at neon.tech) for the database
- • A GitHub account (for cloning the repository)
- • Basic knowledge of command line and web development
1Clone and Install
Clone the repository and install dependencies:
$ git clone https://github.com/your-org/first-teammatch.git
$ cd first-teammatch
$ npm install
2Configure Your Instance
Copy the environment template and customize it:
$ cp env-template.txt .env.local
Open .env.local and customize the following:
# State/Region Information
NEXT_PUBLIC_STATE_NAME=YourState
NEXT_PUBLIC_STATE_ABBREVIATION=XX
NEXT_PUBLIC_REGION_NAME=YourState
# Organization Information
NEXT_PUBLIC_ORG_NAME=Your Team Name
NEXT_PUBLIC_ORG_LOCATION=City, State
NEXT_PUBLIC_ORG_WEBSITE=https://your-team-website.org
NEXT_PUBLIC_ORG_EMAIL=your-email@example.com
# Contact & Branding
NEXT_PUBLIC_CONTACT_EMAIL=your-email@example.com
NEXT_PUBLIC_APP_NAME=FIRST TeamMatch YourState
NEXT_PUBLIC_APP_DESCRIPTION=Connecting students...
# Database
DATABASE_URL=postgresql://user:pass@ep-xxx.pooler.us-east-1.aws.neon.tech/neondb?sslmode=require
3Set Up Database
Create a Neon Project
- Go to neon.tech and sign up (free, no credit card required)
- Click "New Project" and give it a name
- Select AWS as the provider and US East (N. Virginia) as the region
- Leave Neon Auth off
- Click "Create project"
Get Your Connection String
- From your Neon project dashboard, click "Connect"
- Select Pooled connection
- Copy the connection string
- Add it to your
.env.localasDATABASE_URL
Run the Schema
- In the Neon dashboard, open the SQL Editor
- Copy the contents of database/schema.sql from this repository
- Paste it into the SQL Editor and click Run
4Test Locally
Start the development server:
$ npm run dev
Open http://localhost:3000 in your browser. You should see your customized homepage.
5Create Your First Admin Account
- Register a new team account through the app (use "I'm a Team" button)
- Use the admin management script to promote them to admin:$ npm run manage:admins -- add your-email@example.com
6Deploy Your Instance
Deploy to Vercel (Recommended)
- Push your code to GitHub
- Go to Vercel and sign in with GitHub
- Click "Add New Project" and import your repository
- Add ALL environment variables from your
.env.localfile - Click "Deploy"
Other Deployment Options
The app can be deployed to any platform that supports Next.js:
- AWS Amplify
- Netlify
- Railway
- Your own server (build with
npm run buildand run withnpm start)
Security Checklist
Click each item to check it off as you complete it. (This checklist resets when you reload the page.)
- database/schema.sql has been run on your Neon database
- DATABASE_URL is set in your environment variables
- Admin account created with manage:admins script
- Environment variables are set in production
- Login and registration flow tested successfully
- You've tested the registration flow
- You've tested the admin dashboard
Need Help?
For questions or issues, contact the original developers:
Email