# rush - the RUst SHell 🚧 barely functional wip 🚧 A rich shell with great defaults, similar to fish. Aiming to provide: + syntax highlighting + strong historical suggestion & tab completion experience + vi mode + terminal multiplexer All in a no dependency, pure-rust, tiny binary (one day). Rush also takes a unique stance towards power user configuration: + no startup files are parsed upon startup + power users can configure their shell by pulling rush as a library dependency and configuring their shell in code + plugins for prompts and auto completions can be defined as simple rust functions and distributed through cargo (rather than in a scripting language and distributed ad-hocly) These values aim to provide an improved experience for both types of users: + faster -- default systems programming language rather than a scripting one. + reliable -- loosely coupled tools, configuration files and scripting languages don't have strong guarantees around correctness. Rust and Cargo have strong enforcement of contracts and conventions around evolving code. + portable -- the way you get binaries, plugins and perform configurations varies significantly based on the platform. The rust programming language and cargo's behavior varies significantly less. + rich experience -- if you're writing a plugin in rust, it's trivial to add a library from Cargo's massive collection of community libraries.