Decoupling Quickstart & CLI #1751
Replies: 1 comment 2 replies
-
Hi @Lewiscowles1986 thank you for this great feedback and write-up, this must have taken some time to put together! First off I think you're right that we should have multiple methods in our docs for setting up quickly and easily, there are definitely a few people that prefer just managing it themselves as its easier/faster if you understand Docker/Docker compose. I'll raise this with the team and get a "manual" section added to the docs which has the links the latest versions of the 3 required files. This should probably actually just link to our docs guide on setup via docker/docker compose that you found, this should be referenced very early in our getting started guide as an option. A big point i'd initially like to make is that we recognise getting started/trying Budibase right now is quite painful, for those who don't have experience with these sorts of technologies it can be quite a pain and we want to reduce this, so that more people can find out how awesome Budibase is! We're in the process of creating a sandbox/cloud environment where people can trial a basic version of Budibase, then if they like it they can proceed with self hosting (exporting their app from the sandbox and continuing on with its development/deployment). For actual deployments we do feel the CLI is a very useful utility to have as right now it can run updates/upgrades and in the future it will be used for migrations and other infrastructure related tasks. Also, if you have some examples of the click-and-go OVA solutions you've seen in other similar projects, I would be interested to see this, as if we can offer other easier solutions that would be great. As for minimum node versions, I believe I added a check to the codebase to warn the user if they have not got a new enough version installed, however I believe the minimum version required by it is quite an old version (can't quite remember off the top of my head!) We included the built binary as an option for people that don't have Node/NPM installed as this is just bundled together with pkg although maybe the docs don't make it clear that is the purpose of the downloadable binary. Minimum specs of the cluster is something that we need to address, I will bring this up with the rest of the team and we'll look at getting something about this in the docs, although right now the requirements are pretty minimal, you can run the whole thing out of pretty small digital ocean droplets with no issues. Just to add, I'm the engineer that put together the CLI originally, we plan to do a lot more with the CLI in the future - we want it to be a useful utility for developers to be able to extend and use Budibase. For example data source integrations, backend automations, various other parts of the builder, will be extensible and we want developers to be able to use environments they already know/use, then they can use the Budibase CLI to build/integrate painlessly. This is all future work but just wanted to give some context for the CLI's existence as right now it is somewhat light on functionality compared to what we hope it will do. |
Beta Was this translation helpful? Give feedback.
-
Have you thought about keeping quickstart simple and quick, and introducing the CLI as a later option?
A quickstart repo, or download option with the three files people will want might be an idea for the casual interest. What do you think of this? It could even be a downloadable zip.
I was looking to have a play with this, and it seemed confusing that you spoke a lot about docker and docker-compose on the Getting started page, but then immediately and irresumably jumped to npm. https://docs.budibase.com/getting-started
The minimum requirements are docker and docker-compose, then a git repo, tarball or zip might be a very simple way for people to pull, and run a single command. Even better, github gives them a download zip option, so you could be hand-wavy about where those three files come from, link people to a zip, and continue from there.
There were no clear links I could find to https://github.com/Budibase/budibase/tree/master/packages/cli/src/hosting, from the quickstart docs page; which it turns out just downloads two files, makes a third (which also has a download option), and then calls docker-compose up.
https://docs.budibase.com/self-hosting/hosting-methods/docker-compose#installing-docker
Retracing steps
I think the script is really quite neat. I recognised some of the tech from other nodejs work I've done, but it was a bit much to git clone a folder which should have three files, and then run a one-liner, to need to also install nodejs & npm. I think others may definitely have found this. After all you wouldn't have caught my attention if someone were not evangelizing your platform on dev.to. Perhaps I am very particular, but 🤷 I think the quickstart could be improved. I very much think splitting "install our nodejs cli package" should be some steps later than "see what we have made".
Even the docker, to be honest is less click-and-go than an OVA, or similar one-click-able thing. It's a low-code solution. I as a coder am already noticing envoy, couchdb, lots of things that if I'm honest are cool, you have a split application and worker. Very impressive. But also, decidedly coder heavy. Your graphic artist is going to struggle to get started with this.
It took seconds to get setup using the three file method. I spent more time writing this and reading your source due to the NodeJS CLI option.
Beta Was this translation helpful? Give feedback.
All reactions