Skip to content

r3bl-org/r3bl-open-core

Repository files navigation

R3BL suite of TUI apps and library focused on developer productivity

We are building a powerful suite of command line apps in Rust, featuring text user interfaces (TUIs) that unlock new levels of productivity within your terminal.

We lean in to the terminal as a place of productivity for software engineers and build interlinked apps that all work with each other to make you more productive.

Folder structure and code organization

This repo is organized as a monorepo. Many subfolders are Rust crates. There's a Cargo.toml file at the top level which provides a workspace that allows us to build all the crates in this repo at the same time.

R3BL product offerings

  • cmdr folder (r3bl-cmdr crate): Suite of TUI apps focused on developer productivity (early access previews 🐣). edi and giti are the first two apps in this suite. We support Linux, macOS and Windows.
    • 🐱 giti folder is an interactive git CLI app designed to give you more confidence and a better experience when working with git version control.
    • 🦜 edi folder is a Markdown editor for the terminal and cloud. It lets you edit Markdown files in your in style (supports emoji, has color gradient headers, and more).

R3BL framework and component offerings

  • tui folder (r3bl_tui crate): TUI library to build modern apps inspired by Elm, with Flexbox, CSS, editor component, emoji support, and more.
  • tuify folder (r3bl_tuify crate): Single and multi-select "mini" TUI components used in giti.
  • terminal_async folder (r3bl_terminal_async crate): Rust crate to create CLI programs that are asynchronous and interactive without blocking the main thread. Your spawned tasks can use it to concurrently write to the display output, pause and resume it. You can also display of colorful animated spinners ⌛🌈 for long running tasks. With it, you can create beautiful, powerful, and interactive REPLs (read execute print loops) with ease.

R3BL (low level) library offerings

Learn more

To learn more about this library, please read how it was built (on developerlife.com):

  1. Build a non-binary tree that is thread safe using Rust
  2. Guide to Rust procedural macros

You can also find all the 🦀 Rust related content on developerlife.com here.

You can also watch 🦀 Rust videos on the developerlife.com YouTube channel here.