What’s Next
We need to tie up some loose ends, finish a couple of minor bugs, add some polish aaaand… we are ready to switch over! If nothing goes horribly wrong, the new version should hit railsnew.io before Xmas.
Once that happens, we will concentrate on adding a lot of new RailsBytes (with the current architecture, it’s going to be relatively simple/fast). However, there’s a limit to the number of RailsBytes we can realistically add, for a simple reason: combinatorial explosion! We need to create a new RailsByte for EVERY possible combination of the offered choices. It might not seem a lot, but we did the math and found out that a few dozen RailsBytes would yield hundreds of thousands of combinations! Obviously, that’s not feasible to create/maintain/support!
Thus, we will limit the number of ‘classic’ RailsBytes that can be added - the usual suspects like Stimulus (Reflex), Tailwind, Devise, Redis, etc.
But what about the frameworks/configs/tools that won't make the cut?
To address that, we will create a ‘custom setup’ section. It won’t generate the `rails new` command line in real-time. However, you'll be able to add many more things (potentially including custom content, not just RailsBytes or otherwise pre-configured snippets). These will be stored under your account on railsnew.io (so at that point, a backend/need for user registration will enter the picture). As a nice side effect, you'll be able to load/share these setups.
Another area we are thinking about is deployment. Let’s face it: deploying Rails applications is still a pain in 2020. With this feature, you should be able to
- provision a new Digital Ocean VPS
- set up a couple of things (public IP, ssh keys, `rails secret` and such)
- deploy your brand new app to your VPS - with all the bells and whistles, like domain name && SSL setup a real site needs.
And finally, we’d like to implement CI/CD setup. The ultimate goals of railsnew.io are:
- minimize the need to configure the new app (d’oh)
- eliminate boilerplate as much as possible
- set up remote infrastructure
- create a stable development environment
CI/CD is part of the last point: pushing your code -> running the tests and other checks (Rubocop, brakeman, etc.) -> merging your changes is a huge productivity boost in our experience.
As usual - let us know if you have any feedback - ideas, comments, bug reports, feature requests, etc.
Until next time,
Mia && Trinity
|