๐ BIG NEWS ๐ โฆ Avo 4 has officially SHIPPED โฆ ๐ the beta is over, 4.0 is here โฆ ๐ ๏ธ build admin panels, dashboards & internal tools at light speed โฆ โญ you are visitor #1,137,013 โฆ ๐ tell a friend โฆ best viewed in Ruby on Rails โฆ ๐ click here to see what’s new โฆ

Scopes
Automatically segment data by team, department, or any custom criteria. Makes complex data organization feel simple.
# $15/mo
gem "avo-scopes"
Segment your data more easily with named views of a resource, something
like "Active", "Mine", or "Archived", shown as a row of tabs across the top
of any index view, so the cuts of the data people reach for most are one
click away instead of a filter someone re-applies every time. Each scope is
a small class under
app/avo/scopes/ that points at a model scope or a
query proc, and you register it on the resource with the
scope method.
Scopes work on association index views too, not just the top-level resource,
so a record's related table gets the same tabs. Mark one
default: true
to pre-apply it on load, gate a scope behind visible
so only the right users see it, or call remove_scope_all
to drop the unfiltered "All" tab entirely. It's a gem you add, not a tabbed
index UI you build and then keep wired up as your resources change.
What you get
- A tabbed scope bar on any resource index, so the views your team reaches for sit one click away instead of behind a filter they re-apply every time
-
Scope classes generated with
bin/rails generate avo:scope, so a new named view is one command and a few lines, not a UI feature to design - Easily point a scope at a model scope or an inline query proc, so you reuse query logic you already trust instead of duplicating it in the admin
- Scopes on association index views too, so a record's related tables get the same one-click views, not just top-level resources
-
Mark a scope
default: trueto land people on the right view on load, so the first thing they see is the data they actually came for -
visibleprocs andremove_scope_allto control who sees which tabs, so each role gets the cuts that matter to them and nothing that doesn't
Why it pays off
- Ship named index views this afternoon instead of building a tabbed scope UI and the query wiring behind it.
- Every Avo release makes it better: the scope tabs across the index keep working through upgrades, without you patching them.
- When something breaks it's our code in our domain: we fix it once and ship the fix to everyone, instead of you debugging a feature you bolted on alone.
# included in
# ready to ship?
You ship it this afternoon. We keep it solid for years.