Reproducing your preferred panel arrangement inside your terminal can be time-consuming. Not only that – it's repetitive work, the archenemy of every programmer.
While developing owe.zone I found it bothersome to start working on it because I had to:
- Start the MongoDB instance
- Start gulp to watch & compile
- Start the API itself
- Start the Next.js front-end
- Leave two panels empty to run commands in – all in the right directory
I was using Hyper, which is known to be extensible to the core – so I why not build a plugin which does all the work for me.
The task turned out harder than expected. The main hurdle was the algorithm, which converts the config file into a queue of commands so Hyper can execute them and yield the correct layout.
Then I discovered
I got quite comfortable with using Docker and docker-compose. It made me realize that most of the things I listed above are solved by using it. Since then I haven't touched hyperlayout a lot – that's the sad reason why I longer maintain it.