How do I work on multiple projects simultaneously without losing my mind

TMUX with functions, api and database windows setup
  1. The way to create sessions and windows was using its command line program called tmux . For example, to create a new window, you had to run tmux new-window -c /home/mojo/jojo -n database -t project:1 , to split a window into panes, you had to run tmux split-window -c /home/mojo/jojo... . You get the idea. It was pretty verbose and imperative.
  2. I had to remember all those commands every time I restart my laptop or kill the Tmux server.
  3. When your project is relatively complex, you had to run 30/40 of these commands and hope you didn’t mess up. Imagine doing this for 4 to 5 projects. It quickly gets unmanageable.
mx.sh
  1. A new session named mojo. This could be name of the project you are working on.
  2. Two windows named w1 and w2. In real world, this could be API, database, frontend, etc.
  3. Window ‘w1’ with two panes whose current working directory is set to /home/robus and each pane execute echo command. As you can imagine, your command could source venv/bin/activate , yarn start , kubectl config set-context --current --namespace=admin , etc.
  4. Window ‘w2’ with three panes.
Screenshot of tmux session created using sample configuration
> mx up
> mx down --session mojo
  1. Neovim editor for Lamda functions repository.
  2. Terminal where I run Serverless commands.
  3. Neovim editor with python’s flask source code.
  4. Virtual environment activated terminal session.
  5. Postman instance.
  6. Beekeeper instance as GUI SQL client.
  7. VPN connection.
  8. SSH into Bastion host.
  9. Running ‘alias’ command inside in bastion host.
  10. Access to auth0 dashboard, Jira and Aws console.
  11. blah blah …

--

--

--

https://github.com/RobusGauli

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Apache Druid vs Apache Pinot

Building Serverless .NET Data APIs with Docker on the Google Cloud Platform

Amazon Web Services(AWS) Big Data Solution

Act smart by using country codes in your conversation!

Linux Reader For Mac

Hotel Booking Engine API — ChannelRUSH

What You Need to Know About Low-Code Development Platforms

How to Configure Multiple SSH Keys with multiple Github Account

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Robus Gauli

Robus Gauli

https://github.com/RobusGauli

More from Medium

Clean Code — Robert C. Martin

My journey to become Microsoft Azure Solution Architect Expert

Get Microsoft Azure Fundamentals AZ-900 Certification free of cost

MuleSoft Certified Developer Level-2 RoadMap & Resources

MuleSoft Certified Developer Level-2 Logo Badge RoadMap & Resources