If you want to learn how to create a Rust library it is very easy to find Crates and see how other people do things.
However, if your goal is to create applications, or end-user applications that serve other people as well, eople who most likely are not Rust programmers then it is better to look at similar applications.
One of the best ways to learn how to write end-user applications in Rust is looking at such applications. So on this page I'll collect a few and as time permits I'll take a look at them and write articles about them.
Web Applications
- DcaPal is a free, open-source, no-registration online tool, written in Rust, for retail DIY investors: it helps you keep your investment portfolios well-balanced according to your target allocation by suggesting how to split your monthly budget across your assets. All the portfolio optimization math is written in Rust and compiled to WASM via wasm-pack/wasm-bindgen and runs directly in the browser, for maximum privacy. The backend web service is also written in Rust (Axum)
GUI Applications
-
AppFlowy - Flutter via custom ffi bridge, according to the Redditor.
-
Gyroflow - QML via qmetaobject-rs.
-
Makepad - See the Makepad Studio
-
Lapce - Lightning-fast and Powerful Code Editor Floem, a native Rust UI library with fine-grained reactivity.
-
Spacedrive using Tauri to build an optimized, secure, and frontend-independent application for multi-platform deployment.
-
Loopers is a graphical live looper.
-
Perspective written in Yew.
-
FontFinder GTK application for browsing and installing fonts from Google's font archive.
-
ruffle is a Flash Player emulator built in the Rust programming language.
-
Czkawka Multi functional app to find duplicates, empty folders, similar images etc. Both CLI and GUI using GTK 4 or Slint.
-
RustDesk is a full-featured open source remote control alternative for self-hosting and security with minimal configuration. The open source alternative to TeamViewer.
-
KaspaNG desktop p2p node and crypto web wallet. Runs as a native and web app.
Terminal UI applications
-
Showcasing terminal UI apps and a longer list of Awesome applications using Ratatui.
-
Fish is a smart and user-friendly command line shell for Linux, macOS, and the rest of the family. It is almost done rewriting in Rust..
-
Starship Cross-Shell prompt.
Command Line Tools
- mdBook is a command line tool to create books with Markdown.
- Zola one-stop static site engine.
- Cobalt A static-site generator that works for you.
- ripgrep
CLI.rs
There are a number of projects hosted as subdomains of CLI.rs. Right now the only way to see the list is to look in the repository
-
Rust Tools apt repo this is only a README file. I don't know where is the source of the rest of the site.
-
BOS CLI a command line utility that simplifies local component development for NEAR BOS.
-
carl is a calendar for the commandline. It tries to mimic the various cal(1) implementations out there, but also adds enhanced features like colors and ical support.
-
Colmena (Unstable) is a simple, stateless NixOS deployment tool modeled after NixOps and morph.
-
daktilo is a small command-line program that plays typewriter sounds every time you press a key.
-
dt is a highly customizable dotfile manager.
-
Fibora Utilities and CLI for the Fibonacci Sequence.
-
halp A CLI tool to get help with CLI tools.
-
Hatsu is a self-hosted application that brings your static site to the Fediverse.
-
Hyperspeed is a modular Rust FTL + WebRTC live streaming solution.
-
KDash a simple terminal dashboard for Kubernetes.
-
kmon Linux Kernel Manager and Activity Monitor.
-
lychee A fast, async link checker written in Rust.
-
menyoki Screen{shot,cast} and perform ImageOps on the command line.
-
mind A productive mind has an empty stack.
-
moni Asynchronously delete all the apparitions of a directory/file.
-
NEAR CLI is your human-friendly companion that helps to interact with NEAR Protocol from command line.
-
pls is a prettier and powerful ls(1) for the pros.
-
runst A dead simple notification daemon.
-
rustic The rustic ecosystem contains various tools that make creating backups easier for you.
-
Rustyink Blazing fast static site generator written in Rust.
-
Sheldon is a fast, configurable, command-line tool to manage your shell plugins.
-
systeroid A more powerful alternative to sysctl(8) with a terminal user interface.
-
Trippy combines the functionality of traceroute and ping and is designed to assist with the analysis of networking issues.
-
whereiam An Implementation of pwd.
-
jwt-ui - A Terminal UI for decoding/encoding JSON Web Tokens.
Other
-
Brainease is a scripting language that has many similar concepts with brainf-ck, sharing some principal concepts, like memory and instructions.
-
Moonfire NVR is an open-source security camera network video recorder. I personally don't have a lot of experience with hardware projects but I would like to get involved in some.
The Awesome Rust is a huge list of projects, some of them are applications. That would be a good source.
There is also the Awesome Alternatives in Rust.
Several of these were collected from this Reddit thread.