Business Class, a Ruby on Rails SaaS Starter Kit
Watch the v1 demo: https://www.youtube.com/watch?v=s8mM5-snTig.
Not ready to buy? Subscribe for updates.
Current version: v1.8.
Last update: 29th July, 2024.
A story behind Business Class
If you are like me, you always avoided selling paid products.
Thinking about international taxes always made me feel uneasy. It was Gumroad which finally pushed me to build my first paid product. My book sold over 1000 copies to this day.
Paddle is a payment provider which acts as a merchant of record and collect international tax on your behalf. And not just that, but also handles disputes and other hardships. It's like Gumroad but for your SaaS.
Since my dream is to build a successful subscription business I built this Rails SaaS template around Paddle so you and me can finally shoot for the moon.
Note: Stripe is now also supported as of v1.3.
A SaaS starter kit
Business Class is a brand new SaaS boilerplate for Rails designed to be close to Rails defaults and work with the Paddle payment processor.
- Staying close to Rails defaults let you enjoy Rails as it was designed and use all official guides.
- Using Paddle Billing let's you avoid the hassle of European VAT, because as Paddle acts as a merchant of record.
Check out the official website at https://businessclasskit.com.
Watch the demo: https://www.youtube.com/watch?v=s8mM5-snTig.
Business Class was the first Rails template supporting Paddle Billing and it's still the only one having an easy ready-to-go Kamal integration.
Philosophy
- Standard Rails - Business Class is built with all the common conventions and stays as close to vanilla Rails as possible. That means Hotwire, Active Storage or Minitest.
- Just a template - Your product won't have any reference to Business Class whatsoever. No private gems, no Business Class named modules, nothing. This is your application.
Core features
- Authentication - Devise-based authentication workflows including email confirmations, account locking, 2-factor authentication with OTP, and more.
- Teams - Team spaces with team roles, invitations, and possibility to rename the team features to whatever your application needs.
- Subscriptions - Paddle Billing and Stripe subscriptions on top of the Pay gem attached to whoever starts a subscription, but manageable by all team owners. A possibility to offer free subscriptions or pause current plans (for Paddle).
- Internationalization - Timezones and locales for users, localized strings, default English translations, basic translation workflow as well as automated tests for missing and unused translations.
- Admin - A custom admin interface for basic management of users, teams, and subscriptions. Solid Queue and PgHero dashboards.
- API - A token-based authentication compared in a time-constant manner and request throttling included.
- Scaffolding - A powerful new scaffolding for team-based resources. Like Rails own scaffold just adjusted for Business Class.
- Theme - A default Tailwind theme that's easy to configure for your own assets and brand colors.
- Tests - A unit, controller, and system test coverage of the whole kit with Rails-default Minitest.
- Developer experience - From database Docker Compose setup, to quick log-in as in development and production, to fake subscriptions, to automatic GitHub CI.
- Blog - A SEO-optimized blog inspired by those of Hey and Framer. Save money on yet another subscription.
- Deployment - A security-hardened Kamal single-server deployment built for Ubuntu LTS.
Author
I am a Rails practitioner since Rails 2.0. I worked as a CTO of a Rails-based startup Cloudaper, senior Rails engineer at Phrase, Ruby and Rails Linux packager at Red Hat. I authored several gems such as invoice-printer or gem-compare, maintain devise-otp and contributed to many more gems. I wrote a book on deploying Rails applications Deployment from Scratch which sold over 1000 copies.
Updates
Not ready to buy? Subscribe for updates.