Code Monkey home page Code Monkey logo

awesome-alternatives-in-rust's Introduction

Awesome Alternatives in Rust

github workflow status

A curated list of replacements for existing software written in Rust.

If you want to contribute, please read CONTRIBUTING.md.

I renamed the repository to "Awesome Alternatives in Rust". The original name was "Awesome Rewrite It In Rust". For more details, please refer to this issue.

Table of contents

Applications

Container

  • youki - An experimental container runtime written in Rust

Games

  • Pleco - A Rust-based re-write of the Stockfish Chess Engine

Performance

  • drill - A HTTP load testing application written in Rust

System tools

autojump / z

  • zoxide - A smarter cd command for your terminal.

awk

  • frawk - an efficient awk-like language

bash/PowerShell/fish

  • ion - A modern shell developed for RedoxOS. But is still capable on *nix platforms.
  • nushell - An attractive structured shell

bc

  • cpc - Text calculator with support for units and conversion
  • eva - a calculator REPL, similar to bc(1)

cat

  • bat - A cat(1) clone with wings.
  • tokei - Count your code, quickly.
  • oreboot - oreboot is a fork of coreboot, with C removed, written in Rust.

cp

  • xcp - An extended cp

cut

  • choose - A human-friendly and fast alternative to cut and (sometimes) awk
  • hck - A sharp cut(1) clone

diff

  • delta - A viewer for git and diff output
  • difftastic - A structural diff that understands syntax

dig

  • dog - A command-line DNS client.

du

  • dua - View disk space usage and delete unwanted data, fast.
  • dust - A more intuitive version of du in rust

find

  • fd - A simple, fast and user-friendly alternative to 'find'
  • skim - Fuzzy Finder in rust!
  • coreutils - Cross-platform Rust rewrite of the GNU coreutils

hexdump

  • hexyl - A command-line hex viewer
  • xh - Friendly and fast tool for sending HTTP requests

ls

  • exa - A replacement for 'ls'
  • lsd - An ls with a lot of pretty colors and awesome icons
  • nat - ls alternative with useful info and a splash of color ๐ŸŽจ
  • fnm - ๐Ÿš€ Fast and simple Node.js version manager, built in Rust
  • volta - Volta: JS Toolchains as Code. โšก
  • broot - A better way to navigate directories

ps

  • procs - A modern replacement for ps written in Rust
  • frum - A little bit fast and modern Ruby version manager written in Rust

rename

  • rnr - A command-line tool to batch rename files and directories

rm

  • rip - A safe and ergonomic alternative to rm

sed

  • sad - CLI search and replace | Space Age seD
  • sd - Intuitive find & replace CLI (sed alternative)

strings

  • stringsext - Find multi-byte-encoded strings in binary data

sudo

  • please - sudo like program with regex support written in rust

sysctl

  • systeroid - A more powerful alternative to sysctl with a terminal user interface

time

  • hyperfine - A command-line benchmarking tool
  • navi - An interactive cheatsheet tool for the command-line
  • tealdeer - A very fast implementation of tldr in Rust.

top

  • bottom - Yet another cross-platform graphical process/system monitor.
  • ytop (no longer maintained) - A TUI system monitor written in Rust

uniq

  • huniq - Filter out duplicates on the command line.

xargs

  • rargs - A kind of xargs + awk with pattern-matching support.
  • paru - Feature packed AUR helper

Terminal

  • starship - โ˜„๏ธ๐ŸŒŒ The minimal, blazing-fast, and infinitely customizable prompt for any shell!
  • Alacritty - A cross-platform, OpenGL terminal emulator.
  • Zellij - A terminal workspace with batteries included

Text editors

Vim

  • Amp - A complete text editor for your terminal.

Text processing

grep

  • ripgrep - ripgrep recursively searches directories for a regex pattern while respecting your gitignore

Utilities

  • fastmod - A fast partial replacement for the codemod tool
  • jql - A JSON Query Language CLI tool built with Rust ๐Ÿฆ€
  • gitui - Blazing fast terminal-ui for git written in Rust ๐Ÿฆ€

Web

Reddit

  • Lemmy - ๐Ÿ€ Building a federated alternative to reddit in rust
  • libreddit - Private front-end for Reddit written in Rust

Development tools

Command runners

make

  • just - A command runner and partial replacement for make

Linters

  • deno_lint - Blazing fast linter for JavaScript and TypeScript written in Rust
  • RSLint - A (WIP) Extremely fast JavaScript and TypeScript linter and Rust crate
  • dprint - Pluggable and configurable code formatting platform written in Rust.

Libraries

Email

  • mrml - Blazing fast reimplementation of mjml in Rust (~200x faster)

awesome-alternatives-in-rust's People

Contributors

0xdones avatar ajeetdsouza avatar azzamsa avatar byron avatar casey avatar dlannoye avatar egrieco avatar fcsonline avatar getreu avatar horlogeskynet avatar jdrouet avatar jihchi avatar learnbyexample avatar mo8it avatar nojpg avatar omr-machine avatar onurkader avatar orhun avatar rickykresslein avatar sateeshkumarb avatar spikecodes avatar tako8ki avatar technic avatar tos-kamiya avatar vahidnameni avatar yamafaktory avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awesome-alternatives-in-rust's Issues

leftwm, eww, dmenu-rs

