Overview
Hi everyone 👋🏼
In this article, I'm going to look at seven OSS repository that you should know written in Rust, interesting projects that caught my attention and that I want to share.
Let's start 🤙🏼
1. Deno
Deno is the open-source JavaScript, TypeScript, and WebAssembly runtime for the modern web. Built on web standards with zero-config TypeScript, unmatched security, and a complete built-in toolchain, it is the easiest, most productive way to JavaScript.
It's a most competitor of Node.js, another JavaScript runtime 😌
Deno
Deno
(/ˈdiːnoʊ/, pronounced
dee-no
) is a JavaScript, TypeScript, and WebAssembly runtime with secure
defaults and a great developer experience. It's built on V8
Rust, and Tokio.
Learn more about the Deno runtime in the documentation.
Installation
Install the Deno runtime on your system using one of the commands below. Note that there are a number of ways to install Deno - a comprehensive list of installation options can be found here.
Shell (Mac, Linux):
curl -fsSL https://deno.land/install.sh | sh
PowerShell (Windows):
irm https://deno.land/install.ps1 | iex
Homebrew (Mac):
brew install deno
Chocolatey (Windows):
choco install deno
Build and install from source
Complete instructions for building Deno from source can be found in the manual here.
Your first Deno program
Deno can be used for many different applications, but is most commonly used to build web servers. Create…
2. Espanso
Espanso is Cross-platform Text Expander, program that detects when you type a specific keyword and replaces it with something else.
Espanso is privacy first and cross platform, available for Linux, Windows and macOS 🥳
A cross-platform Text Expander written in Rust
Visit the espanso website.
What is a Text Expander?
A text expander is a program that detects when you type a specific keyword and replaces it with something else This is useful in many ways:
- Save a lot of typing, expanding common sentences.
- Create system-wide code snippets.
- Execute custom scripts
- Use emojis like a pro.
Key Features
- Works on Windows, macOS and Linux
- Works with almost any program
- Works with Emojis 😄
- Works with Images
- Includes a powerful Search Bar 🔎
- Date expansion support
- Custom scripts support
- Shell commands support
- App-specific configurations
- Support Forms
- Expandable with packages
- Built-in package manager for espanso hub
- File based configuration
- Support Regex triggers
- Experimental Wayland support
Get Started
Visit the official documentation.
Support
If you need some help to setup espanso, want to ask a question or simply get involved in the…
3. Hyperswitch
Hyperswitch is an open source payments switch written in Rust to make payments fast, reliable and affordable, and integrates well with the largest payment providers (Stripe, Klarna, PayPal...) and you can deploy it to the AWS Cloud 😯
juspay / hyperswitch
An open source payments switch written in Rust to make payments fast, reliable and affordable
The open-source payments switch
Try a Payment •
For Enterprises •
For Contributors •
Quick Setup •
Local Setup Guide (Hyperswitch App Server) •
Fast Integration for Stripe Users •
API Docs
Supported Features •
Community •
Bugs and feature requests •
Versioning •
FAQs •
Copyright and License
Hyperswitch is a community-led, open payments switch to enable access to the best payments infrastructure for every digital business.
Using Hyperswitch, you can:
- ⬇️ Reduce dependency on a single processor like Stripe or Braintree
- 🧑💻 Reduce Dev effort by 90% to add & maintain integrations
- 🚀 Improve success rates with seamless failover and auto-retries
- 💸 Reduce processing fees with smart routing
- 🎨 Customize payment flows with full visibility and control
- 🌐 Increase business reach with local/alternate payment methods
To quickly experience the ease that Hyperswitch provides while…
4. Starship
Starship is minimal, blazing-fast, and infinitely customizable prompt for any shell. It's fast, intelligent and easy to install, available for Linux, Windows, macOS and more 🥸
starship / starship
☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell!
Website · Installation · Configuration
The minimal, blazing-fast, and infinitely customizable prompt for any shell!
- Fast: it's fast – really really fast! 🚀
- Customizable: configure every aspect of your prompt.
- Universal: works on any shell, on any operating system.
- Intelligent: shows relevant information at a glance.
- Feature rich: support for all your favorite tools.
- Easy: quick to install – start using it in minutes.
🚀 Installation
Prerequisites
- A Nerd Font installed and enabled in your terminal (for example, try the FiraCode Nerd Font).
Step 1. Install Starship
Select your operating system from the list below to view installation instructions:
Android
Install Starship using any of the following package managers:
Repository | Instructions |
---|---|
Termux | pkg install starship |
Install Starship using any of the following package managers:
Distribution
Repository
Instructions
Any
crates.io
cargo install starship --locked
FreeBSD
FreshPorts
pkg install starship
NetBSD
pkgsrc
pkgin install starship
5. Diesel
Diesel is safe, extensible ORM and Query Builder for Rust.
It gets rid of the boilerplate for database interaction and eliminates runtime errors without sacrificing performance. It takes full advantage of Rust's type system to create a low overhead query builder that "feels like Rust" 🤙
A safe, extensible ORM and Query Builder for Rust
API Documentation: latest release – master branch
Diesel gets rid of the boilerplate for database interaction and eliminates runtime errors without sacrificing performance. It takes full advantage of Rust's type system to create a low overhead query builder that "feels like Rust."
Supported databases:
You can configure the database backend in Cargo.toml
:
[dependencies]
diesel = { version = "<version>", features = ["<postgres|mysql|sqlite>"] }
Getting Started
Find our extensive Getting Started tutorial at https://diesel.rs/guides/getting-started Guides on more specific features are coming soon.
Getting help
If you run into problems, Diesel has a very active Gitter room. You can come ask for help at gitter.im/diesel-rs/diesel. For help with longer questions and discussion about the future of Diesel, open a discussion on GitHub Discussions.
Usage
Simple queries
…6. Tokio
Tokio is an event-driven, non-blocking I/O platform for writing asynchronous applications with the Rust programming language.
It gives the flexibility to target a wide range of systems, from large servers with dozens of cores to small embedded devices 👐
tokio-rs / tokio
A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...
Tokio
A runtime for writing reliable, asynchronous, and slim applications with the Rust programming language. It is:
-
Fast: Tokio's zero-cost abstractions give you bare-metal performance.
-
Reliable: Tokio leverages Rust's ownership, type system, and concurrency model to reduce bugs and ensure thread safety.
-
Scalable: Tokio has a minimal footprint, and handles backpressure and cancellation naturally.
Website | Guides | API Docs | Chat
Overview
Tokio is an event-driven, non-blocking I/O platform for writing asynchronous applications with the Rust programming language. At a high level, it provides a few major components:
- A multithreaded, work-stealing based task scheduler.
- A reactor backed by the operating system's event queue (epoll, kqueue IOCP, etc...).
- Asynchronous TCP and UDP sockets.
These components provide the runtime components necessary for building an asynchronous application.
Example
A basic TCP echo server with Tokio.
Make sure you activated the full features of the tokio crate on Cargo.toml:
7. Zola
Zola is a static site generator in a single binary with everything built-in: it gets out of your way so you can focus on your content, be it a blog, a knowledge base, a landing page or a combination of them 🧠
getzola / zola
A fast static site generator in a single binary with everything built-in. https://www.getzola.org
zola (né Gutenberg)
A fast static site generator in a single binary with everything built-in.
To find out more see the Zola Documentation, look in the docs/content folder of this repository or visit the Zola community forum.
This tool and its template engine tera were born from an intense dislike of the (insane) Golang template engine and therefore of Hugo that I was using before for 6+ sites.
List of features
- Single binary
- Syntax highlighting
- Sass compilation
- Assets co-location
- Multilingual site suport (Basic currently)
- Image processing
- Themes
- Shortcodes
- Internal links
- External link checker
- Table of contents automatic generation
- Automatic header anchors
- Aliases
- Pagination
- Custom taxonomies
- Search with no servers or any third parties involved
- Live reload
- Deploy on many platforms easily: Netlify, Vercel, Cloudflare Pages, etc
Conclusion
This list lists seven open source projects that are worth checking out, either to use them or even to contribute🖖
Happy coding!✨
Hi👋🏻
My name is Domenico, software developer passionate of Vue.js framework, I write article about it for share my knowledge and experience.
Don't forget to visit my Linktree to discover my projects 🫰🏻
Linktree: https://linktr.ee/domenicotenace
Follow me on dev.to for other articles 👇🏻
If you like my content or want to support my work on GitHub, you can support me with a very small donation.
I would be grateful 🥹
Top comments (2)
This list is super helpful! Have you considered writing about newer Rust projects in a follow-up post?
Hi :)
I had never thought about it, it could be an interesting idea.
I put on the list, thank you!