Bullet Train – Rails-based SaaS framework
bullettrain.coWow, hi everyone! Was just about to walk over for the first day of RailsConf when a friend let me know we were #1 here! Honored!
I'm the original creator of Bullet Train, although a number of people now work on it. It's been a fun journey to this point!
When I first started building Bullet Train, it was a relatively unique offering. There weren't that many full-featured "SaaS starter kits" out there, although there was some prior art. The biggest inspiration for Bullet Train was what Laravel Spark was at the time. In fact, one of the guys who had got me into Rails in the first place had started building his next product on Laravel so they could take advantage of Spark!
These days there are an abundance of SaaS starter kits available in most ecosystems. I've had the pleasure of meeting and interacting with the authors of a bunch of high-quality starter kits built in different languages and frameworks and some of them have told me they were inspired in part by Bullet Train. I love that.
If you're interested in Rails and SaaS, we're running a conference in Athens, Greece on June 1–2 this year and we'd love to have you! https://railssaas.com
Happy to answer any questions anyone may have!
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.
--- [1]: https://nextlessjs.com
I was privileged enough to attend Andrew's LA RailsSaas conference and it was outstanding.
If you're in the EU running a SaaS or developing with Rails you should at the very least check out his upcoming one in Greece.
I don't want to derail but have to ask, is the theme/template for your site custom? It's beautiful.
Edit: To clarify I mean the marketing site linked here, not the starter template.
Thank you! This was the work of Tamik Soziev, who also created the original theme for Bullet Train itself. I'll make sure to pass on the note!
> I don't want to derail
Too late - that train’s already left the station.
yea @aculver, its really beautiful!
Hi we are exploring BT today
I'm trying to move a company that is now selling simple wordpress websites (and doing actually pretty well, do to their super expertise with design/graphic and marketing) to a 'higher' step with RoR, and BT seems something that may help them a lot approaching Rails.
Can anybody suggests resources, links, advice on how to start this new adventure?
ColdBox is a seventeen year old open source ColdFusion framework originally inspired by Laravel. The parent company is Ortus and they have offices in North America, Central America and Europe.
The "Join the Mailing List" link on the home page is dead now btw.
Thank you for pointing this out! Fixing now!
I haven't used Bullet Train, but I've found their "Teams should be an MVP feature" blog post [1] a really great overview of how to model team structures in relational databases before. Worth a read!
[1]: https://blog.bullettrain.co/teams-should-be-an-mvp-feature/
nice! that's something i stumbled over when re-architecting a 2-sided marketplace (in rails) for one of my startups. the data model they describe is roughly what i ended up with, but it took some iterating to get there. the key understanding was that the relation table in a many-to-many relationship is not just a technical detail but encodes important information about real world systems, especially the human kind. as engineers, we get often get stuck on the entities being the important bits, but more often, the relations are where all the action is.
I'am using another framework, but this post about Teams was pure light to me. Tks
Do you have any recommendations for more resources like this?
I've had a hard time searching for patterns and tips for modeling common data/features for web applications.
I really like Derrick Reimer's blog[0] for these types of posts. You might have to go back in time to find something a little more technical. On second glance, it seems the older articles are no longer available. You can find most of them[1] on the Wayback Machine though.
0: https://www.derrickreimer.com 1: https://web.archive.org/web/20181001000000*/https://www.derr...
I evaluated Bullet Train last year when building an MVP for a client. Ended up using Jump Start Rails instead. Main reasons:
1. The hybrid approach to iOS and Android apps with JSR were better than what BT had to offer
2. There was a lot less to learn about the mental model of how JSR was built via Bullet Train. It was basically pay, pull down, configure, and get going with JSR. BT has things like SuperScaffolding, an abstraction layer on CanCanCan, etc. I didn't want to have to ramp up on those to decide whether they were better than the alternatives.
YMMV of course. JSR is a paid app and IIRC BT was at the time too... but looks like maybe not anymore?
Did you end up using tailwind with jump start rails? Any way around it?
I like the idea of jump start rails but would like to stay away from tailwindcss.
Why?
Note, Bullet Train also uses tailwind.
Yes, this is true that we lean heavily into Tailwind CSS by default. However, when I implemented our "new" component system in 2021, I designed it so that there was a path forward for Bullet Train on vanilla CSS or Bootstrap if anyone wanted to implement it. I don't have any plans to do it myself, but people (including Tamik, the original theme author for Bullet Train) have expressed an interest. I'd love to see it happen. You can get a sense for how this would be possible from our theme docs at https://bullettrain.co/docs/themes.
I’ve only heard good things about tailwind. Did you have a bad experience with it?
That's the nature of how these things go. People that like Tailwind praise it. People that think it's fundamentally bad design avoid it and don't say too much, or are drowned out by the people praising it.
People who just write SCSS don't even think about it.
Tailwind is an abomination. There, I've said it.
Companies like tailwind
Engineers learn to work with it due to that simple fact.
It's OK tbh, and it's easily interoperable between stacks so not really hard to pick up and useful if your project already uses it.
I tried to fight it at first, but I've only seen it being used more and more. Why fight the stream if there's no good reason for it?
> Why fight the stream if there's no good reason for it?
Why jump tool chains when you already have more than enough on your plate to keep up with?
I watched a conference presentation last week from a front-end person who talked about FE design. He pulled up a slide on bootstrap and said "if you use bootstrap, everything will end up looking like twitter. your login page won't be able to be creative, you'll just look like every other login page".
I had to push back at the end of the presentation with some BS support. I don't use it much any more, but the obvious misinformation about bootstrap continues in 2023, and it's bothersome. FWIW, the presenter said "oh yeah, you're right, and it can be used well, but some people just use the defaults".
Separately, my experiences with tailwind have been less than exciting. Perhaps if I spent the $300+ on 'premium tailwind components' I'd be more on board?
> easily interoperable between stacks so not really hard to pick up and useful if your project already uses it.
And if I don't use it? I get a fair amount of pushback from colleagues sometimes for not jumping on the 'newest' things. Spoiler: I don't deploy many projects with docker either. Is that 'fighting' it? Or just using other established/tested/documented tools and proceses to get a job done?
I am the people who just write scss.
For an app I may use bootstrap as it is a framework with bigger blocks.
>> "fundamentally bad design"
They literally wrote the book on good design[1]
No, that's not true; a 2023 book giving advice like "don't use borders" is definitely not in any way a seminal source of "good design".
Besides, I'm not saying I think it's a fundamentally bad design, I'm saying those voices are drowned out by the people on-board with it - for a great example, consider how you just came into the conversation, squished the nuance I was discussing, and gave hyperbolic praise to their book just because you like their tool.
Exactly.
Millions of engineers are now more empowered to make design decisions - and given more convenient tools. The price - ignoring how CSS was designed to work, unreadable mess of classes in the markup, a bootstrap-like cookie cut approach to everything, and yes, the color purple.
The book included some useful rules for people new to interaction design.
These can be applied without the use of tailwindcss.
Use of the framework tailwindcss has nothing to do with the book.
The framework itself goes against the intended use of css. It ignores the power of the cascade and leads to a pile of incomprehensible css repeated over and over again.
It is convenient and unreadable at the same time.
Handy if you don’t want to learn css and use it properly and completely unacceptable if you do.
The book included some useful rules for people new to interaction design.
These can be applied without the use of tailwindcss.
Use of the framework tailwindcss has nothing to do with the book.
The framework itself goes against the intended use of css. It ignores the power of the cascade and leads to a pile of incomprehensible
Have you tried it on a real project? Tailwind is a huge time saver when compared to traditional CSS or SASS.
I have. It's essentially a write-only DSL for CSS that, were you to group it via @apply or similar, you have reinvented CSS classes. In fact I had a huge thread discussion on HN about this:
What I really think you're saying is that Tailwind is a huge time saver when it comes to design, and compared to your past experiences translating designs to CSS it felt like a net win.
A lot of people disagree with Tailwind's design philosophy on both the developer and consumer side of the code (i.e. DX and UI), so it's questionable what "real project" and "time saver" really mean; ironically, I question that your definition of "real project" even included a team with design chops.
I like Tailwind, but I like it precisely as a non-frontend person working on side projects: it lets me iterate quickly without a deep knowledge of CSS (while at the same time providing an introduction to modern CSS).
I can see how that would also be a benefit to a "SAAS starter pack" where you have a small team wearing many hats, probably people with a familiarity with CSS but not experts. The code base in these early stage startups and side projects is going to be small and you want to move quickly. Tailwind is great at that.
However if you have a frontend team of CSS experts to draw upon, the benefits of Tailwind are fewer and the downsides are greater - your CSS people will not enjoy having your classes named things like "px-2 py-1 rounded border bg-blue-800 text-white font-bold hover:bg-blue-500" rather than just "btn btn-primary". They can iterate fast anyway and they will probably leave more maintainable HTML and CSS/SCSS in the long run.
However I'd still be interested if any large teams (with correspondingly large code bases) have made Tailwind work for them.
> ironically, I question that your definition of "real project" even included a team with design chops
“No, you have never worked on a real project!” :)
Both can be real projects, without quotation marks. I’m constantly surprised that there are so many different ways and processes to build a website; and people who think theirs is the best.
Indeed, personally I would never open a conversation with that, but I believe this is someone gussying up their personal hobby project where they learned how to use a CSS framework into a "real project" while they denigrate someone else.
If we're going to discard some projects as real, a pretty easy filter is "were multiple people required to build it". People who need Tailwind to provide their design system like Tailwind, but they are usually working on very small-scale projects they're unlikely to maintain and upgrade like a project with real users, real design, and multiple engineers would. And a pretty easy proxy for the latter type of shop is "do you have people who aren't even front-end engineers doing your design", and that commenter was displaying all those signals to me.
> I question that your definition of "real project" even included a team with design chops.
Do you believe that
The New York Times (2023): https://tailwindcss.com/showcase/nytimes
Shopify (2023): https://tailwindcss.com/showcase/shopify
OpenAI (2023): https://tailwindcss.com/showcase/openai
GitHub (2022): https://tailwindcss.com/showcase/github
The Verge (2022): https://tailwindcss.com/showcase/the-verge
Google (2022): https://tailwindcss.com/showcase/google-io-2022
Microsoft (2022): https://tailwindcss.com/showcase/dotnet
Netflix (2022): https://tailwindcss.com/showcase/netflix
Mashable (2022): https://tailwindcss.com/showcase/mashable
don't have teams with "design chops"?
----
Anecdotally, I can tell you that Tailwind is heavily favored by shiny designery startups. Many of the best designed websites these days are built with Tailwind, and design-oriented engineers are reaching for it first.
Back in 2018 I was arguing against utility classes and vetoing their use in projects I was involved with in favor of thoughtfully architected SCSS. By now in 2023 it's clear Tailwind has earned its place in high-end UI development.
Nice list. Did you actually look at those sites?
Your first example implies "The New York Times" uses Tailwind. Besides that being hilarious, you click the link and immediately see there is a big subheading "Events"
I have never heard of NYT "Events", so I checked out their page:
https://www.nytimes.com/events
> Do you believe that [The New York Times Events doesn't] have teams with "design chops"?
Yes, yes I do.
Not really going to bother with the rest, you're joking if you think these top corps meaningfully rely on this 2-year-old CSS framework. I exactly believe that you're linking me to things thrown together quickly by a resource-strapped team, the "Events" example merely affirmed it
Edit: I sort of bothered
* GitHub Next - splash page
* Shopify - marketing page
* Google IO - marketing page
* Microsoft .NET - marketing page
* Netflix Global Top 10 - marketing page
* New York Times Events - extremely basic
* OpenAI - Attention grabber, but... the homepage didn't even use full width of nor center content in my 1440p display. Not exactly a UI-driven success
* Mashable, The Verge - Pretty bad websites.
This is my point. People use Tailwind to slap together something good looking and simple. They don't use it to build applications because you make your own design system for applications.
> They don't use it to build applications because you make your own design system for applications.
Some examples of SaaS companies that use Tailwind on the application side are PlanetScale, Fly.io, Lemon Squeezy, and Supabase.
I agree. The main uses of Tailwind are people making template-based pages, or putting up informational offerings in front of service-oriented businesses which give people APIs to build their own apps on.
Many believe there is a direct choice between best tool for a type of job, and a best tool for a type of person.
The right path is having tools the team is currently, or will be productive with, and isn't the markedly wrong tool for a type of job.
By real project I just meant something more substantial than a tiny hobby project. Maybe something that takes a few months or more.
How on earth can styling every **damn hyperlink inline over and over again be a time saver?
I don’t think anyone is typing out every link at this point.
Html is split into components or views or partials. Links are inside loops etc.
You save time every time you don’t have to think about coming up with a new class name or how it might affect the hierarchy.
I totally understand it feels weird to begin with but on a major project you never worry that your css tweaks might affect some other obscure part of the site.
You don’t have to if you define it globally.
Then you're just reimplementing CSS classes in Tailwind.
and so most people using tailwind don’t do that and redefine everything every time. Ignoring or ignorant of the elegance and power of css.
At the time, JSP was more cost-effective than Bullet Train, and the early adoption of Tailwind was also significant.
This might be a good place for a Java programmer to say thank you to the Rails community for your relentless mocking of Spring and Enterprise Java back in the days.
Java is wonderful these days, and seriously I think you guys are a one of the major reasons why Java is so great today.
I recall when I started even with Rails pre Rails 2.0, the Spring framework was a horror show. Good luck with XML plumbing and then annotations wiring and then dependency injection container and AbstractBusinessProxyFascadSingletonFactory whereas in contrast, Rails seems light years ahead from controllers to templating to ORM.
Why the downvotes?
May be the enterprise developers don't like convention over configuration[0].
[0] https://en.wikipedia.org/wiki/Convention_over_configuration
Didn't downvote, but the constant mixing up of criticism against XML nonsense (justified) with criticism of annotations (why? Have so many people seen code bases that abuse them?) might be one reason.
Spring is still awful. Play, Javalin, and other frameworks are leagues better. Even Spring boot isn't a great framework which has way too much annotation soup. Worst thing with Spring/Spring Boot is that the framework and ecosystem breaks extremely often with updates.
Agreed. Spring hasn't changed that much. It's still an annotation-fest at core and the method names don't appear to be getting any shorter.
I use Quarkus these days which means the IDE support and ecosystem of Java, the very simple annotation rules from JavaEE, and reload times like PHP.
Yeah Ruby on Rails and its associated projects have had such a giant, positive impact on development at large.
And honestly, with jRuby there’s no reason you can’t just jump in this pool.
I like the Java and Kotlin languages and that I can get world class IDE support for them.
RubyMine does some really great stuff to provide a great IDE for Ruby.
If Java is so great why do I still have to escape regex metacharacters even after the introduction of raw strings? It's insane to have to do this in 2023.
You’re welcome. Hehehe
Haha this comment immediately made me think of you, and here you are.
Hard to believe we're coming up on 20 years soon. Crazyyyy
If you are doing an MVP prototype or the code would be the client's problem once you're done with your consulting, such bulk boilerplate is fine.
I have extensively worked with Python and Ruby in past but my conclusion is that even though they ramp you up in the beginning but as the code base grows, it becomes harder to guess deeper in the codebase to guess what objects you're dealing with. Specifically in case or Ruby/Rails, the IDE's are of not much help as they're guessing/brute forcing the possible suggestions too.
The type hinting in Python is totally optional and I know you can have stricter linting rules and what not but I'd prefer a a little more statistically typed language for which I think go has the minimalism, won't let you over engineer. Other interesting promising candidates are Nim/Crystal.
So I can start my SaaS on such a Rails boilerplate but it'll be more of a liability of keeping up with the upstream codebase and my own but maybe that's my lack of confidence.
> to guess what objects you're dealing with
I don't understand, why are you guessing? Do you mean the parent objects of things you've written? Like ActiveRecord, etc. I would think that mental overhead is the same in any web+CRUD+ORM type of framework.
I guess what your parent poster is saying is that:
without types, all you have is the variable name to guess what it does.
IDEs help but there's only so much they can do.
Yes that's what I meant. All you have is a variable and IDEs can't figure it all if there's no type on it.
Not just that, let's say even if type is known but some of the methods are generated on runtime than IDE has no idea about it.
That’s not unique to Ruby though, I imagine most dynamic languages fall into this bucket.
Exactly, they do including JavaScript.
I love seeing Bullet Train progress. I've never used it, but I'm super eager to use it if I ever get the chance.
There's one more framework being built on top of Rails and I think worth mentioning - RailsUI: https://railsui.com/
Kind of funny that "starting you off with all the features that are the same in every product" is a good description of the original motivation for Rails itself. Which is not criticism, the goalposts have moved quite a bit the past few decades.
I see your point but I think this is at a level of abstraction that Rails never set out to solve.
Rails is arguably “technology batteries included”, whereas this is more like “product batteries included”. There are many Rails sites that wouldn’t use these features, however there aren’t many Rails sites that wouldn’t use ActiveRecord or HTML rendering.
> Rails is arguably “technology batteries included”, whereas this is more like “product batteries included”.
This seems like a great way to put it! At the lower level of abstraction, there's all of the technical stuff, but at the higher level of abstraction, you think more about the product and the business domain concepts.
I don't think so. This boils down to a set of already installed, pre-configured gems in a starter project. That's always how Rails has worked. When I was consulting, I had exactly this for myself before Bullet Train ever existed - a pre-configured rails repo that I just forked when I started something new.
The thing w/ Bullet Train is that so much work is done for you, that if you don't like an opinion or two that they hold, you really should start from scratch, as tearing things out will just take longer. Its the downside of having so much integration and configuration already done.
>The thing w/ Bullet Train is that so much work is done for you, that if you don't like an opinion or two that they hold, you really should start from scratch, as tearing things out will just take longer.
Not disagreeing, but wouldn't this be true of Rails itself? It's an opinionated framework. If you like those opinions, it's a great framework to use. If you don't agree with those opinions, you're probably better off using something else.
Yeah, of course. But there's a difference in things like, "I don't want Tailwind, I want Bootstrap" or React vs Vue; instead of things like I don't like Ruby or I don't like convention over configuration. The former set of things ARE decisions you can make within the framework, while the latter are things you can't. You can have this exact same conversation about most frameworks, it doesn't have to be just about Rails. I also had a Symphony repo set up in a similar way when doing consulting many years ago.
Having said that, some of Rails opinions are becoming more optional lately.
Bullet Train is so great. Even for non-saas apps, the sensible defaults make things so much easier. Things like adding new webhook handlers, api routes, complex models and views are only a command away. It's like rails for rails.
This doesn't really have the types of features I would personally want as someone who has done a lot of rails development in the past.
The types of things I tend to need to set up in any modern app is SSO integration, React integrated on the frontend, etc... These are annoying things I have to integrate every time I build something and are more or less industry standard at this point.
> SSO integration
Devise (which BT uses for authentication) handles SSO quite effectively, with tons of provider support.
Devise does integrate with SSO, but you still have to set everything up yourself for all the main providers which takes a good bit of time with a lot of custom frontend work needed and a bit of extra backend as well. It would be nice to have SSO out of the box without the need for a bunch of manual setup which was kind of the promise of this bullet train thing.
But devise is only single tenant and doesn’t offer a web admin view for managing the integration?
Devise does not impose anything on the number of tenants. I run a Rails app with multi-tenancy and SSO support with Devise. As someone has mentioned, although it does a lot of the work and it keeps well organized, you still need to do the UI for configuring and some backend logic.
Devise doesn't support SSO, but it supports omniauth, which supports SSO, right?
You certainly can write and maintain code to add multi-tenant sso, but since omniauth does not support any configuration storage, you have to add that yourself.
> This doesn't really have the types of features I would personally want as someone who has done a lot of rails development in the past.
This is relative.
> React integrated on the frontend
This is something that I don't want at all. Regarding the SSO, without reading the code, I'm sure you are able to accomplish it using devise (included in their framework)
Building from scratch wastes a ton of time and I'm a big fan of starting with some working parts and customizing from there. I think with what's going on with AI it makes sense to use python more because all the researchers love python and make examples available through python notebooks. Then your tech stack is less split amongst many languages and there is less complexity and you can hire developers for cheaper. Ruby devs are fairly pricey because they all working in silicon valley-esque well-funded startups. There is a Django boilerplate provider that's really good https://www.saaspegasus.com/. The guy behind it, Corey, is very responsive. All in all, it's probably not the worst thing to use Ruby, as long as you use less weakly-typed javascript :P
I work in a Python shop (heavy data analytics). My experience is that the Python web frameworks (Django, Flask) are so much more cumbersome than Rails. There are arguments both for and against streamlining your tech stack. For me, the additional overhead of maintaining multiple stacks is worth it given the effort that goes into web app development
This is what I've been wondering as well -- For a brand new project, why would anyone even consider using Rails if there's just a slight chance of adding ML/AI capability in the future?
Anyone know of anything like this but for javascript frameworks?
I was heavily inspired by Bullet Train to build https://nextlessjs.com using JavaScript ecosystem.
I believe this is what RedwoodJS is all about: https://redwoodjs.com/
(creator here) Miller Start does this - https://usemiller.dev/miller-start
We were very happy using Jumpstart Pro and were able to stay connected to changes as it evolved.
+1 on Jumpstart Pro
It'd be nice if there was a way to try the demo without signing in.
That said, this looks like a good product.
Are there other similar/competing things for Rails, and are there other competing SaaS-in-a-box things for other frameworks?
https://github.com/smirnov-am/awesome-saas-boilerplates collects such frameworks, it lists 4 for Rails.
This is a great list, though it's not that helpful for comparing them with each other. There is also https://www.starter.place/ which includes more information about what features are included in each one.
What's still missing is some kind of aggregated review service or something for these. From the outside it's still very difficult to tell the difference between "well-maintained, production-ready thing that has been used by hundreds of real businesses" and "some rando's app they threw on github / are trying to sell".
There is such a huge difference in quality/maturity for many of these and that is literally all you are paying for. Still a tricky market to navigate.
would be cool if someone evaluated all of them.
I wish Deno’s future and popularity was more known. I’d love to try my next side project in Deno, but I’ll probably stick to React/Next and maybe Rails.
I've made a project using their Fresh framework, it was actually quite a nice dev experience.
What did you build with it?
That looks great—thanks for the link!
rails has the concept of app templates, so you can create this for yourself. here's one step-by-step example: https://citizen428.net/blog/rails-quick-tips-5-create-apps-f...
there are also repositories, like https://railsbytes.com/, where you can peruse similarly pre-composed app templates of varying quality.
Here's a chart framework for Bullet Train https://supercharts.dev
Is this using Hotwire?
They seem to have their own 'reactive' way of doing it called Sprinkles but I don't think they've open sourced it yet https://www.youtube.com/watch?v=7NqjpInVIjc&t=181s
Update on this: We do now include Turbo by default and the "Cable Collections" feature in the linked video has been completely reimplemented by the CableReady team in a feature called "Updatable", which we now use in Bullet Train. You can learn more about it at https://cableready.stimulusreflex.com/guide/updatable.html . Very grateful for the work they did on this and grateful to not have to maintain a proprietary reactivity library going forward!
This looks awesome thanks, and thanks to the CableReady team. Does anyone know how the equivalent would be done as best practice with Turbo?
So this seems like the Rails equivilant of JHipster - which is great because that's saved me weeks of development times 4-5 years ago.
Are there any examples of what has been built using this framework
I would love to see them
We all know what happened to the train at the end of that movie.
Equivalent to this in Django ? With team support etc ?
I've heard of Saas Pegadad [0], not a Django developer so haven't tried it
Is this the competitor to https://avohq.io?
Not at all! You can use Bullet Train and Avo together or you can use them independently. Avo is the recommended admin library to use with Bullet Train.
Oh okey, that's clears it up for me!
How does the team behind this make money?
Keep scrolling down, it's on the page.
Is Ruby on Rails still widely used?
Yeah, it is really hard to find something that can spin up a web app faster. Django is close, but rails is really good at it.
Yes, and there's plenty of hiring around it: https://www.rails.jobs. (disclaimer: I'm behind this)
Companies are regularly complaining it's getting harder to find senior+ Rails developers, which I think is a good problem to have.
genuine question -- as opposed to what when it comes to wanting to launch something quickly from zero
The only one that I could see competing is Django, but IMO it isn't as fast as rails.
Fast in what sense? Dev speed, performance, or something else?
Dev speed.
The most important one at the beginning.
Yes
Devise? No thanks. If auth were handled by Sorcery I’d be much more interested.
Why?
Cool idea. The website is...man...a lot.