{"repo":"rezigned/upmd","free":true,"listed":false,"github":"https://github.com/rezigned/upmd","clone":"git clone https://github.com/rezigned/upmd.git","description":"upmd - Run tasks and workflows from Markdown.","language":"Rust","stars":114,"topics":["cli","markdown","runner","tui","upmd"],"license":"MIT","category":"cli-tools","readme_excerpt":"upmd Run tasks and workflows from Markdown. upmd turns Markdown code blocks into runnable tasks and dependency-aware workflows. Run them interactively in a real terminal, with instructions, commands, and output kept together. What it does - Treats fenced code blocks as named tasks with dependencies. - Runs one task or a workflow from the TUI, lightweight CLI, or CI. - Gives each task a real pseudo-terminal, including prompts, colors, editors, and pagers. - Shows output beside the source and can pass shell environment and working-directory changes to later tasks. Installation Shell installer (macOS and Linux) Homebrew (macOS) Windows and archives: Download a prebuilt archive and checksum from the latest release. Builds are available for macOS, Linux, and Windows on supported x86 64 and ARM64 platforms. From source (requires Rust 1.82 or newer): Quick start [!TIP] With no path, upmd opens up.md or UP.md from the current directory when either is present. Otherwise, it opens the current-directory file picker. Directories are searched recursively, while piped stdin is read as Markdown. A failed task or startup error produces a non-zero exit status. Run upmd --help for all command-line options. Tasks and workflows The workflow in DEMO.md uses name and deps attributes after the language token: bash [name:build] cargo build bash [name:lint, deps:build] cargo clippy bash [name:test, deps:build] cargo test bash [name:verify, deps:\"lint test\"] echo \"verified ✅\" name makes a task address","default_branch":null,"files":null,"tree":[],"storefront":"/r/rezigned","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/rezigned/upmd/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}