Principles
Here are the guiding principles from general to specific:
Respect
I will respect our developers/users. They are more than capable to understand the deployment process and what Sidekick does for them. I will not ask our developers to “Think in Sidekick” nor will I celebrate hiding complexity from them.
No Magic
I hate magic. Sidekick is not magic. Will not attempt to be magic. Will not attempt to hide what it does. I hate black boxes; Sidekick is not one.
Wizard over config
Sidekick will alaways prefer a wizard experience over reading config from disk as the first option. Sidekick doesn’t hate config files, but prefers a wizard experience; that’s where we untangle the complexity for our users/devs.
Terminal is love
A GUI is not needed to deploy and manage your apps. The terminal is all you need. A TUI might come later though.
No code on VPS
Your source code doesn’t belong to your server; a docker image of your code does. While other solutions happily pushes your code to build on server and then deploy it from there, Sidekick will build locally always and maintain the most minimal set of files needed on your server.