Giter Club home page Giter Club logo

ror-saas-boilerplate's Introduction

SaaS Boilerplate - Ruby on Rails

This is a wip project for creating a SaaS boilerplate/template application using Ruby on Rails.

Currently uses these gems: Tailwindcss, Devise, Rspec, standardrb, stripe

Features

  1. User Login, Registration & Forgot Password functionality (via Devise gem)
  2. Stripe integration for basic monthly subscription tiers. Webhooks are supported. Uses Stripe customer portal for user subscription management
  3. Basic ticket system & help chat system (websocket supported via Turbo Streams)
  4. Notification system (websocket supported via Turbo streams)

Testing and Linting

  1. For linting, standardrb is used, use standardrb to run
  2. RSpec is to be used for testing going forward, using bundle exec rspec. TODO: Controller tests to be migrated to rspec controller & feature tests - along with factories (using Factory Bot) instead of fixtures.

To do..

  1. Set up feature testing using Rspec
  2. Add SSO (via Devise)
  3. Setup basic admin functionality (subscription, ticketing)
  4. Setup basic isolated "apps" to share between users/teams
  5. Feature toggling

Local setup

  1. You will need Ruby 3+ and Docker installed
  2. After cloning the repo, run bundle install inside the root folder to install the dependencies.
  3. Next, run docker-compose up in the root folder to setup your local & test postgres dbs and redis.
  4. Before migrating & seeding your database, you need to setup a Stripe account and obtain a test API key from the developers portal. Then set your env var, look at `config/initializers/stripe.rb`` for more info.
  5. You will need to migrate & seed your database using rails db:setup
  6. Now run using ./bin/dev

ror-saas-boilerplate's People

Contributors

marcusjrc avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.