It's the perfect solution to have Postgres without the need of Docker. With just `npm install`, you can have a Postgres instance on your computer. So, it's extremely easy to onboard a new developer in your team.
And, the good news, PGlite works perfectly with Next.js.
With only one command `npm install`, you can have a full-stack application, which also includes the database (a working Postgres). And, no need to have/install external tools.
You can take a look at: https://github.com/ixartz/SaaS-Boilerplate, it should give you some inspiration to structure your React apps with folder structure, component breakdown.
I didn't get the change to customize the default and built-in components from Clerk. So, it's hard for me to share any experience. But, I know you can do little customization using https://clerk.com/docs/components/customization/overview and play with CSS and Tailwind CSS. Maybe, for complex customization, it's preferable to not use the pre-built components and build it yourself.
Currently, I just feel the default UI from Clerk works good with Shadcn UI, both works great together. Definitively not perfect but do a great to job for a solo developer or for a small team.
And, I mostly using for advanced authentication features like user impersonation, multi-tenancy, roles & permission.
It took me 5 months to build my first SaaS from scratch, which is way too much. For example, I could use this time to focus on marketing.
During my development process, I realized that 80% of the features I implemented were also present in other SaaS products. This is why I created Nextless.js, a SaaS Boilerplate that includes all the necessary features for launching a successful SaaS.
The example you have mentioned only uses Python in the backend. It's based on Django or Flask. Then, in the frontend, it uses JavaScript.
Building a SaaS from scratch required a lot of time. Happy to see a 100% Python SaaS Starter kit, usually it was reserved for JavaScript because of the frontend. In the past, you are forced to use JavaScript for the frontend.
I know it because I'm the author of Nextless.js [1], a full-stack JavaScript starter kit that is totally based on JavasScript, from frontend to backend. Using only one programming language was my competitive advantage compared to the boilerplate based on Ruby, Python or PHP.
I think in the future more and more languages can be used in the frontend like Rust, etc... There are already some frameworks you can use to build frontend in Rust. It's only the beginning.
It's so amazing to see how the tech community inspires and learns from one another. Laravel found inspiration from Rails. Then, seeing Bullet Train was inspired back from the Laravel ecosystem with Laravel Spark.
In the past, I was jealous of the Ruby ecosystem with an extremely large community (the grass is always greener on the other side?). And, thinking the JavaScript ecosystem was left behind, but now I am hopeful that the JavaScript ecosystem has finally caught up.
I can totally confirm Bullet Train is an inspiration for many SaaS Boilerplates. I was personally inspired by Bullet Train to build Nextless.js [1], a Next.js based SaaS Boilerplate, bringing SaaS starter kits in Next.js/React/JavaScript ecosystem.
It works perfectly!