Skip to main content
You’ll have a working Forest back-end connected to your database, with the Forest UI open and ready to configure, in about 15 minutes.

Prerequisites

  • Node.js 18+ installed
  • Your database URI ready (PostgreSQL, MySQL, MongoDB, SQL Server, etc.)
  • A Forest account (sign up if needed)

Steps

1

Create a new project

Go to app.forestadmin.com, create a new project, and choose Self-Hosted.
2

Follow the onboarding

The onboarding flow asks for your database URI and generates your back-end project. Before starting it, you’ll set its environment variables in a .env file:
  • FOREST_ENV_SECRET: identifies your Forest environment
  • FOREST_AUTH_SECRET: signs your users’ authentication tokens
  • DATABASE_URL: your database connection URI
Never commit your .env file to version control. Add it to .gitignore.
3

Start your back-end

In the generated project directory, run:
npm start
You should see:
[Forest] 🌳  Your agent is running at http://localhost:3310
4

Open Forest

Forest automatically opens in your browser. Your database schema has been detected, collections, relationships, and CRUD operations are ready out of the box.

What you have now

A connected Forest back-end with every table from your database surfaced as a collection. Operators can browse, search, edit, and delete records out of the box. From here, the guide walks you through it step by step, starting by shaping these collections into a back-office your team can actually use.

Troubleshooting

  • Check that your .env file is present and loaded
  • Ensure port 3310 is not already in use
  • Run curl http://localhost:3310/forest, should return Forest metadata
  • Verify your DATABASE_URL is correct and the database is reachable from your machine
  • Check that the database user has read permissions on the relevant tables
  • For SQL databases, the back-end needs access to information_schema for introspection

Need a hand?

Get help from our team

Stuck on setup? Reach out, we’ll help you get your Forest back-end running.

Next: Customize your interface

Organize your collections, fields, and create your first segment.