emusoi

mia/ˈmi.a/numberSwahili

  1. 1.A hundred.
  2. 2.A way to work on 100 things at once.
Scroll down to work on mia things at once

Work on 100 things at once.

Every piece of work gets its own worktree, tmux session and name, and its own container at https://<name>.mia when it needs one. Build and test them side by side, here or on any machine you can ssh to. Everything else is a plugin.

go install github.com/emusoi/mia-core/cmd/mia@latest

Get startedWhy mia

The words mia uses

worktree

noun

A checkout of your repository in a folder of its own, with a name and a tmux session that keeps running when you leave.

mia new due-dates      # monduli
mia shell monduli
Worktrees

name

noun

A worktree's own word, the name of a place: monduli, kijenge. Yours first, then mia's. It never changes, and it becomes the hostname.

names = ["zanzibar", "pemba"]   # ~/.config/mia/config.toml
Names

stack

noun

Several branches sharing one worktree, each built on the one below, each its own pull request.

mia new schema --stack
mia new api --stack
mia stack pr
Stacks

environment

noun

A container where a worktree's code runs, opened at its own address, here or on any machine you can ssh to.

mia env up             # https://monduli.mia:5173
mia env host build
Environments

plugin

noun

Any program named mia-<name> that adds verbs, rows, keys and panels. Everything mia does not do itself.

mia plugin enable agent
mia agent run monduli
Plugins

    ↑↓ choose ⏎ open esc close