Speedrail

screenshot of Speedrail

Speedrail

Rails 7 app template: Devise auth, Stripe billing, Tailwind CSS, admin panel, SEO helpers, etc

Overview:

Speedrail is a Rails 7 boilerplate template created by @ryanckulp. It is designed to help developers quickly ship SaaS (Software as a Service) applications. The template includes a variety of features and tools that streamline the development process, including user authentication, design components, billing management, and deployment options.

Features:

  • User authentication via Devise: Easily implement user authentication and secure user management.
  • Design via Tailwind UI: Utilize pre-designed UI components from Tailwind UI to create a visually appealing application.
  • User billing management via Stripe Checkout portal: Integrate Stripe Checkout to handle user billing and subscriptions.
  • Safely manage ENV variables with Figaro: Manage environment variables securely using Figaro gem.
  • Responsive toggle navbar with logic for login, signup, and settings: Implement a responsive navbar with dynamic functionality for login, signup, and user settings.
  • SEO toolbelt via Metamagic: Improve search engine optimization by utilizing Metamagic for managing meta tags and SEO-related elements.
  • Rename your app in 1 command with Rename: Easily rename your Rails application with a single command.
  • Increased debugging power with Better Errors: Enhance the debugging experience with Better Errors gem.
  • Seed your DB in seconds via Seed Dump: Quickly seed your database with sample data using the Seed Dump gem.
  • Production-ready DB via Postgres: Set up a production-ready database using PostgresSQL.
  • Easy API requests with HTTParty: Simplify API requests and integrations using the HTTParty gem.
  • Postmark for transactional emails: Configure transactional email functionality using the Postmark service.
  • Letter_opener for local development mailers: Utilize Letter_opener gem for testing and previewing email functionality in local development.
  • Script tag component for Google Analytics and more: Easily add script tags for tools like Google Analytics using a component.
  • Testing suite via RSpec: Implement a robust testing suite using RSpec for ensuring code quality.
  • Cron job task scheduler (lib/tasks/scheduler.rake): Schedule recurring tasks and jobs using the built-in cron job task scheduler.
  • Random data generation with Faker: Generate realistic random data for testing and development purposes using Faker gem.
  • Heroku <> Cloudflare HTTPS via lib/cloudflare_proxy.rb: Securely configure HTTPS for your Heroku application using Cloudflare proxy.
  • Background job queue via Delayed: Implement background job processing using the Delayed gem.
  • Paid subscriptions CRUD via Stripe Checkout: Enable CRUD (create, read, update, delete) operations for paid subscriptions using Stripe Checkout.
  • Interactive charts via Chartkick: Easily create interactive charts and graphs using the Chartkick gem.
  • Automated testing via GitHub actions + PR status check: Automate testing processes using GitHub actions and incorporate status checks for pull requests.
  • Rubocop for code style enforcement and linting auto-fixes: Enforce code style guidelines and automatically fix linting issues using Rubocop.

Installation:

To use Speedrail, follow the steps below:

  1. Clone the repository: git clone [repository_url]
  2. Inside the cloned directory, run bin/speedrail [new_app_name] to create a new Rails application with Speedrail.
  3. Plug in your environment variables into config/application.yml.
  4. Follow the additional setup and configuration instructions provided in the documentation.

Summary:

Speedrail is a powerful Rails 7 boilerplate template that offers a range of features and tools to accelerate the development of SaaS applications. With built-in functionalities for user authentication, design components, billing management, and deployment options, Speedrail provides developers with a solid foundation to quickly build and ship their applications. The template also includes tools for testing, debugging, and optimizing code quality. By following the installation guide and leveraging the various features of Speedrail, developers can save time and effort in the development process.