Installation
Get RapidRails UI up and running in your Rails application in under 5 minutes.
Prerequisites
- Ruby 3.0+
- Rails 7.0+
Tailwind CSS: The installer will set up Tailwind CSS v4 automatically if not already installed.
After purchasing, you'll receive:
- 1. Gemfury Token - Access to download the gem
- 2. License Key - Required for production deployments
Step 1: Configure Bundler
Run this command to save your Gemfury credentials (one-time setup):
bundle config gem.fury.io YOUR_GEMFURY_TOKEN
Replace YOUR_GEMFURY_TOKEN with the token from your purchase confirmation email.
Note: This stores credentials in ~/.bundle/config (not in your project), keeping them out of version control.
Heads up: If you skip this step, Bundler will show an error asking for username:password. Don't worry - just use your token with the command above. No username needed.
Step 2: Add to Gemfile
Add the gem source and dependency to your Gemfile:
# Gemfile
source "https://gem.fury.io/rapidrailsui" do
gem "rapid_rails_ui"
end
Then run:
bundle install
Step 3: Run the Installer
Run the installer to configure everything automatically:
rails generate rapid_rails_ui:install
The installer will set up Tailwind CSS, dark mode, Stimulus controllers, and all necessary configuration.
After installation: Restart your Rails server to load the new components.
Step 4: Set License Key (Production Only)
License validation is automatically skipped in development and test environments. You can start building immediately!
For production, set the environment variable on your hosting platform:
export RAPID_RAILS_UI_LICENSE_KEY=RRUI-PRO-YOURKEY-S1-D5-20261231-CHECKSUM
Or use Rails credentials:
# config/credentials.yml.enc
rapid_rails_ui:
license_key: RRUI-PRO-YOURKEY-S1-D5-20261231-CHECKSUM
# config/application.rb
ENV['RAPID_RAILS_UI_LICENSE_KEY'] = Rails.application.credentials.dig(:rapid_rails_ui, :license_key)
Step 5: Verify Installation
Add a button to any view to confirm everything works:
<%= rui_button("Hello World", color: :success) %>
You should see:
Done! You're ready to start building.
CI/CD Configuration
For automated deployments, configure your CI environment with the Gemfury token:
GitHub Actions
env:
BUNDLE_GEM__FURY__IO: ${{ secrets.GEMFURY_TOKEN }}
Heroku
heroku config:set BUNDLE_GEM__FURY__IO=your-gemfury-token
Docker
ARG GEMFURY_TOKEN
RUN bundle config gem.fury.io ${GEMFURY_TOKEN}
Kamal
Kamal uses Docker BuildKit secrets to securely pass credentials during image build.
1. Add to .kamal/secrets:
export BUNDLE_GEM__FURY__IO="your-gemfury-token"
export RAPID_RAILS_UI_LICENSE_KEY="RRUI-PRO-YOURKEY-..."
2. Add to config/deploy.yml:
builder:
secrets:
- BUNDLE_GEM__FURY__IO
env:
secret:
- RAPID_RAILS_UI_LICENSE_KEY
3. Update your Dockerfile:
# Install gems with Gemfury credentials
RUN --mount=type=secret,id=BUNDLE_GEM__FURY__IO \
if [ -f /run/secrets/BUNDLE_GEM__FURY__IO ]; then \
bundle config set --global gem.fury.io "$(cat /run/secrets/BUNDLE_GEM__FURY__IO)"; \
fi && \
bundle install
Note: The .kamal/secrets file should be in your .gitignore. Each developer/deployer creates their own locally.
Build vs Runtime: builder.secrets passes credentials during Docker image build (for bundle install). env.secret injects variables at container runtime (for license validation).