progflow v0.1.4

One command to launch your entire development environment. Now with session analytics, smart switching, and shell aliases. Runs on Linux, macOS, and Termux.

progflow@terminal — ~/dev
$ progflow stats
 Total sessions  : 37
 Total time      : 12h 42m
 Avg session     : 20m 36s
 Most used flow  : website (18 sessions)

$ progflow aliases
 alias flow-website='progflow on website'
 alias flow-api='progflow on api-server'
 alias flow-notes='progflow on research-notes'

$ progflow on website --switch
 ❯ Switched from api-server to website

What is Progflow?

A terminal-native workspace manager that remembers your project setup so you don't have to.

Project profiles

Define flows with directories, editors, URLs, and environment variables — stored as simple JSON.

One‑command launch

progflow on myapp starts your editor, opens browser tabs, and exports env vars.

Smart switching

progflow on website --switch intelligently transitions from your current flow — no manual stop needed.

Session analytics

progflow stats shows total dev time, average session, and most‑used flows.

Shell aliases

Generate POSIX shortcuts with progflow aliases. Add eval "$(progflow aliases)" to your rc file.

Centralized logs

progflow logs captures background process output — inspect anytime.

Process safety

Double‑activation prevention, PID liveness checks, and forced cleanup with SIGTERM/SIGKILL.

Context notes

Save a note when stopping a flow. Recall it later with progflow note.

CLI Guide — v0.1.4

Everything you need, from creation to analytics.

1. Create a flow (interactive or one‑liner)

$ progflow new myapp --dir ~/code/app --editor "nvim ." --urls "https://docs.example.com" --quiet

You can also use the interactive wizard without flags.

2. Activate a flow (and switch)

$ progflow on myapp
$ progflow on myapp --switch   # if another flow is active

3. Stop and save a note

$ progflow off myapp
$ progflow off myapp --note "fixed login bug"

4. Check session analytics

$ progflow stats

5. Generate shell aliases

$ progflow aliases
$ eval "$(progflow aliases)"   # add to .bashrc / .zshrc

6. View logs & more

$ progflow logs
$ progflow list --json
$ progflow status --json
$ progflow edit myapp --set-urls "https://new.example.com"

Architecture

How Progflow orchestrates your tools.

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

progflow reads configs, launches editor & browser, and guards processes.

Use cases

Full‑stack dev

Separate flows for backend, frontend, databases — switch instantly.

On‑call rotation

Open Grafana, Prometheus, and runbooks with one command.

Learning

Start a flow that opens course pages, notes, and a REPL.

Environment isolation

Per‑flow env vars keep your shell clean.

Team onboarding

Share flow config templates for instant setup.

Termux

Use the same workflows on Android with auto‑adapted URL opening.

Installation

Requires Rust 1.70+ on Linux, macOS, 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/

FAQ

Is the install script safe?
Download and inspect it first: wget https://raw.githubusercontent.com/Rehanasharmin/Progflow/master/install.sh
Windows support?
Currently no. Linux, macOS, and Termux are supported.
How do I update?
Run progflow update — it checks the remote commit hash and rebuilds only if needed.
What's new in v0.1.4?
Session analytics (stats), smart switching, shell aliases, centralized logs, and process safety improvements. See the changelog.