Generators produce models, migrations, definitions, and policies in one pass, covering CRUD, search, filtering, and bulk actions
plutonium-core — Rails Admin dashboard Template
By radioactive-labs
Plutonium is a Rails-based admin and starter template that uses generators to write common admin capabilities—CRUD, authentication, authorization, multi-tenancy, portals, search and filtering, and bulk actions—directly into the project code.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Actual screenshot captured by the server browser.
All pages & views 3
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Policies and definitions are separated: policies control permissions and writable fields, while definitions control rendering, search, and scopes
Supports splitting into portals and packages, allowing business logic and web interfaces to be organized independently
Built-in Rodauth authentication and multi-tenant entity scoping, with path or domain strategies
Provides an interaction mechanism for custom business actions; generated code lives in the repository and can be freely modified
Template Details
Plutonium targets Rails projects and provides a convention-driven resource architecture: models, policies, definitions, and controllers work together. Policies control who can perform which actions, while definitions control how fields render and how search and filtering take effect. It uses Rails generators to quickly scaffold resources, portals, and packages, leaving generated code in the repository so it can be modified, overridden, or deleted.
The template includes Rodauth authentication integration, multi-tenancy support based on entity scoping (path or domain strategies), and a custom interaction mechanism for implementing business actions such as publishing. Projects split business logic and web interfaces by portal and package, and resources are mounted to a specified portal via a connection command.
Prerequisites are Ruby 3.2.2+, Rails 7.2+ (Rails 8 recommended), and Node.js 18+. The repository uses the MIT license, and the free scope covers the code in this version; third-party assets such as demo images, fonts, and icons, as well as external services such as domains, hosting, databases, payments, or AI, require separate license and cost verification.
Is it right for your project?
Use Cases
- Need to quickly build an admin interface with permission control, search and filtering, and bulk actions
- Rails projects that want to split business logic and web interfaces into multiple portals or engines
- Applications that need multi-tenant isolation and to separate organizational data by path or domain
- Rails admin backends that want Rodauth-integrated authentication and a customized account system
Suitable For
- Developers familiar with Rails who want to reduce repetitive admin code
- Projects that need an integrated solution for permissions, multi-tenancy, and admin portals
- Teams that accept a convention-driven architecture and are willing to read and modify generated code
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Create an application with rails new using the Plutonium template at radioactive-labs.github.io/plutonium-core/templates/plutonium.rb
- 2
Generate resources with rails g pu:res:scaffold, then create portals with pu:pkg:portal and connect resources with pu:res:conn
- 3
Environment requirements: Ruby 3.2.2+, Rails 7.2+ (Rails 8 recommended), and Node.js 18+
- 4
Authentication requires running the pu:rodauth:install and pu:rodauth:account generators
- 5
The code uses the MIT license; third-party assets and external services require separate license and cost verification
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis listing covers the free version under the MIT license in the public repository; the free scope covers the code in this version and does not mean external services or third-party assets are free.
Must comply with when using
- The code in this version may be used, modified, used commercially, and distributed for free.
- When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
- The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.
Additional costs & items to verify
- Use requires meeting the runtime environment requirements: Ruby 3.2.2 or later, Rails 7.2 or later (Rails 8 recommended), and Node.js 18 or later; versions below these cannot run.
- Creating an application requires loading the Plutonium template from a remote address, depending on network access to that external template address; offline environments cannot use it directly.
- Authentication depends on Rodauth integration and requires running the pu:rodauth:install and pu:rodauth:account generators for configuration; it is not ready out of the box.
- Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's MIT license.
- External services such as domains, hosting, databases, payments, or AI may incur separate charges.
View Original Text Basis
Permission is hereby granted, free of charge
Original License Text
Ruby 3.2.2+ - Rails 7.2+ (Rails 8 recommended) - Node.js 18+
Original README
rails new myapp -a propshaft -j esbuild -c tailwind \ -m https://radioactive-labs.github.io/plutonium-core/templates/plutonium.rb
Original README
https://github.com/radioactive-labs/plutonium-core/blob/master/LICENSE.txthttps://github.com/radioactive-labs/plutonium-core/blob/master/README.md**Built-in authentication** via Rodauth:
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-01. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.
Project checks & description sources
Template Information
- Source platforms
- GitHub
- Documentation and maintenance reference score
- More documented · 92 / 100
- Technologies
- Rails
- Website type
- Admin dashboard · Starter
How this score is calculated
Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.
What to verify for this project
- Repository update recorded
- 2026-09-30
- Screenshot last checked
- 2026-10-01
A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.
The catalog identifies Rails as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.
Use a selection guide →How this description was prepared
AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.
Automatically checked against source and license rules; no manual editorial review.
Inspect the recorded source material
SHA-256: 1c210ac3962d5b7ef8bbe1f9f71cf7a82c736437b8ac0344351354b9dbacaf57
2026-10-01T02:49:31.130Z
Source file / repository# Plutonium
[](https://badge.fury.io/rb/plutonium)
[](https://github.com/radioactive-labs/plutonium-core/actions/workflows/main.yml)
[](LICENSE.txt)
**The Rails framework for things you should never write again.**
Convention over configuration, extended to everything you keep rebuilding: **CRUD. Auth. Authorization. Multi-tenancy. Admin portals. Search, filters, bulk actions.** All generated. All customizable. All Rails.
## Quick Start
```bash
rails new myapp -a propshaft -j esbuild -c tailwind \
-m https://radioactive-labs.github.io/plutonium-core/templates/plutonium.rb
```
Then scaffold a resource, create a portal, and connect them:
```bash
cd myapp
# Scaffold a resource — model, migration, definition, policy
rails g pu:res:scaffold Post title:string body:text published_at:datetime --dest=main_app
rails db:prepare
# Create a portal (web interface) and connect the resource to it
rails g pu:pkg:portal app --public
rails g pu:res:conn Post --dest=app_portal
bin/dev
```
Visit `http://localhost:3000/app/posts` — you have a complete CRUD interface.
## What You Stop Writing
Same scaffold command you already know. A very different surface area.
```bash
rails g scaffold Post ... # Rails: just CRUD
rails g pu:res:scaffold Post ... # Plutonium: full CRUD + search + filters + bulk actions
```
And it doesn't stop at scaffolds:
**Resource-oriented architecture** — models, policies, definitions, and controllers that work together:
```ruby
# Policy controls WHO can do WHAT
class PostPolicy < ResourcePolicy
def create? = user.present?
def update? = record.author == user || user.admin?
def permitted_attributes_for_create
%i[title body]
end
end
# Definition controls HOW it renders
class PostDefinition < ResourceDefinition
input :body, as: :markdown
search { |scope, q| scope.where("title ILIKE ?", "%#{q}%") }
scope :published
scope :drafts
end
```
**Packages and portals** — split your app into feature engines and themed web interfaces:
```bash
rails g pu:pkg:package blogging # Business logic
rails g pu:pkg:portal admin # Web interface
rails g pu:res:conn Post --dest=admin_portal
```
**Built-in authentication** via Rodauth:
```bash
rails g pu:rodauth:install
rails g pu:rodauth:account user
```
**Multi-tenancy** with entity scoping:
```ruby
# In a portal engine
scope_to_entity Organization, strategy: :path
# Routes become /organizations/:organization_id/posts
```
**Custom actions** with interactions:
```ruby
class PublishInteraction < ResourceInteraction
attribute :resource
attribute :publish_at, :datetime
def execute
resource.update!(published_at: publish_at)
succeed(resource).with_message("Published!")
rescue ActiveRecord::RecordInvalid => e
failed(e.record.errors)
end
end
```
## Why Plutonium
- **Convention over configuration** — extended to resources, policies, portals, and tenancy, not just routes and views.
- **It's just Rails** — generated code lives in your repo. Edit it, override it, delete it. The "magic" is regular Ruby mixins you can read.
- **Multi-tenant ready** — path or domain tenancy, scoped relations, invites and memberships out of the box.
- **AI-readable** — predictable file layout and naming, plus built-in [Claude Code skills](.claude/skills) that teach AI assistants the patterns.
## Documentation
Full documentation at **[radioactive-labs.github.io/plutonium-core](https://radioactive-labs.github.io/plutonium-core/)**
- [Installation](https://radioactive-labs.github.io/plutonium-core/getting-started/installation)
- [Tutorial](https://radioactive-labs.github.io/plutonium-core/getting-started/tutorial/)
- [Guides](https://radioactive-labs.github.io/plutonium-core/guides/)
- [Reference](https://radioactive-labs.github.io/plutonium-core/reference/)
## Requirements
- Ruby 3.2.2+
- Rails 7.2+ (Rails 8 recommended)
- Node.js 18+
## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and guidelines.
## License
MIT License — see [LICENSE.txt](LICENSE.txt).
Explore similar templates
Compare previews and descriptions within the same stack and category.

react-starter-kit
A full-stack Inertia.js starter with a Rails backend and React + TypeScript frontend, generated by inertia-rails/generator and automatically synced.
Rails · Starter

rails-tabler-starter
A free, open-source Ruby on Rails backend starter using Tabler (Bootstrap 5) with Hotwire/Turbo.
Rails · Admin dashboard

ace-template
Ace Template is a Rails application template applied via rails new, supporting interactive mode and command-line options, with SQLite, Postgres, and MySQL support, Tailwind or Bootstrap styling, and deployment instructions for Kamal, Fly.io, and Heroku.
Rails · Starter

kern
Kern is a Rails engine that provides foundational SaaS features: authentication and user settings based on Rails' authentication generator, multi-tenancy via Workspace and Member with multiple Roles, team invitations, Stripe subscription billing configured through plans.yml and credentials, plus a form builder, basic…
Rails · SaaS

rails-react-starter
Rails React Starter is an MIT-licensed starter that pairs a Rails JSON API backend with a React frontend, including TailwindCSS and Docker configuration.
Rails · Starter

SknServices
SknServices is a Rails 5 starter application focused on authentication and authorization, demonstrating content-level permission models through both XML files and a PostgreSQL database.
Rails · Starter
