What it does
avo-dashboards
Give every team the numbers that matter to them the moment they open Avo,
with a Rails dashboard gem you configure in Ruby.
Run rails g avo:dashboard,
then compose a view from metric cards, Chartkick charts, and your own ERB
partials in a plain Ruby cards method,
no front-end code to wire up.
Cards refresh on their own with refresh_every, so
the screen stays live without anyone hitting reload. A
visible block and a dashboard-level
authorize rule keep each viewer to the numbers
they're allowed to see, and a 3-to-6 column grid lets you arrange it all.
Your agent writes the cards method; the live refresh,
authorization, and grid come with the foundation and keep improving with Avo.
What you get
- Show a single number, a trend, or anything you can render, with the three card types that cover it: metric cards, Chartkick charts, and your own ERB partial cards
-
Put trends in front of people instead of raw tables: add the
chartkickgem and Chartkick draws area, line, column, bar, pie, and scatter charts -
Lay the numbers that matter where the eye lands first, on a 3-to-6 column grid with per-card
colsandrowsspans and labelled dividers -
Numbers nobody has to refresh: per-card
refresh_everypolls and repaints over Turbo frames, so no one is reading a stale figure -
Let people ask "how about last quarter?" without leaving the page: date-range cards with
rangesand aninitial_range, set per card or shared across the dashboard -
Show each viewer only the numbers they should see: a
visibleblock and a dashboard-levelauthorizerule scope every card -
A running dashboard from one command:
rails g avo:dashboardscaffolds the class andcardsmethod, ready to fill in
Why it pays off
- Your team sees the live numbers the moment they open Avo, so calls get made on current data instead of a stale export someone ran last week.
-
Ship a reporting screen this afternoon by writing a
cardsmethod, instead of speccing charts, polling, and a grid layout over a sprint. - Every Avo release makes it better: the live refresh, Turbo frames, metric cards, and grid layout keep working through upgrades, and fixes reach your app with bundle update.
- Tokens, time, and focus go to the numbers your team needs, not to a reporting layer generated from scratch in every app.
Questions
Which charts can a Rails dashboard show?
Charts come from Chartkick, which you add to your Gemfile yourself: area, line, column, bar, pie and scatter. Next to them sit metric cards for a single number or trend, and partial cards for anything you can render in ERB, such as a map or a progress bar.
Do I need a separate dashboard app or BI tool?
No. A dashboard is a Ruby class in your app, written with rails g avo:dashboard. Each card runs a query against your own models, so the numbers come straight from your database and the dashboard ships with the rest of your code.
Can I limit who sees a dashboard?
Yes. An authorize block decides who can open a dashboard, with current_user and params in reach, and a dashboard that fails it also blocks its cards' URLs. A visible boolean or block decides whether it shows up at all.