By jartist77
My question title may not appropriate as I am not so aware of how to call it. I will appreciate it if anyone can edit to fits the query.
I am planning to build a web application where users will subscribe. For instance, CRM or Project management application. I want to have a separate instance and database with a custom domain for enterprise subscribers, and I may have a common database or instance for non-enterprise subscribers. The subscription will be handled through a marketing website, where all subscribers will checkout and have their own account.
Once the subscription period is over and it is not renewed, they will lose access. If they do not renew/reactivate for x time, the instance will destroy itself.
I am quite confident with PHP and MySQL, have some knowledge of AWS and Digital Ocean. I am planning to use Laravel for serverside. However, I am open to other languages as well, such as python.`
Can anyone help me to learn the best approach for the system I want to make. Pros and Cons and things to be considered? Also, approach to make a mobile application for the subscriber where they can access their own instance.
Also, find here https://stackoverflow.com/q/66419485/1053190
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Hi there,
I have also been using Laravel for a while now and I believe that it is a great choice for building a SaaS project.
I’ve been quite happy with Laravel Wave as it comes with out of the box Authentication, Subscriptions, Invoices, Announcements, User Profiles, API, and etc. That way you could focus only on the functionality.
Hope that this helps! Regards, Bobby
Building a subscription-based application with dedicated instances for enterprise subscribers and a shared environment for non-enterprise subscribers requires careful planning and architecture. Below is a step-by-step guide and considerations to help you get started:
Marketing Website:
Application Instances:
company1.yourapp.com, company2.yourapp.com.Automation Layer:
Database Design:
Mobile Application:
Marketing Website:
Plan Differentiation:
Instance Management:
For Enterprise Users:
company1.yourapp.com).For Non-Enterprise Users:
Payment Gateway Integration:
Access Control:
Instance Cleanup:
API-First Approach:
Tenant Identification:
| Component | Recommended Tools |
|---|---|
| Frontend | React.js, Vue.js, or Laravel Blade |
| Backend | Laravel, Django, or Flask |
| Database | MySQL, PostgreSQL |
| Mobile App | React Native, Flutter |
| Payment Gateway | Stripe, PayPal, Paddle |
| Automation/Provisioning | Terraform, Ansible, Docker, Kubernetes |
| Cloud Hosting | AWS, DigitalOcean, Google Cloud, Linode |
| Approach | Pros | Cons |
|---|---|---|
| Dedicated Instances | - Full data isolation |
Scalability:
Data Security:
Monitoring and Maintenance:
Graceful Downtime Handling:
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.