Skip to content
Featured Add Solana Wallet Login to Rails in Under a Minute
SolRengine

Rails meets Solana

Build Solana dApps with Ruby on Rails 8. Modular gems for wallet auth, RPC, tokens, transactions, and real-time updates.

$ bundle add solrengine

Add Solana login in under a minute

One gem, one generator, one Stimulus controller. Watch the whole Sign In With Solana flow — challenge, signature, verify — wired into a Rails 8 app.

solrengine-auth — Sign In With Solana
Read the full guide $ rails generate solrengine:install
20,000 +

RubyGems downloads across 10 gems · MIT licensed

Powering 8 showcase apps — wallets, savings, voting, token sales

The full stack — not just an RPC client

Other Ruby gems stop at RPC calls and keypairs. SolRengine ships every layer of a Solana dApp — wallet auth, RPC, tokens, transactions, and real-time updates — as modular, documented Rails gems.

Why Ruby for Solana?

A million Rails developers, and almost none of them onchain. The fastest path from idea to working dApp isn't a new stack — it's the framework you already know.

Convention over configuration, onchain

Wallet auth, RPC, tokens, transactions, real-time updates — solved problems in Rails-land, now solved problems on Solana. One rails generate away instead of a week of wiring.

Server-rendered beats SPA for most dApps

Read on the server, sign in the browser. Turbo Streams push balance changes to your views — no wallet-adapter boilerplate, no client-side state machine, no separate API layer to maintain.

Two decades of production maturity

Auth, background jobs, caching, migrations — Rails ships the boring parts every real dApp needs. SolRengine adds the Solana layer as modular gems, so you keep all of it.

Real code, not promises

Production examples from our showcase apps. Copy, paste, ship.

wallet_auth.rb
# Gemfile
gem "solrengine-auth"

# routes.rb — mounts at /auth
mount Solrengine::Auth::Engine => "/auth"

# User model — wallet address as identity
class User < ApplicationRecord
  include Solrengine::Auth::Authenticatable
end

# Any controller — protect routes
class DashboardController < ApplicationController
  before_action :authenticate!
end

Two ways to hold a wallet

Your users bring their own wallets, or you hold wallets for them. SolRengine covers both — and they mix in one app.

Your users bring wallets

Non-custodial. Users sign in with Phantom, Solflare, or any Wallet Standard wallet and keep their own keys. Wallet auth (SIWS), RPC, token portfolios, transfers, and real-time updates — the gem family above.

gem "solrengine" Quickstart

You hold wallets for your users

Wallet-per-User on the Solana Developer Platform (SDP). Users sign up with an email; the app provisions a custody wallet for each of them. The solana-sdp client gem plus the solrengine-sdp Rails engine: provisioning at signup, tracked transfers, live balance updates.

gem "solrengine-sdp"
Prerequisites: a running SDP instance, a managed custody provider (e.g. Privy), and Kora as the fee-payment provider. SDP is pre-mainnet and devnet-oriented — so is this path.

Two reference apps: Lamport (wallets & payments) and Kudos (token issuance).

Wallet-per-User docs

The two paths mix in one app — custody wallets for everyday users, connected wallets for power users. Lamport, a neobank demo on devnet, is the worked example of the mix.

Built with SolRengine

Real applications showcasing what you can build.

Browse all case studies
New
SolRengine Starter — Your first Solana dApp built in Rails

SolRengine Starter

Your first Solana dApp in Rails. Wallet authentication, token portfolio, SOL transfers, dark/light mode, and 20+ UI components from solrengine-ui. The Rails equivalent of create-solana-dapp.

auth rpc tokens ui lookbook
WalletTrain — Solana wallet built with Rails

WalletTrain

Full Solana wallet with SIWS authentication, token portfolio with USD values, SOL transfers, and real-time balance updates via WebSocket.

auth rpc tokens transactions realtime
PiggyBank — Time-locked SOL savings on Solana

PiggyBank

Time-locked SOL savings using a custom Anchor program. Demonstrates IDL parsing, Borsh encoding, and on-chain account queries from Rails.

auth programs rpc