Launch your entire dev environment with one command

Progflow is a context-aware workspace manager for Linux & Termux. Create named flows, activate them to open your editor, browser tabs, set env vars, and never lose context again.

What is Progflow?

A lightweight CLI that remembers your project setup so you don't have to.

Project profiles

Define a flow with a working directory, preferred editor, one or more URLs, and environment variables. All stored in simple JSON files.

One‑command activation

progflow on myapp starts your editor inside the project, opens all URLs in your default browser, and sets the env vars you need.

Context notes

When you stop a flow with progflow off myapp, you can save a short note describing your progress. Later, check it with progflow note myapp.

Safe process cleanup

A lock file prevents duplicate activations. All child processes are terminated when you deactivate a flow.

Termux & Linux

Works out of the box on any Linux distribution and Termux for Android. URL opening automatically adapts to your environment.

Configurable & hackable

Edit flow JSON files directly or use the built‑in progflow edit command. Integrate with your dotfiles effortlessly.

📘 CLI Guide

Everything you need to become productive in 5 minutes.

1. Create a new flow

Run the interactive wizard:

progflow new myproject

You'll be asked for:

  • Project directory (e.g., /home/user/code/myapp)
  • Editor command (nvim, code, vim …)
  • One or more URLs to open automatically
  • Optional env vars in KEY=value format

2. Activate a flow

progflow on myproject

This will:

  • Change into the project directory
  • Launch your editor
  • Open all URLs (docs, dashboards, etc.)
  • Export the environment variables you defined

3. Stop and save context

progflow off myproject

A prompt will ask you to write a quick note. This note is stored inside the flow and can be recalled later.

4. View a flow's last note

progflow note myproject

Great for remembering what you were working on after a weekend or long break.

5. List all flows

progflow list

Shows all configured flows with their directories and active status.

6. Edit a flow manually

progflow edit myproject

Opens the flow's JSON file in your $EDITOR so you can tweak any setting.

7. Delete a flow

progflow delete myproject

Removes the flow after a confirmation prompt.

Architecture Overview

How Progflow wires your tools together.

You User progflow CLI (Rust) ~/.config/flow/ JSON flow files Editor nvim / code / vim Browser URLs opened Environment KEY=value Process guard lockfile + PID

The user interacts with progflow, which reads flow configs from ~/.config/flow/ and orchestrates the editor, browser, and environment, while enforcing safe process handling.

Use cases

Full‑stack development

One flow for backend (go, swagger docs), another for frontend (React, Storybook). Switch instantly.

On‑call rotation

Pre‑configure a flow that opens Grafana, Prometheus, and your runbook – ready in seconds when an alert fires.

Learning & tutorial sessions

Set up a flow for a Rust book: open the book website, your notes, and a playground automatically.

Environment isolation

Per‑flow env vars (DEBUG=1, LOG_LEVEL=trace) keep your shell clean.

Team onboarding

Share a flow config template so new hires can clone, install, and run progflow on – no documentation guessing.

Termux power‑user

Turn your Android tablet into a development station with flows that launch vim, docs, and Termux:URL.

Installation

Requires Rust toolchain 1.70+ on Linux or Termux.

curl -sSL https://raw.githubusercontent.com/Rehanasharmin/Progflow/master/install.sh | bash

Or build from source:

git clone https://github.com/Rehanasharmin/Progflow.git
cd Progflow
cargo build --release
cp target/release/progflow ~/.local/bin/

After installation, start with progflow new myfirst and follow the interactive prompts.

Frequently Asked Questions

Is it safe to pipe the install script to bash?
You can always download the script first and inspect it. Run wget https://raw.githubusercontent.com/Rehanasharmin/Progflow/master/install.sh and review before executing.
Does Progflow support Windows?
Currently no. It's designed for Linux and Termux. Contributions for Windows support are welcome.
How do I share flows with my team?
Flow JSON files are human‑readable. You can version them in a dotfiles repo or share a template that others can import.