There's a lot of open issues
A long-lived project that still receives updates
Forest is a modern admin interface that works on all major web frameworks. forest_liana is the gem that makes Forest admin work on any Rails application (Rails >= 4.0).
 Project Readme

Forest Admin in Rails

Gem CI status Test Coverage semantic-release

Forest Admin provides an off-the-shelf administration panel based on a highly-extensible API plugged into your application.

This project has been designed with scalability in mind to fit requirements from small projects to mature companies.

Who Uses Forest Admin

Getting Started


How it works


Forest Admin consists of two components:

  • The Admin Frontend is the user interface where you'll manage your data and configuration.
  • The Admin Backend API hosted on your servers where you can find and extend your data models and all the business logic (routes, actions, …) related to your admin panel.

The Forest Admin gem (aka Forest Liana) introspects all your data model and dynamically generates the Admin API hosted on your servers. The Forest Admin interface is a web application that handles communication between the admin user and your application data through the Admin API.



All of your CRUD operations are natively supported. The API automatically supports your data models' validation and allows you to easily extend or override any API routes' with your very own custom logic.


Search & Filters

Forest Admin has a built-in search allowing you to run basic queries to retrieve your application's data. Set advanced filters based on fields and relationships to handle complex search use cases.

Search and Filters

Sorting & Pagination

Sorting and pagination features are natively handled by the Admin API. We're continuously optimizing how queries are run in order to display results faster and reduce the load of your servers.

Sorting and Pagination

Custom action

A custom action is a button which allows you to trigger an API call to execute a custom logic. With virtually no limitations, you can extend the way you manipulate data and trigger actions (e.g. refund a customer, apply a coupon, ban a user, etc.)

Custom action


Sometimes you need to export your data to a good old fashioned CSV. Yes, we know this can come in handy sometimes :-)



Get in app access to a subset of your application data by doing a basic search or typing an SQL query or implementing an API route.



Forest Admin is able to tap into your actual data to chart out your metrics using a simple UI panel, a SQL query or a custom API call.



The WYSIWYG interface saves you a tremendous amount of frontend development time using drag'n'drop as well as advanced widgets to build customizable views.



Code your own views using JS, HTML, and CSS to display your application data in a more appropriate way (e.g. Kanban, Map, Calendar, Gallery, etc.).

Custom views

Team-based permissions

Without any lines of code, manage directly from the UI who has access or can act on which data using a team-based permission system.

Team based permissions

Third-party integrations

Leverage data from third-party services by reconciling it with your application’s data and providing it directly to your Admin Panel. All your actions can be performed at the same place, bringing additional intelligence to your Admin Panel and ensuring consistency.

Third-party integrations

Notes & Comments

Assign your teammates to specific tasks, leave a note or simply comment a record, thereby simplifying collaboration all across your organization.

Notes and Comments

Activity logs

Monitor each action executed and follow the trail of modification on any data with an extensive activity log system.

Activity logs

How to contribute

This repository is officially maintained by Forest Admin. We're always happy to get contributions for other fellow lumberjacks. All contributions will be reviewed by Forest Admin's team before being merged into main.

Here is the contribution workflow:

  1. Fork the repo on GitHub
  2. Clone the project to your own machine
  3. Commit changes to your own branch
  4. Push your work back up to your fork
  5. Submit a Pull request so that we can review your changes

Please ensure that the tests are passing before submitting any pull request:

$ RAILS_ENV=test bundle exec rake --trace db:migrate test


👇 Join our Developers community for support and more

Discourse developers community