Links

Quick start

Let's get you up and running on Forest Admin in minutes!

Introduction

Forest Admin is a low-code internal tool solution that scales with your project. With 30+ out-of-the-box tools and pre-built UI components, you can ship an admin panel in a few minutes, and then easily customize it to meet your specific business logic. Thanks to the layout editor, non-technical team members can adjust the UI to their needs.
Forest Admin has a unique hybrid architecture - only the frontend is managed on Forest Admin servers, which gives you the flexibility of a SaaS tool without compromising on data security.

Quick Start

Forest Admin offers a lot of flexibility in terms of installation. The following guide provides a way to start using Forest Admin in minutes.

Requirements

  • python ^3.7
  • Flask ^2.2
  • SQLAlchemy ^1.4

Create an account and follow the onboarding

Go to https://app.forestadmin.com/signup ↗, and create an account and a new project.

Add dependency forestadmin-agent-flask and forestadmin-datasource-sqlalchemy to your flask app

pip install forestadmin-agent-flask forestadmin-datasource-sqlalchemy
In your app.py, create a new agent with your settings, setup your SQLAlchemy data source, and register it to your Flask app:
import os
from distutils.util import strtobool
from flask_cors import CORS
from forestadmin.agent_toolkit.options import Options
from forestadmin.datasource_sqlalchemy.datasource import SqlAlchemyDatasource
from forestadmin.flask_agent.agent import build_agent
# create your flask app
app = Flask(__name__)
# setting up the CORS
CORS(
app,
resources={
r"/forest/*": {"origins": r".*\.forestadmin\.com.*"},
},
supports_credentials=True,
)
# define settings for forest agent
FOREST_SETTINGS: Options = {
"env_secret": os.environ.get("FOREST_ENV_SECRET"),
"auth_secret": os.environ.get("FOREST_AUTH_SECRET"),
"is_production": strtobool(os.environ.get("FOREST_IS_PRODUCTION", "False")), # False if omitted
}
# create the agent
agent = build_agent(FOREST_SETTINGS)
# register your data source to the agent
# if using basic sqlalchemy declarative_base
agent.add_datasource(SqlAlchemyDatasource(Base))
# elif using flask_sqlalchemy package (https://pypi.org/project/Flask-SQLAlchemy/)
agent.add_datasource(SqlAlchemyDatasource(db))
# endif
# finally register the agent to your flask app
agent.register_blueprint(app)
Running
FOREST_ENV_SECRET="<This is provided during the onboarding steps>" FOREST_AUTH_SECRET="<This is provided during the onboarding steps>" FOREST_IS_PRODUCTION="False" flask run
should be enough to be redirected to the "rate-install" page.
You're all set!
At the end of your onboarding, you will out-of-the-box be able to:
  • Access all your data (1)
  • Export your data (2)
  • Add a record (3)
  • View and edit a record (4)
  • Edit your UI (5)
  • Search and filter (6)