Ok_Bread_6005•This week
Day 1 of my BIP for my AdonisJS Boilerplate (turbosaas) [Built in public]
Hello everyone, here is day 1 (not really, I started a bit earlier) of my project: A boilerplate using AdonisJS, Inertia
What technologies are used/present?
AdonisJS
Inertia
Stripe
OpenAI
TailwindCSS
Vite (React)
Why?
Firstly, I want to save time when launching my projects, and I think you do too, so I've included as many relevant features as possible.
I'm tired of seeing attitudes like 'develop your SaaS in 1 hour and produce terrible code!' The purpose of this codebase is to provide the highest quality code possible and to maintain that standard throughout the development process. You might spend an extra 20 minutes doing things right, but you'll save 2 hours on refactoring.
And no, you won't have to pay for updates. (WTF by the way?)
Why these technologies?
I've seen a lot of NextJS for boilerplates, and I've also used NextJS before, but I quickly abandoned it.
It quickly becomes a mess
You lose track of what is what, and start doing anything
Every update breaks your application
Whereas with AdonisJS, life is beautiful. There are plenty of community packages already available, and everything you need is here.
What am I offering?
Authentication: Social authentication, OTP, Magic Links, and credentials, along with complete account management features like password recovery.
Payment & Mailing Integration: Seamless integration from start to finish, with multiple options to choose from.
Detailed Documentation: Thorough explanations of every aspect, covering even the smallest, potentially confusing details in the code.
Maintainable & Scalable Code: Organized by features, allowing you to easily drag and drop features to extend functionality.
Developer Tools: Handy commands for generating new features and automatically adding necessary imports; a complete config to enable/disable a feature in less than 10 seconds...
Pre-made Pages: Ready-to-use pages such as an admin dashboard for tasks like automatically updating products on Stripe.
Extensive Component Library: A variety of components to streamline development.
I've designed this boilerplate to be as developer-friendly and robust as possible, aiming to support maintainability and scalability from the get-go.
Summary of today and previous days
Day 2
Stripe is a nightmare to set up if you've never done it before, it quickly becomes tedious. But I've finally finished setting everything up: one-time payments, subscriptions, and subscription updates. It was complicated.
Today
I finally implemented the 'forgot password' option, and I've completed all the authentication by adding magic links (working with OTP).
I also set up automatic deployment with GitHub Actions, and everything works well. The build runs with the action to ensure everything goes smoothly, then using SSH, I pull the project, build it, and launch it.
Tomorrow: What I want to do tomorrow
Tomorrow, I want to create the blog, because yes, I want to include a blog as well, and especially complete it as soon as possible so it can be available on turbosaas(dot)dev, and write my build in public.
It will probably use markdown.
Thank you for reading this short build in public, you can also check out how it's going on turbosaas(dot)dev.