blog

Why Avo? "How to move fast and build a business platform”

September 16, 2022
Author
Kennedy Kinikanwo-Wali
September 2, 2022
Subscribe to our newsletter

When we started building our next big project we knew that it was a big undertaking. We also knew that we need all the help we can get and we’d need to use a lot of things off the shelf and not build it ourselves.

We started with Ruby on Rails. It’s still the most productive framework out there. It’s not for nothing that it’s the top choice in Silicon Valley and the start-up world. It helps you ship amazing apps fast!

After choosing our tooling at the framework level, we had to go up to the UI level. We know that React and other front-end frameworks introduce quite a high level of complexity and our goal here is to move fast, so using a JS heavy front-end is out of the picture.

After some digging we found Avo. It’s an open source next-generation framework that empowers developers and teams to deliver fast and in a uniform way beautiful admin panels for your Ruby on Rails apps. It’s a Rails engine built with Hotwire that runs alongside your application so most of the setup work is already done for you, meaning you can jump in and start working on your features straight away. Managing data is simple because it knows how to talk to your already made models.

It states that you can build apps 10x faster with it. We wanted to put it to the test and see if that’s possible.

The way Avo works is that for each Rails model, you get an Avo resource. The resource files configure Avo and tell it what kind of data you have; then, Avo does the rest. 

Resources have all types of data attached. Avo uses simple fields like text inputs, checkboxes, dropdowns, and more complex fields like date pickers, WYSIWYG and markdown editors, file uploads fields, etc., to manipulate those pieces of data. Avo saves you the time it takes to create these fields repeatedly. 

When you use Avo, doesn’t it look as if you've hired an entire new team to handle all of your administrative tasks?

So much done in so little time and it still looks as if an actual team handled this code. This is an example of what Avo brings to the table. 

"The best for prototypes"

I remember the days when we were a small startup building our MVP (Minimum viable product). When building an MVP you only need to test an idea with the least amount of work possible. Here's where Avo could have helped us. It would save all that time, effort, and resources. Why waste time and resources re-creating something you're unsure of? You'll need those resources to focus on the business side of our apps. All of that can be yours for a fraction of the price of hiring a developer to do it for you. It also comes with an excellent user interface that you'll be able to show off to your customers right away.

"What about internal tooling?"

It seems you can do that with Avo too. Many companies often use Ruby on Rails to build internal tooling to improve productivity, manage logistics, and respond quickly to customers in the event of technical difficulties. Using self-made internal tools, you can track how well your site is performing, make long-term plans, and even save money.

This internal tooling may be an analytics app, giving the analytics team access to the database, specific points, or read-only, hook into different APIs and databases. Avo is perfect for that, so if you have a team like that, the technical team builds the app for analytics and gives it to them. 

"Avo cares about how they can help developers."

To make it easier for developers and teams to build admin panels for their apps, Avo's goal is to allow them to spend their time and attention on the more unique aspects of their projects rather than writing boilerplate code. Maintaining and adding new features requires a significant amount of time and effort. 

Without a commercial offering, Avo may find it difficult to provide that support. Hence, the Pro version serves as the backbone for financial backing. 

Avo happily decided to ensure that many developers can access this engine as a side benefit. The Community version comes into play here. It includes all predefined fields and associations, the complete CRUD interface, Grid view, Filters, and Actions. 

When you need more power, you can upgrade to a Pro license, but before upgrading, you can try out all the features for free on your local machine. For more info, you can view Avo's pricing page.

What about other features most apps have?

We know that most apps end up with a search feature. Avo brings that to the table form day one. Same for a mobile-ready design, authorization, translations, menu editors, dashboards, records re-ordering and more.

Avo is a fantastic library that goes above and beyond your expectations by letting you manage resources, configure apps, view states and dashboards, and add your custom functionality. 

Speaking of customization, Avo enables you to add customizations on all levels; fields, resources, app, and dashboard level.
You can even bring you own asset pipeline into the mix and use your Stimulus JS code.

All the customizations you bring in are written in the most familiar, Railsy way possible. You’ll have access to the controller, request, partials, and all the necessary information for you to add to the users experience.

FIG 1.1 An illustration of Avo's general interface.

We tried Avo and it didn’t disappoint. In less than a week we implemented the bulk of our screens with amazing velocity. The custom content is coming along nicely too. All the necessary outlets are in place. This is just what we needed. It’s going to be our secret growth weapon in the tech department. 

Go and give Avo a shot. We think you’ll love it.