• Stars
    star
    1,144
  • Rank 40,758 (Top 0.9 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created over 2 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

DevOps Notebooks Built with Markdown

Runme

Runme runs Markdown ci Join us on Discord

Discover and run code snippets directly from your markdown files, e.g. runbooks, docs, or READMEs (defaults to local README.md).

Runme is a tool that makes runbooks actually runnable, making it easier to follow step-by-step instructions. Users can execute instructions, check intermediate results, and ensure the desired outputs are achieved. Authors can create predefined golden paths and share them with others. Runme combines the guardrails of a pipeline with the flexibility of scripting, where users can check intermediary results before moving on.

Runme achieves this by literally running markdown (ubiquitous for docs inside repos). More specifically, Runme runs your commands inside your fenced code blocks (shell, bash, zsh). It's 100% compatible with your programming language's task definitions (Makefile, Gradle, Grunt, NPM scripts, Pipfile or Deno tasks, etc.). Runme persists your runbooks in markdown, which your docs are likely already using.

Installation

The easiest way on MacOS is to use Homebrew:

$ brew update

Install runme:

$ brew install runme

or via NPM:

$ npm install -g runme

Alternatively, check out Runme's releases and select a binary for your operating system.

If you have Go developer tools installed, you can install it with go install:

$ go install github.com/stateful/runme@latest

Commands

The Runme CLI contains several commands that allow you to discover and run workflows within your project.

Run Workflows

Given the following README.md file:

# My Project

## Install

First update Brew dependencies:

```sh { name=update-brew }
brew update
```

...

You can run this code cell by just calling

$ runme run update-brew

Read more about how you can configure code cells in the Runme documentation.

List

Explore which workflows are available in your project.

$ runme list

Print

Instead of running the code of a code cell, print just outputs the code that would have been executed.

$ runme print hello-world

Help

Find help and information to parameters and configurations.

$ runme help

Examples

You can find an exhaustive list of examples in the official Runme documentation with examples demonstrating various use cases of Runme.

Feedback

Let us know what you think via GitHub issues or submit a PR. Join the conversation on Discord. We're looking forward to hear from you.

Community

The Runme community is growing, join us!

Contributing

See CONTRIBUTING.md for more information or just click on:

Run with Runme

LICENCE

Apache License, Version 2.0

More Repositories

1

vscode-runme

Run your README.md ▢️ as an interactive notebook
TypeScript
107
star
2

vscode-marquee

πŸ’‘ The missing VS Code homescreen that helps you to stay organized with minimal context switches
TypeScript
72
star
3

tangle

JavaScript state synchronization and event handling for various of different sandbox environments, e.g. worker threads, web workers, iframes, Visual Studio Code Webviews etc.
TypeScript
38
star
4

vscode-awesome-ux

Showcase of how to employ best practices to provide a high-fidelity user experience inside of VS Code extensions.
TypeScript
26
star
5

runme.dev

Project website for Runme VS Code Extension
TypeScript
25
star
6

vscode-server-action

A GitHub Action that allows to debug GitHub workflows using VS Code.
TypeScript
25
star
7

awesome-vscode-extension-utils

🎨 A curated list of delightful VSCode utilities to build awesome VSCode extensions and resources.
10
star
8

vscode-issue-explorer

VS Code extension to create and explore GitHub issues within VS Code
TypeScript
8
star
9

chatgpt-demo

Demo for NodeCongress 2023
JavaScript
6
star
10

blog-examples

Code examples from the Stateful Blog
JavaScript
5
star
11

runmejs

A JavaScript module to use Runme in Node.js, Deno or browser environments.
JavaScript
4
star
12

rollup-plugin-eta

Ξ· (Eta) loader plugin for rollup.js
TypeScript
3
star
13

devcontainer-features

A devcontainer feature that embeds Runme into you devcontainers
Shell
1
star
14

.github

Default community health files for Stateful projects.
1
star
15

web-extension-starter-kit

A starter template to build cross browser web extensions.
TypeScript
1
star
16

vscode-telemetry

A helper package for VS Code developers to send telemetry events from extension host and any webview.
TypeScript
1
star
17

backstage-plugins

TypeScript
1
star