Oops... your message was not sent

Your message has been successfully sent

Jetruby Blog
Let's talk!

Featured Technical Stories Based On Our Experience

Tech

Administrate vs ActiveAdmin: What to Choose?

Administrate is a lightweight library for an automating generation of administrate panel. Basically, this library solves the same challenges as the other gems, such as Active Admin and Rails Admin.

The main advantage of these libraries is that Administrate is a perfect solution for small projects with minimum customization. It has a minimalistic and user-friendly interface that can be easily understood.

Since it’s super compact, it allows easily setting the administrate panel with a basic operations set for working with data. A library is very easy to use. It’s divided into separate modules and doesn’t use DSL (Domain Specific Language) that a developer needs to know for setting the working admin panel. All of this significantly reduced the development time (this really helped us during the project development).

However, the libraries have also some disadvantages. By default, it has only a basic set of tools so it’s not easily-customizable and extendable. Usually, a developer needs to rewrite and re-determine a great part of the functionality in order to meet all the business and client’s requirements. Moreover, this gem doesn’t support an adaptive and responsive interface. This significantly complicates the administrate panel usage on small-sized devices.

One of the examples of how effective this library can be in practice is our real estate project – RBMalta.

RBMalta is a real estate project that helps thousands of people buy, sell or rent property. Click on the picture below to find out more about this project.

JetRuby Casestudies

This project had only three entities to work with. The available operations over them were specified by the privacy policy. Except for the standard set of tools provided by Administrate (list, resource, create, update, delete, search) to meet the business-requirements, were added the custom tools, including filters system, group operation over the resources, an inline update of the dates when the real estate is available.

ActiveAdmin

ActiveAdmin is a highly effective tool for designing the administrate panel. The library provides DSL with detailed documentation. If we compare ActiveAdmin with Administrate, we’ll see that the ActiveAdmin adds more tools for working with data. This includes data export in various formats (XML, JSON, CSV), customizable filters’ system, group operations (Batch Actions), a basic system of system changes log.

The library is highly customizable. We literally can change any part of the interface or logic. This allows designing an administrate panel depending on the business requirements.

As an example, we made an admin panel on the NameCoach project. Thanks to the customization, you can insert tools for working with data just from other project’s services.

AmdinPanel

The project, which we implemented, helps solving an important issue of name mispronunciation and gender pronoun communication in as many important life settings as possible.

JetRuby Casestudies

The weak sides of the gem are out of date design and loaded interface. Neither Administrate nor ActivePanel has adaptivity or responsiveness. Additionally, this library uses DSL (Domain Specific Language) and this significantly slows down the development process for those developers, who have no experience with it.

This proves us that there is no ideal solution. Each one has its own pros and cons

If your goal is to find a convenient administrate panel for a new small project with a minimum functionality set and modern design, Administrate is a good choice.

On the other hand, if you need deep customization of an administrator’s interface or you need more tools than Administrate standard tools, you know what to choose.

JetRuby Agency
This post has been contributed by: