All Projects → archonic → limestone-accounts

archonic / limestone-accounts

Licence: MIT License
Boilerplate Rails 5.2 multitenant SaaS application with webpack and Docker integration. Billing is scoped to accounts.

Programming Languages

ruby
36898 projects - #4 most used programming language
Haml
164 projects
HTML
75241 projects
coffeescript
4710 projects
javascript
184084 projects - #8 most used programming language
Sass
350 projects

Projects that are alternatives of or similar to limestone-accounts

Limestone
Boilerplate Rails 6 SaaS application with Webpack, Stimulus and Docker integration.
Stars: ✭ 191 (+96.91%)
Mutual labels:  sidekiq, stripe, rspec, devise, saas
shotgun
Ready to go Rails App with TailwindCSS, ViewComponent, Devise, and more!
Stars: ✭ 25 (-74.23%)
Mutual labels:  sidekiq, devise, stimulus
Pinax Stripe
a payments Django app for Stripe
Stars: ✭ 650 (+570.1%)
Mutual labels:  stripe, saas
Parabol
Free online agile retrospective meeting tool
Stars: ✭ 1,145 (+1080.41%)
Mutual labels:  stripe, saas
AWS Stripe-SaaS-quickstart
🛍️ 🚀 AWS Software as a Service App with subscriptions using Stripe Quickstart
Stars: ✭ 30 (-69.07%)
Mutual labels:  stripe, saas
Djaodjin Saas
Django application for software-as-service and subscription businesses
Stars: ✭ 297 (+206.19%)
Mutual labels:  stripe, saas
Api
🏁🛠️ SaaS backend & API framework based on @nestjs
Stars: ✭ 390 (+302.06%)
Mutual labels:  stripe, saas
Memberprism2
open source alternative to memberstack / memberspace , but with both front and backend member-only content protection
Stars: ✭ 171 (+76.29%)
Mutual labels:  stripe, saas
Invoice As A Service
💰 Simple invoicing service (REST API): from JSON to PDF
Stars: ✭ 106 (+9.28%)
Mutual labels:  stripe, saas
Flask-Stripe-MySQL-Bootstrapped
Flask template with microservices architecture. Fully integrated with Stripe 🚀
Stars: ✭ 124 (+27.84%)
Mutual labels:  stripe, saas
subscribie
Collect recurring payments online - subscription payments collection automation
Stars: ✭ 36 (-62.89%)
Mutual labels:  stripe, saas
pinax-stripe-light
a payments Django app for Stripe
Stars: ✭ 670 (+590.72%)
Mutual labels:  stripe, saas
Base App
An app to help jumpstart a new Rails 4 app. Features Ruby 2.0, PostgreSQL, jQuery, RSpec, Cucumber, user and admin system built with Devise, Facebook login.
Stars: ✭ 127 (+30.93%)
Mutual labels:  rspec, devise
Rails Devise Graphql
A Rails 6 boilerplate to create your next Saas product. Preloaded with graphQL, devise, JWT, CanCanCan, RailsAdmin, Rubocop, Rspec, i18n and more.
Stars: ✭ 199 (+105.15%)
Mutual labels:  devise, saas
Flasksaas
A great starting point to build your SaaS in Flask & Python, with Stripe subscription billing 🚀
Stars: ✭ 412 (+324.74%)
Mutual labels:  stripe, saas
cashier-register
Cashier Register is a simple quota feature usage tracker for Laravel Cashier subscriptions.
Stars: ✭ 93 (-4.12%)
Mutual labels:  stripe, saas
SAAS-Starter-Kit-Pro
🚀A boilerplate for building Software-as-Service (SAAS) apps with Reactjs, and Nodejs
Stars: ✭ 313 (+222.68%)
Mutual labels:  stripe, saas
pytest-it
Decorate your pytest suite with RSpec-style pytest markers, then run `pytest --it` to see a plaintext spec of the test structure.
Stars: ✭ 26 (-73.2%)
Mutual labels:  rspec
open-box
Generalized and Efficient Blackbox Optimization System [SIGKDD'21].
Stars: ✭ 174 (+79.38%)
Mutual labels:  saas
PayumYiiExtension
Rich payment solutions for Yii framework. Paypal, payex, authorize.net, be2bill, omnipay, recurring paymens, instant notifications and many more
Stars: ✭ 13 (-86.6%)
Mutual labels:  stripe

Limestone Accounts

Codeship Status for archonic/limestone-accounts

WARNING Limestone Accounts is no longering being maintained due to it's reliance on the Apartment Gem. If you would like a multitenant solution in Limestone, you can vote for ActsAsTenant here: https://www.strawpoll.me/42684734/

Limestone Accounts is a boilerplate SaaS app built with Rails 5.2 and has an opinionated integration with NPM using Webpacker and Stimulus.

Limestone Accounts is multitenant, meaning each account has one subscription and potentially many users through invitations. If you want each user to have their own subscription, try Limestone.

The Stack

The gemset has been chosen to be modern, performant, and take care of a number of business concerns common to SaaS.

Features

  • Free trial begins upon registration without credit card.
  • Per-seat billing.
  • Subscription management. Card update form and cancel account button.
  • Emails for welcome, billing updated, invoice paid, invoice failed and trial expiring. All except welcome are controlled by Stripe webhooks.
  • Invoice PDF attached to invoice paid email.
  • Mail sends through Sidekiq with deliver_later. Devise mailing also configured for Sidekiq dispatch.
  • Direct uploading to S3 with ActiveStorage. Lazy transform for resizing. Demonstrated with user avatars.
  • Icon helper for user avatars with fallback to user initials. Icon helper for font awesome icons.
  • Administrate dashboard lets you manage records (ex: accounts, users, invoices). Easy to add more and customize as you like. Visit /admin.
  • Impersonate users through administrate dashboard.
  • Pretty modals using bootstrap integrated into rails_ujs data-confirm. Demonstrated with cancel account button.
  • Persistent banner with link to billing page for accounts that are past due.
  • Opinionated search integration using Elasticsearch via Searchkick. Gem is in place but integration is up to you.
  • Feature control using the flipper gem. Demonstrated with public_registration.
  • Notifications with ActionCable. See console example in app/models/notification.rb.
  • 88% RSpec test coverage.

Roadmap

  • In-browser image cropping using jcrop or the likes.
  • Custom error pages.

Notes

  • RSpec controller tests have been omitted in favour of requests tests.
  • You can run tests locally with docker-compose run web rspec
  • Because this is a boilerplate, there are no migrations. Rely on schema.rb and use rails db:setup to create the db and seed.

Getting Started

  • Install Docker
  • Customize .env from .env-example
  • run docker-compose run webpack yarn install --pure-lockfile to install all node modules.
  • run docker-compose up --build to create and run the various images, volumes, containers and a network
  • run docker-compose exec web rails db:setup to create DB, load schema and seed. Seeding will also create your plan(s) in Stripe.
  • Visit lvh.me:3000 and rejoice

Bonus points

  • Login as the admin user that was created (from .env)
  • Visit /admin/flipper
  • Create the feature public_registration and enable it. Now anyone can register 👏
  • You'll probably want to change the role enum on the accounts_user model, and the default role in schema.rb.

Setting up production

A wiki will be written about this.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].