leftwm ist a tiling window manager like Xmonad or i3.

eww is a panel like polybar

dmenu-rs is a drop in replacement for dmenu

I currently set up my laptop with this software

gnu tar

does it make sense to have an alternative to gnu tar written in rust?

fastmod: kind of similar to `sad`

https://github.com/facebookincubator/fastmod

fastmod is a fast partial replacement for codemod. Like codemod, it is a tool to assist you with large-scale codebase refactors, and it supports most of codemod's options. fastmod's major philosophical difference from codemod is that it is focused on improving the use case "I want to use interactive mode to make sure my regex is correct, and then I want to apply the regex everywhere". For this use case, it offers much better performance than codemod. Accordingly, fastmod does not support codemod's --start, --end, or --count options, nor does it support anything like codemod's Python API.

delta as a replacement for diff-highlight and diff-so-fancy

I haven't checked how complete they are, but delta is a Rust-based diff viewer that lists "diff-highlight and diff-so-fancy emulation modes" as one of its features and sad says "Any git compatible colourizer would work. I perfer these two:" before listing delta and diff-so-fancy.

swc

swc - swc is a super-fast compiler written in rust; producing widely-supported javascript from modern standards and typescript.

Sort-of rewrites?

I wrote a utility called just that is a replacement for using make as a command runner. However, itโ€™s not a build system, so itโ€™s not a full replacement for make. I wanted to open a PR adding it, but wasnโ€™t sure it would be a good fit.

Whatโ€™s the policy for sort-of replacements for existing utilities?

dog is unmaintained

It seems the author of the dig replacement dog has vanished. Since there are some open issues, this is not really awesome anymore. If you don't want to remove it, at least comment it.

Pants 2 replacement for Pants 1

Hi! I'm a maintainer on the Pants open source project, a build system that was originally written in Python (Pants 1) then was rewritten from the ground up (Pants 2) using Rust for the core engine. Additional info about how Pants 2 takes advantage of Rust https://blog.pantsbuild.org/fast-incremental-builds-speculation-cancellation/. Though the two projects share name and maintainers, Pants 2 is a wholly new codebase with different design goals. Meanwhile Pants 1 continues to be used and supported in its original incarnation.

Would it be appropriate to open a PR adding Pants to the list? And if so, would creating a new heading, Development Tools > Build Systems be ๐Ÿ‘? Pants is more powerful than a command runner, which is the closest fit among the existing headings.

Alternative to "nohup"

A nohup reimplementation in rust seems like a good idea?
IDK but I think it could displace nohup the added feature of letting you name the output file.

xd as an alternative to hexdump

In addition to hexyl, there's also xd as a Rust alternative to hexdump (named based on the abbreviated hd alias to hexdump).

It hasn't achieved full compatibility yet, but it has the following advantage, without going "hawaiian shirt" colorful and fancy border-y like hexyl:

--table default โ€” a tweaked code page 437, like on an old IBM PC. This encoding provides a unique glyph for each octet, making it reversible, and almost all of those glyphs are visually distinct, which is helpful when visualising patterns in binary data that transcends printable ASCII.

Better categories

The sed & awk sub categories would be better under 'Text processing' then 'System tools'.
Cloc, and the rbenv and nvm version manager alternatives would be better under the 'Development tools' category.
Some non-sysadmin utilities under 'System tools' may be moving to the 'Utilities' category; if being more involved in software development using, would be better under 'Development tools'.

[For all contributors] Do you think I should change the repository name?

Some people in reddit suggest renaming to the repository name. Do you think I should change the repository name? If so, please give me your idea for this repository's name.

I'm wondering whether I should do it.

ref:

Just a heads up that I got a lot random whining from folks about calling ripgrep a "replacement" for grep so long as it wasn't POSIX compatible or otherwise bug-for-bug compatible with grep. In response to that, I added a FAQ item: https://github.com/BurntSushi/ripgrep/blob/master/FAQ.md#posix4ever

And I'm not really a fan of calling this "Awesome Rewrite it in Rust." I didn't set out to "rewrite grep in Rust." Not only was it not my intent, but ripgrep is quite literally not a rewrite of grep in Rust in any sense of the word.

https://www.reddit.com/r/rust/comments/nm96n1/awesome_rewrite_it_in_rust_a_curated_list_of/gzold43?utm_source=share&utm_medium=web2x&context=3

May I suggest a rename to "Alternatives in Rust (AIR)"?

https://www.reddit.com/r/rust/comments/nm96n1/awesome_rewrite_it_in_rust_a_curated_list_of/gzny13l?utm_source=share&utm_medium=web2x&context=3

I think having a list like this is awesome, just change the name might be good.

https://www.reddit.com/r/rust/comments/nm96n1/awesome_rewrite_it_in_rust_a_curated_list_of/gzpvc8q?utm_source=share&utm_medium=web2x&context=3

"Awesome Alternatives" might be better?

https://www.reddit.com/r/rust/comments/nm96n1/awesome_rewrite_it_in_rust_a_curated_list_of/gzoybro?utm_source=share&utm_medium=web2x&context=3

My bikeshed for the rename is "Awesome Rust Rewrites"

https://www.reddit.com/r/rust/comments/nm96n1/awesome_rewrite_it_in_rust_a_curated_list_of/gzoej3v?utm_source=share&utm_medium=web2x&context=3

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.