Railbase

Documentation

Run Railbase. Ship plugins.

Railbase is a single Go binary you self-host. Plugins are paid subscriptions you buy and install at runtime from the built-in marketplace — no rebuilds, no third-party code. These guides take you from download to production.

Getting Started

Why Railbase

Core Concepts

Building with Railbase

UI Components

Accordion

A vertically stacked set of headings that each reveal a section of content.

Alert

A callout for drawing attention to a short, important message.

Alert Dialog

A modal dialog that interrupts the user with an important confirmation.

Aspect Ratio

Constrains its content to a fixed width-to-height ratio.

Avatar

An image element with a text fallback for a user or entity.

Badge

A small label for status, counts, or categories.

Breadcrumb

Shows the path to the current page in a hierarchy.

Button

A clickable button with variants and sizes; also exposes `buttonVariants` for styling links.

Calendar

A date-field calendar for selecting single dates or ranges.

Card

A surface that groups related content and actions.

Carousel

A slideshow for cycling through images or cards (embla-carousel).

Chart

A set of composable chart components (bar, line, area, pie, …) with tooltips and legends.

Checkbox

A control that toggles between checked and unchecked.

Collapsible

An interactive section that expands and collapses its content.

Combobox

An autocomplete input — a Popover wrapping a Command list (composed, not a single tag).

Command

A fast, composable command menu / command palette.

Context Menu

A menu shown on right-click of an element.

Drawer

A panel that slides in from an edge of the screen.

Dropdown Menu

A menu of actions or options triggered by a button.

Form

Accessible form fields with labels, descriptions, and validation messages.

Hover Card

A card that appears when hovering over a trigger (for previews).

Input

A single-line text input.

Input OTP

A segmented input for one-time passcodes.

Item

A flexible list-row layout: media, content, and actions with variants.

Label

An accessible label associated with a form control.

Menubar

A desktop-style menu bar with menus, items, and submenus.

Navigation Menu

A site navigation menu with dropdown content panels.

Pagination

Page navigation with previous/next and page links.

Password

A password input with strength scoring and a generator (Zod schema included).

Phone

An international phone input with country detection and E.164 output.

Popover

Floating content anchored to a trigger.

Progress

A horizontal progress bar.

QDatatable

Railbase's schema-driven data table — search, sort, paginate, select, and export over a collection.

QEditableForm

A schema-agnostic record form with a create mode (edit all fields) and an edit mode (per-field click-to-edit).

QEditableList

An inline-editable list with add/remove rows and a searchable combobox picker.

Radio Group

A set of mutually-exclusive radio options.

Resizable

Resizable, draggable panel layouts.

Scroll Area

A scrollable region with styled scrollbars.

Select

A dropdown for choosing one option from a list.

Separator

A visual divider between content.

Sheet

A dialog that slides in from a screen edge (side drawer).

Sidebar

A full application sidebar system: provider, collapsible rail, groups, and menus.

Skeleton

A placeholder shimmer shown while content loads.

Slider

A draggable control for selecting a value from a range.

Sonner

Toast notifications — mount `<Toaster />` once, then call `toast()` anywhere.

Switch

An on/off toggle.

Table

A semantic data table with header, body, and footer parts.

Tabs

Layered sections of content shown one panel at a time.

Textarea

A multi-line text input.

Toaster

The toast host/region. Mount once; trigger with `toast()`.

Toggle

A two-state button that can be on or off.

Toggle Group

A set of toggles where one or several can be active.

Tooltip

A small popup label shown on hover or focus.

Using the Admin

Guides

Self-Hosting

Reference