Code boilerplate to start Laravel project with plans and user subscriptions.
- Users and Subscription Plans (based on Roles)
- Features: Roles/permissions system to assign Features to Plans, with example of Tasks and Projects Features.
- Multi-tenancy: every user sees their own records
- Cashier: Subscription system based on Laravel Cashier: subscribe to the plan, change plan, cancel plan, add/change payment method
- Dashboard: revenue report for administrator
- Features: Quick Overview (2:34)
- Installation Process (1:40)
- Roles/Permissions and Plans/Features System (4:03)
- Clone the repository with
git clone
- Copy
.env.example
file to.env
and edit database credentials there - Run
composer install
- Run
php artisan key:generate
- Run
php artisan migrate --seed
(it has some seeded data for your testing) - That's it: launch the main URL and login with default credentials
admin@admin.com
-password
- You can click Register or go to
/register
URL and create a new user which would have Free Plan role by default
In the seeds, we have these plans/features:
- Free Plan: default for new registered users, can manage projects but only up to 5 projects. Cannot see/manage tasks.
- Bronze Plan ($9.99/month): can manage unlimited projects, Cannot see/manage tasks.
- Silver Plan ($19.99/month): can manage unlimited projects. Can see/manage tasks but only up to 5 tasks.
- Gold Plan ($29.99/month): can manage unlimited projects and tasks.
- Stripe webhooks: email notification for customers/admins
- Invoices: generating/sending invoices and saving billing details
- Yearly plans: customizing plans system to have two sub-plans for each plan
- Team plans: invitation system with billing for the whole team
- Discounts and coupons: generating coupons and checking them at checkout
- Taxes and VAT: calculating taxes and using VAT API to calculate tax rate
- ... anything you want to add? Create an issue