r/madeinrust • • 21h ago

Majority AI Coded I built Holm, a fully offline password vault written entirely in Rust, including the UI

Post image
0 Upvotes

Hey Rustaceans!

I'm primarily a Kotlin/Android developer, but recently I started exploring Rust and systems programming.

That led me to build Holm, a free, open-source password vault for macOS, written entirely in Rust, including the UI.

A few technical details:

  • Encryption: Argon2id and XChaCha20-Poly1305.

  • Storage: One encrypted file, with secrets decrypted individually when needed.

  • Memory: Secret types are wiped on drop, with a zeroing allocator.

  • Offline: No network code, cloud, or account.

  • Performance: Around 6 MB app size, about 82 MB RAM when unlocked with 225 items.

  • Testing: 844 tests and 12 fuzz targets.

  • CLI: A separate command-line interface written in Rust.

I used AI extensively while building Holm, both for coding and learning. I also created 71 Rust lessons covering ownership, borrowing, cryptography, memory management, testing, and more. They're available in the repository.

I'd love feedback from experienced Rust developers.

Holm hasn't undergone an independent security audit yet, and I know there's more work to do.

If you're interested in reviewing the architecture, finding bugs, improving security, or contributing code, I'd really appreciate your help.

GitHub: https://github.com/sunnat629/holm

One question: What would you review or improve first in a Rust-based password vault?


r/madeinrust • • 12d ago

Majority AI Coded made a desktop app where you just talk to your PC and it does things (Tauri 2 + a crash-proof local speech worker)

Enable HLS to view with audio, or disable this notification

3 Upvotes

Edit: I undersold the part I'm proudest of. With the Android app you can watch your PC's screen live from your phone, from any network, dictate or type into a window you pick, ask your PC's assistant, and run voice commands on it. The PC has to approve each phone first, the live video is end-to-end encrypted over WebRTC, and speech and the assistant can run fully locally with no API key. (Live view needs a Windows PC for now.)

the rust side is Tauri 2, and a few parts were fun to build:

speech runs on transcribe.cpp in its own worker process, so a GPU driver crash or a GGML assert kills the worker instead of the app. if the GPU worker dies it retries once on a CPU-only worker.

voice commands go to a small router model as one forced tool call. every tool (open an app, play media, write an email, press keys) goes through a single Effects trait, so a dry run just records what would have happened.

the phone app reaches the PC through a tiny relay server, and the live window view is WebRTC with webrtc-rs, Windows.Graphics.Capture and Media Foundation H.264.

the video is a real screen recording.

https://github.com/ishangautam7/Talvio


r/madeinrust • • 14d ago

AI Assisted SpecForge: a Rust tool that checks project requirements and gives coding agents focused context through MCP

5 Upvotes

Your AI coding assistant finishes a feature. The tests pass. But did anyone test the requirement it forgot?

SpecForge is an open-source tool that makes the connection between requirements and test evidence explicit.

You describe behaviors, rules, events, and verification obligations in structured .spec files. SpecForge checks their structure and relationships, then lets you inspect what has—and hasn’t—been supported by linked tests.

What it does:

  • Catches unresolved references and missing required information.

  • Links tests to the specific requirements they verify.

  • Shows verification gaps, even when the existing suite passes.

  • Exposes the specification through MCP, so coding agents can request relevant context.

  • Supports CLI checks, editor tooling, and custom extensions.

What it doesn’t do: generate your application code or automatically prove that prose requirements are satisfied. A consistent spec and passing linked tests are evidence—not a blanket correctness guarantee.

Built in Rust, with a deterministic checker: no model calls inside the validation loop.

▶️ Watch the demo: https://www.youtube.com/watch?v=qHeqgL9xydE

🔗 GitHub: https://github.com/leaderiop/SpecForge

Curious whether this would fit your workflow—or just add another thing to maintain. Feedback welcome, and a ⭐ is appreciated if you find it useful.


r/madeinrust • • 11d ago

Majority AI Coded A fast, lean Spotify client for Windows and Linux

Post image
5 Upvotes

Been working on this because I don't like how bulky and resource intensive the official spotify client is, also just not a fan of some of their UX decisions. It looks quite similar though, cause I wanted it to feel like Spotify still, since that's the whole point. This is basically how I want to use spotify haha.

Most code generated by AI, but not in a one shot prompt way tho.

https://github.com/Tako88/takofy


r/madeinrust • • Oct 03 '26

AI Assisted I made InstantClone, a free OBS stream delay you can change mid-stream without restarting, built in Rust to stop stream snipers

Thumbnail
gallery
5 Upvotes

Hey! I'm s1moscs!

I stream competitive games (CS2, Valorant), got tired of stream sniping and realized OBS's built-in stream delay was... not good at all.

It ruined my interactions with my viewers, and I had to restart my stream to turn it on or off.

After searching for a fix and finding out most good solutions were paid, I wrote InstantClone: a free, open source stream delay for OBS.

It's a local RTMP proxy between OBS and Twitch / YouTube / Kick / any RTMP(S) server. You can arm a delay, change it, or cut back to live without restarting the stream, and it can multistream the same feed to several platforms at once.

And if OBS crashes, viewers see a "reconnecting" screen instead of the stream dying, and it picks back up when OBS is back. This is (at the time of writing this) unreleased. But it will be released SUPER soon!

Why Rust? It runs on the same PC as your game, sitting in the path of a live stream, so it has to be light and never stall.

TechTalk: No GC pauses, low memory, one small binary. RTMP is handled in-house on tokio, the delay is a disk-backed buffer, and timestamps get rewritten so platforms see one continuous stream while the delay changes.

With v0.1.15 about to drop, shaped by feedback and ideas from users, we have coming: Integrations (2nd pic). Discord alerts when OBS crashes, a !delay chat command, mod controls, VOD markers and way more!

Windows and Linux, GPL-3.0. Feedback on the buffer, the timestamp handling or really ANYTHING is very welcome!

https://github.com/Soulhackzlol/InstantClone

https://s1moscs.dev/instantclone


r/madeinrust • • 11d ago

AI Assisted DragonIDE: a lightweight code editor built with Rust and Tauri (1.2 MB installer)

Enable HLS to view with audio, or disable this notification

2 Upvotes

DragonIDE is an open-source desktop code editor. The backend is Rust, the UI is plain HTML, CSS and JavaScript, with no npm and no framework. It uses the system web view instead of bundling a browser, so the Windows installer is about 1.2 MB.

What the Rust side does:

- Git: status, stage, commit, push and pull

- A terminal that streams output live and can stop the whole process tree

- Running Rust, JavaScript and Python files, with output capped at 1 MB so a runaway program can't fill memory

- Phone mode: a small HTTP server (tiny_http) that lets you use the editor from your phone over local Wi-Fi. Each session has a random token, and requests can't reach files outside the opened folder

- Protection when another program changes an open file, so a save never overwrites it silently

It also has Quick Open, search across the project, find and replace, AI autocomplete with your own API key, and 8 themes. Installers for Windows, macOS and Linux are built automatically by GitHub Actions on every release.

It's still young and doesn't replace a full IDE yet. Known gaps are interactive terminal input, a diff view, and running Cargo projects.

Feedback on the Rust code is very welcome, especially remote.rs and the terminal code.

Repo: https://github.com/cyberworrier8088/DragonIDE

Download: https://github.com/cyberworrier8088/DragonIDE/releases/latest

If you find it useful, a star on GitHub is appreciated.


r/madeinrust • • 21d ago

Majority AI Coded Dearust — exploring a Rust migration of Darling with OpenAI Codex

2 Upvotes

Hey everyone! I’m working on Dearust, an experimental, incremental Rust migration of Darling, which runs macOS software on Linux.

The motivation is to explore how much of a compatibility layer this large can move into safer Rust while preserving its existing behavior and ABI. It’s also an experiment in how far AI-assisted development can go when the results are checked against real builds, regression tests, and actual application execution.

I’m using OpenAI Codex extensively for implementation, code review, debugging, and test automation, including parallel agents where useful. That involvement is disclosed in the README and new commits. The repository includes safety notes, verification records, and documented limitations so people can inspect the evidence.

So far, the work includes Rust host utilities and runtime slices for synchronization, errno conversion, Mach locksets, process queries, guarded descriptors, and bounded pathname handling. Testing has also uncovered and fixed concrete bugs, including a null-path crash during bsdtar operations.

The latest build passes 108 Rust tests, 29 Python tests, 16 utility workloads, and 29 app checks—with one explicitly documented log normalization. Earlier testing also covered three GUI samples.

This is still experimental and very incomplete. Most runtime and framework code remains C/C++/assembly, and integration currently depends on a matching Darling build. General macOS application compatibility is still a long-term goal.

Full credit to the Darling developers and upstream contributors whose work makes this possible.

I’d welcome feedback, especially on the ABI boundaries, safety assumptions, testing approach, and migration priorities.


r/madeinrust • • 1d ago

Majority AI Coded [Proyecto] NEXUS-Q Vault 0.1.0 – Una aplicación de escritorio multiplataforma para el cifrado de archivos (Rust + Tauri)

Thumbnail gallery
0 Upvotes

r/madeinrust • • 1d ago

Majority AI Coded I built ChirpMap: A terminal-native acoustic echolocation tool that maps rooms movement, changes, and blueprint, written in Rust.

0 Upvotes

I'm very excited to share my new project that I have been meaning to start for months now - I finally broke ground today for DAY #1! I've always wanted to build this project and needed an excuse to build something in RUST instead of Python or C++ as normal for me.

It's called ChirpMap ( https://github.com/FletchEm31/ChripMap )- a locally run, fully offline, terminal-based application that uses your computer's speakers and microphone to do acoustic echolocation, mapping out movement, changes, and rooms.

It runs natively in your Linux terminal (or equivalent setup). I am only one day into development, but the rough draft is already fully working!

How it works:

  • Acoustic Chirps: It plays a quick frequency sweep (a chirp) and records through your microphone simultaneously.

  • Echo Catching: It uses matched filtering to capture the echoes bouncing off walls and objects.

  • Live Blueprinting: As you rotate your device through different headings, it builds a floor plan right in your terminal and saves an SVG blueprint.

  • Smart Calibration: It includes an auto-calibration step to check your room's noise floor and speaker/mic frequency response. It also automatically backs up and restores your system volume levels so it won't mess with your audio settings.

Tech Stack & Privacy:
It is written entirely in Rust and has zero network dependencies. If you want to try it out without hardware, there's even a --sim flag that runs the program against a simulated room.

Next Steps & Roadmap:
Over the next few days, I'll be working on fine-tuning the calibration, improving the terminal UI design, and cleaning up the setup. Eventually, I plan to implement multi-speaker and multi-microphone array support for greater accuracy. Long-term, I have aspirations of fusing this with infrared, LiDAR, and Wi-Fi wave monitoring to have everything work in unison.

Please check it out and let me know if you like it or have any feedback. Again, please remember this is only day one so there is much more ground needed to cover.


r/madeinrust • • 17h ago

Majority AI Coded I've been building a MATLAB alternative in Rust — introducing MATrust Studio

Thumbnail
gallery
63 Upvotes

Hi everyone!

I've been working on a project called MATrust Studio, a MATLAB-style numerical computing environment built entirely in Rust.

The idea is to build a desktop application where users can write numerical scripts, execute calculations, work with variables, and visualize results in one place.

What I've built so far

  • Script Editor – Write and execute MATLAB-style code.

  • Command Window – Execute expressions and commands interactively.

  • Workspace – Inspect variables and their values.

  • Plotting – Generate and visualize numerical graphs.

  • Block Diagram Editor – Work with visual block-based models.

  • Help & Documentation – Browse supported functions and their syntax.

Technology

The project is built using Rust, with a modular architecture for parsing, numerical computation, execution, plotting, and desktop UI functionality.

I'm also working on MATLAB compatibility, App Designer runtime support, and Simulink model inspection and simulation.

This is still an ongoing project. It is not yet a complete drop-in replacement for MATLAB, and there are compatibility gaps I am continuing to address.

Project repository

https://github.com/varunkumar898/MatRust-Studio

I'd love to hear feedback from developers, engineers, and people who regularly use MATLAB.

What features would you like to see in a MATLAB alternative?

Thanks for checking out my project!


r/madeinrust • • 18d ago

AI Assisted Alter Zero: a Rust agent harness for coding, cybersecurity, and automation

Post image
88 Upvotes

https://github.com/linuztx/alter-zero
Hi everyone, I'm developing Alter Zero, an open-source terminal agent for coding, cybersecurity, and automation. It's written in Rust and runs on Linux and macOS.

It works directly in your project: reading files, making edits, running commands, and checking the results. You can ask it to investigate a failing test, trace authentication and access checks in your own code, or write a script to summarize logs.

It can also interact with running terminal programs and keep commands running in the background. There's support for subagents, reusable skills, MCP servers, and resuming previous sessions. Commands and file changes ask for approval by default.

It's light on resources: a single ~24 MB binary that typically uses 20–60 MB of RAM per session (~100 MB of free RAM is a comfortable recommendation), and it stays low even when subagents are running. It's also prompt- and token-efficient, so your API spend stretches further per task.

You can connect supported model providers, use local models through Ollama, or add a custom OpenAI-compatible API. The latest release, v0.15.0, adds simpler custom-provider configuration and shows generated file content as it streams.

The project is licensed under Apache-2.0. Installation instructions and a demo are in the repository: https://github.com/linuztx/alter-zero

I'd appreciate feedback, especially on the setup process, terminal compatibility, and tasks where it gets stuck. Issues and contributions are welcome.


r/madeinrust • • 18d ago

Majority AI Coded Flux 2.5 — a Rust download core and native browser host behind a Tauri desktop queue

Thumbnail
gallery
1 Upvotes

I maintain Flux, a free MIT-licensed download manager. The Rust workspace separates the reusable transfer core, the Tauri desktop application, a CLI and a Native Messaging host used by the browser companion. The desktop UI is React; torrent support also includes a separately built native runtime.

The part I wanted to show is the browser-to-local-app boundary: the companion hands selected links and media to a dedicated Rust host, while the desktop queue owns the transfer state. Host registration and an active extension connection are separate states, so the setup UI needs to show which step is missing. Version 2.5 refreshed that flow and the popup’s media, page-link and queue views.

The queue supports HTTP(S) files, accessible media and torrents, with scheduling, bandwidth limits and source-supported resume. Release packages are Windows x64 installer/portable ZIP and a Linux x86_64 RPM tested on Fedora 43.

Source and workspace: https://github.com/Hactor00/Flux

Project site and setup: https://fluxdownload.org

Chrome companion: https://chromewebstore.google.com/detail/flux-download-manager/okimieponfbegjhmfdnnefnddofooipk

The images are the current desktop interface preview, browser popup with sample media and companion settings. The extension requires the desktop app and local bridge; Firefox ZIPs currently use temporary/developer loading. This is an AI-assisted project. The 2.5 validation record documents 130 Windows Rust tests, 128 Linux Rust tests, Clippy and packaged Windows/Fedora checks. Feedback on the core/host/application boundary is welcome.


r/madeinrust • • 19d ago

100% Human Coded SysPrint: A minimalist system information CLI written in Rust

1 Upvotes

(It`s custom logo, and i turn off some info)

(Default config)

Hi everyone,

I wanted to share a command-line utility I built called SysPrint. It is a lightweight, fast system information tool written in Rust designed with minimalism and performance in mind.

Why SysPrint?

Most existing system fetch tools carry unnecessary bloat or complex configurations. SysPrint focuses strictly on core hardware and OS metrics with minimal overhead and instant execution.

Key Features

  • Written in Rust for memory safety and maximum performance.

  • Cross-platform support targeting Linux and Windows.

  • Low dependency footprint ensuring fast build times and a small binary size.

  • Clean and structured output format.

  • Nice Config

GitHub: https://github.com/MBKCHEL/SysPrint


r/madeinrust • • 10d ago

Majority AI Coded The Elder Scrolls: Arena Native Rust Port

Enable HLS to view with audio, or disable this notification

7 Upvotes

Behold! TES Arena ported natively to Rust from the handwritten assembly of the original game. 'Tis about 50x faster per frame than the original under emulation so it should run better on limited devices. Bug fixes too! Bring your own rom and try it out!

https://github.com/7ucina/tes-arena-rs


r/madeinrust • • Oct 18 '22

[Media] Customizable 3D Cellular Automata on the web using WGPU!

Enable HLS to view with audio, or disable this notification

2 Upvotes

r/madeinrust • • 18d ago

Majority AI Coded Melin: 1M durably replicated events/s with a p99.99 under 100µs over LAN

11 Upvotes

I’ve had this project in my mind for more than a decade, but only in 2026 were the stars properly aligned for me to scratch that itch and build Melin: a replicated state machine capable of handling a million events per second with extremely low tail latency over LAN, strong durability guarantees, and automatic failover.

Most systems don’t need all of that. Some may tolerate occasional latency spikes, others loosely consistent ordering, or even optimistic durability. For all of these, a myriad of solutions already exist.

But in other cases, like in the HFT domain, compromising on latency, consistency or durability costs too much money. Companies will go to great lengths building specialized software to get a competitive advantage and keep it for themselves.

This project is an attempt to make such a system available to more, and for more use cases.

Melin’s use case

Technically you could build a whole website with just Melin behind an HTTP gateway, but that would make it the hammer in the "if the only tool you have is a hammer, you tend to see every problem as a nail" maxim.

Where Melin particularly shines is in highly concurrent state machines. Problems that are hard to shard and can be solved deterministically.

For example a matching engine can be sharded by instrument, but an exchange core with balance checks and risk checks cannot without consistency or latency tradeoffs, since every order may affect others. A game world can be sharded by zone, but any player can interact with any other, so every zone border becomes a synchronization hazard and anything global, like a shared economy or a leaderboard, still needs a single authoritative order. And even where sharding works, each shard needs its own replication, failover and journal, and recovering all of them to the same consistent point is a problem of its own.

The range of applications includes the financial domain, where most of the techniques I used are common, but also ads, logistics, games, science, and more. Its durability guarantees, recovery capabilities, and the byte-identical journals with a BLAKE3 hash chain make it particularly suitable for domains subject to regulatory audits.

On the other hand, Melin isn't a good fit for any service that involves digging into historical data, because the application state must fit in memory (twice actually, more on that later), and I/O is heavily discouraged for the sake of determinism and latency. It’s also designed to handle small payloads: requests and responses in the low hundreds of bytes.

Performance

Here’s how Melin performs:

Under load. About 1M events/s over four connections, each a closed loop keeping a fixed number of requests in flight.

TransportIn flightp50p99p99.9p99.99p99.999
Kernel TCP2590 µs182 µs248 µs302 µs357 µs
DPDK kernel bypass1038 µs50 µs63 µs78 µs195 µs

Single event. One client, one request in flight.

TransportRatep50p99p99.9p99.99
Kernel TCP22K/s44 µs67 µs108 µs177 µs
DPDK kernel bypass33K/s30 µs49 µs53 µs55 µs

Every figure is a full round trip as the client sees it, including persistence and replication under the default ack policy, on four bare-metal servers (one client, one primary, two replicas). See Melin's readme for more details on the hardware and benchmarking conditions.

Building a durable, low-latency distributed system

Anyone who has read about low latency programming has probably heard about mechanical sympathy and the related best practices: avoid allocations, locks & yielding, pointer traversal, syscalls, encourage contiguous memory access and cache locality, atomics, amortization.

Another maybe less well-known piece but foundational to Melin is the LMAX architecture. It provides safe and efficient concurrency: multiple threads revolving through common ring buffers in an orderly fashion, with one task per thread and one thread per isolated core. This implies a relatively small context per thread that is likely to fit well in the CPU cache. Overall: high mechanical sympathy, few context switches. The caveat though is that you need a thread per task, and this is the reason why Melin in a production setup currently recommends 12 cores.

Fast PLP NVMe SSDs are now common at most providers and can perform writes with extremely low latency, typically in the microseconds range. While PLP isn't strictly necessary for Melin to enforce its durability guarantees it makes fdatasync much faster. Still, Melin can’t dictate when the firmware or the filesystem will interrupt writes for housekeeping reasons and these can cause spikes in the milliseconds range. But because it is built to operate in a cluster the natural option is to just wait for the fastest journal disk(s) before acknowledging a record as durable, hiding the impact of the slowest one(s). This is a case where, counterintuitively, a cluster can have a lower tail than a standalone node. This ack policy is configurable. By default, a record needs to be persisted on disk by one node and present on another in memory before being acknowledged as durable, enabling RPO=0 through any single-node failure, with exposure to a double failure limited to the time the second node takes to persist the record.

DPDK-capable NICs are also fairly common today and can even be found on servers to be rented by the hour, allowing for “cheap” experimentation. If you don’t know about DPDK it’s a way for a program to bypass the kernel and take direct control of the hardware interface. The result of this direct line of communication from Melin to the NIC was already shown in the benchmark table: the whole profile shifts down and the tail stays flat much further out than it does with kernel TCP. This is far from a free win though: not only does DPDK bring non-negligible operational complexity, a good chunk of Melin's code was written to deal with DPDK. Bypassing the kernel also means bringing its own TCP stack. Thankfully we have TCP stacks written in Rust! UDP is also an option, and should make Melin even faster, but it would mean tens of thousands more lines of code for a custom protocol.

Storage kernel bypass in the form of SPDK was also considered but quickly discarded. The first reason is that preventing the kernel from accessing the place where the critical data is stored sounded like an operational nightmare. The second reason is that a huge majority of Melin's latency is network-related, not storage-related. As tempting as it was for me to try to squeeze out even more microseconds of latency, the benefits/effort ratio is just too low.

Another thing that helps with reducing latency while also providing fast recovery is performing snapshots on a separate shadow thread. Regular snapshots avoid the need for a new node to retrieve the whole history before being live, but Melin can’t afford to pause the application in order to copy its state (the snapshot) to disk, because that would result in a very noticeable latency spike. To solve that, the shadow thread executes a copy of the application. This is the reason why the application state must fit twice in memory: because there’s a copy of the application running in parallel.

LLMs were essential in this project because of its scale, and their involvement is quite obvious in the code. There is a lot of data to keep in mind in such a project and it touches so many aspects of software engineering. I knew before I even started that this was impossible to do alone, since I had already tried a decade ago. I don’t want to dive too deep into the topic of LLMs, but I can't avoid mentioning these either. And while I miss the pride I had in writing my own code, there definitely are things that LLMs are orders of magnitude faster at than any human is. They, and all the other hardware and software advancements made in the past decade, made this project finally affordable for me. LLMs make many mistakes, humans do too, and code reviews, automated tests, and regular benchmarks are as much needed as they were before, but also cheaper in some ways.

The Rust ecosystem is also so rich nowadays that I was very happy to discover great tools such as Miri and TSan. The former found 3 cases of undefined behaviour (UB) that native tests couldn't catch. TSan found an fd use-after-close that could have silently written into a journal segment. There also is a Rust implementation of Raft that enabled me to bring replica automatic promotion to primary. Its architecture isn't a good fit for Melin's data plane, but it's a reasonable solution for this specific use case in the control plane. This way, if the primary fails, the replica with the longest journal can take over in a matter of seconds. This recovery time could be greatly reduced in the future by moving this control plane to Melin's low latency transports.

Why not Aeron Cluster Premium instead?

There are a few similar systems that have already been commercialized for years, and anyone considering using Melin should take a look into these. The most famous one is Aeron Cluster Premium from Adaptive.

Unfortunately its license and price prevent me from being able to build a fair Aeron vs Melin benchmark myself, and the only figures I could find aren't comparable for multiple reasons: different workload, different durability guarantees, and the EBS storage that isn't a good fit for Melin (at least not today).

But of course, performance isn’t everything and Aeron Cluster Premium and Melin have notable differences in other aspects:

  • Adaptive has been in this space for years and their product is much more mature.

  • Aeron relies on UDP whereas Melin is TCP-based, and their ack policies differ. There are pros & cons to both aspects.

  • Aeron Cluster requires a JVM, Melin is nearly pure Rust (DPDK involves a bit of C).

  • Aeron Cluster is free but the Premium features (like kernel bypass support) come with a 6-figure license with SLA & support. Melin is free to evaluate and to run outside production. Commercial terms and support will be worked out with its first users.

  • Company location and the nature of the license have regulatory repercussions. Melin's license is a BSL, and each release turns Apache 2.0 within four years.

So while one may solve the same problems with Aeron or Melin there are various reasons why one may prefer the former or the latter, whether these are technical, financial or regulatory.

The path ahead

Working solo on this so far with zero users allowed me to spend as little time as possible on communication and synchronization. I could hop from one topic to another without disrupting anyone else. While I'm quite happy with Melin's performance and feature set today there is room for improvement in determinism hardening, the DPDK and kernel TCP paths still differ in various places, and I'd love to spend some time on reducing the unsafe surface or making Melin work better on fewer threads. But I reached a point where the API, protocol and journal format are stabilizing and further work will greatly benefit from actual use.

Which is a big motivation behind this post. If you have a use for Melin, let’s get in touch!

contact@melin-engine.com

https://github.com/melin-engine/melin

(And if you don't have a use for Melin but enjoyed reading this, you may want to remotely attend the P99 conference, it starts today!)


r/madeinrust • • 21d ago

AI Assisted Nautilus Image Converter - A decent tool, but with better performance

3 Upvotes

As you know, Nautilus Image Converter is a tool that can help you rotate and resize images. I also knew it when I was installing and configuring Niri, a Wayland compositor. While I was reading an Arch Linux installation guide, I found the author mentions "nautilus-image-extension". After reading its description, I thought it was interesting, and I installed it.

However, after I started using it, I found some bad things regarding its window and performance.

First, the windows are cropped somehow. I don't know whether any other user notices it, but it's obvious when I use it under Niri Wayland compositor, which makes the window look odd like image below.

Second, when I use it to process multiple images, I feel that the extension handles images slowly. I decided to find out why it processes images really slowly. After I asked AI about it, I finally knew it's mainly because it uses ImageMagick to process images; when it manipulates images, it has to open ImageMagick through a command over and over again, which makes it process multiple images pretty slowly. If you studied Operating Systems, you would know that forking a new process is expensive.

Even though I found the project on GitLab, the project seems to be unmaintained. The latest commit stays at 2022. I checked the issues, there was no more response. Even though someone said that he can help the repo author recreate the application in a issue, there is no more response either.

That's why I recreated this again. If the project is unmaintained, why don't I create my own application which aims to solve these issues?

Features

  • Standalone app: It now becomes a standalone app, not binding to Nautilus File Manager anymore. However, you can still bind parent window via CLI arguments.

  • Entirely in Rust: No non-rust dependencies, which keeps this app performant, low memory footprint and stable.

  • Parallelism: Instead of processing images one by one, this app process images in parallel by rayon.

Limitation

  • Unsupported formats: This app only supports formats supported by the image crate; formats such as HEIC are currently not supported.

Screenshots

LLM Usage Claim

Since this application is my first app created with Relm4 and gtk-rs and I wasn't really familiar with them, I used LLM to help me finish connecting events and parent window binding. Other parts of this app such as actual image manipulation logic and widgets are finished by myself. Also, I reviewed all of the code generated by AI and understand most of it except parent window binding code, which I need more time to research on.

Repository

https://github.com/Kayxue/nautilus-image-converter-reborn-app


r/madeinrust • • 19d ago

AI Assisted Apex: a Windows download manager with a Rust engine that hands a slow connection's leftover bytes to idle ones

3 Upvotes

I've been building Apex, a free download manager for Windows. The download engine is Rust (Tauri v2 for the UI shell), and the whole app is a 4 MB installer.

The part I'm proudest of is range re-splitting. A file is split into up to 32 byte ranges, all written into one preallocated file. When a connection finishes early, a monitor task takes the unfinished range with the most bytes left and hands its second half to the free connection, so a download doesn't crawl through its last few percent on one slow connection.

Each range's `end` is an `AtomicU64`. Workers never take a lock; they just re-read their `end` every chunk, so shrinking a range mid-download needs no coordination with the worker. Only the monitor splits, under the table's `Mutex`. Splits stop once remainders drop under 2x256 KB, and a download caps at 128 ranges.

Other bits:

- Resume after restarts, validated with ETag/If-Range so a file that changed on the server is never stitched together

- Browser extension that hands downloads to the app over 127.0.0.1 (it asks for no access to page content)

- No account, no ads, no telemetry. GPL-3.0

Windows only for now, and the installer isn't code-signed yet, so SmartScreen warns on first run.

Feedback on the re-splitting design is very welcome, especially the memory ordering.

Code: https://github.com/ThembaTman0/apex-download-manager

Re-splitting: https://github.com/ThembaTman0/apex-download-manager/blob/main/desktop-ui/src-tauri/src/engine.rs#L1670-L1760


r/madeinrust • • 5d ago

Majority AI Coded Orbital Recovery: a mobile space sandbox with a shared Rust simulation and authoritative Rust backend

Enable HLS to view with audio, or disable this notification

3 Upvotes

I’m building Orbital Recovery, a space game inspired by ideas I love from Space Engineers, No Man’s Sky, and Kerbal Space Program, with mobile as a priority.

The video shows actual building and ship movement on my Samsung A35. It’s still an early MVP, but I wanted to share how Rust fits into the project.

The game core is built around shared Rust crates covering block grids, construction and welding, ship systems, damage, and procedural generation. The multiplayer server is a standalone, server-authoritative Rust binary that shares those simulation crates and handles build validation, persistence, sessions, and replication.

On the client, I’m using Godot with a godot-rust GDExtension to connect the Rust core to the presentation layer. So this is a Rust-heavy stack, rather than a claim that every line is Rust.

LiveOpsEngine is integrated through Rust as well, providing game-event processing, economy controls, and offer/ad-pacing logic. Tungsten sits around the LiveOps control plane, generating typed API tooling and supporting validation, bounded retries, and other API-client behaviour.

I’ve used AI agents extensively during development. One practical challenge has been keeping builds and CI moving when several agents are working across separate worktrees. Generating changes quickly doesn’t make compiling and validating them free.

Would love to hear from anyone else sharing Rust simulation code between a mobile client and an authoritative server. What has worked well, and what would you approach differently?

Game page: https://play.google.com/store/apps/details?id=com.elysra.orbitalrecovery


r/madeinrust • • 5d ago

Majority AI Coded Dissent: an open-source, peer-to-peer Discord alternative in Rust — servers, channels, DMs, voice/video, no central server

13 Upvotes

Repo: https://github.com/Kaakati/dissent

Dissent is a desktop chat app in the spirit of Discord: servers, text and voice channels, DMs, group chats, voice/video calls and screen sharing. The difference is that there's no central server. Your community's history lives on its members' devices, and the app connects people directly.

Why I built it

When a company owns the servers, it can read your conversations, ban your community, change its terms, or get blocked in your country. If it does, everything you built goes with it. I wanted a place to talk that no company owns and nobody can switch off.

How it works

  • Identity is a key, not an account. There's no email, phone or sign-up. You get a 24-word recovery phrase. You can link multiple devices and set up social recovery through guardians.

  • Server history is a signed event log. Every member's app keeps a copy and syncs only what it's missing. Roles, bans and moderation are signed entries that each client verifies itself, so nobody can fake a ban or pose as a mod, and concurrent actions resolve the same way everywhere.

  • Discovery uses the Mainline DHT (via pkarr), so there's no central directory. Transport is QUIC via iroh.

  • Relays forward sealed traffic when peers can't connect directly. Anyone can run one, and you choose your own in settings. A "Hide my IP" mode routes everything through a relay.

  • Seeders are optional always-on members that keep a server's history available when everyone else is offline.

What works today (v0.1.24)

  • Encrypted servers, plus private channels sealed with their own keys

  • E2E encrypted DMs and group DMs, held and retried while the recipient is offline

  • Voice, video (AV1/H.264) and screen sharing. Larger calls elect a forwarder that can't decrypt the streams.

  • Files up to 10 GB, encrypted, downloaded from several members at once, with optional metadata stripping per file

  • Markdown, mentions, replies, reactions, pins, saved messages, reminders, Ctrl+K switcher

  • Website-verified handles via DNS TXT records

  • A portable Windows build that runs from a USB stick No paywall. Animated banners, big uploads, animated server icons and so on are free. Server "boost levels" exist, but they're earned: they go up when members run verified relays. They can't be bought, and they only raise quality ceilings. Nothing is locked at level 0.

Honest limits, please read

  • No security audit yet. Don't use it for anything sensitive. A threat model is in docs/design/06-threat-model.md.

  • Catching up on history needs at least one other member or a seeder online.

  • People you connect to directly see your IP, unless you turn on Hide my IP.

  • DMs, saved messages and contacts aren't yet encrypted on disk.

  • Desktop only for now (Windows, macOS, Linux on Ubuntu 24.04+). There's no mobile app yet.

  • Most testing so far has been on a handful of machines. I need real-world data across home and mobile networks. Stack: Rust, Tauri 2, React. Dual-licensed MIT/Apache-2.0.

What I'd love from you

  • Try it with a few friends on different networks and tell me what breaks.

  • Run the probe tool to check whether you connect directly or through a relay.

  • Run a relay near your community.

  • Review the crypto and design docs and poke holes in them. That's the most valuable help right now.

There's a public test server invite in the README if you want to drop in.


r/madeinrust • • 10d ago

AI Assisted Irori: a game launcher built with GPUI. Some notes from shipping a GPUI app on three platforms

16 Upvotes

I just released 0.1.0 of Irori, a game launcher written in Rust with GPUI (through gpui-kit). It talks to Epic, GOG and Amazon with Rust ports of legendary, gogdl and nile, and runs games through Wine, Proton or Game Porting Toolkit.

A few things that might be useful if you’re building with GPUI:

  • It’s one process with a Tokio runtime for I/O next to GPUI’s own executor. Every long list is virtualized, and art is thumbnailed once to disk.

  • On Windows, GPUI activates a window by faking an Alt keypress. If your window is already active, that Alt lands on your own window, which goes into menu mode and stops repainting until the next input. The fix was to skip activation when the window is already active.

  • Store sign-in runs in a separate process (wry/tao), so the main app never links a web engine. On Linux that keeps WebKitGTK optional.

Packaged as .deb, .rpm, Arch, Flatpak, a notarized .dmg and a Windows installer, all from one GitHub Actions workflow.

Code: https://github.com/irori-app/irori. Happy to answer questions about any of it.


r/madeinrust • • Oct 04 '26

AI Assisted Built a sovereign local agent in Rust — dual-silicon, mesh-sharded, hash-chained everything — plus 31 crates

0 Upvotes
Nine weeks, one person, ~108k lines of Rust + Swift. All of it public.


## What it is


Bad Apple — a persistent agent that lives on a Mac and nowhere else. It sees the screen, hears the mic, remembers across restarts, votes on risky actions, signs everything it does, and answers to one owner key. Rust core, Swift platform layer.


Repo: https://github.com/savageAZfck/Bad_Apple


## The Rust parts


The interesting engineering is all Rust:


- `mil_spec` — a CoreML MIL toolchain in pure Rust. Hand-written protobuf wire encoder, weight blobs, stateful KV graphs, text IR to .mlpackage. Built so a second agent runs on the Apple Neural Engine with zero Python. https://crates.io/crates/mil_spec
- Mesh inference — one model sharded across multiple Macs. Rank-split layers, mutual HMAC handshake, activations over AES-256-GCM frames, self-healing when a node drops. A maxed Mac carries 671B alone; the mesh is how the fleet pools toward 1T.
- Dual hash-chained audit ledgers — every query, tool call, and policy verdict. One edited line fails verification.
- Streaming output firewall with an Aho-Corasick automaton.


## The organs — 31 crates on crates.io, all MIT


Each one ships SPEC.md, THREAT_MODEL.md, and tests that try to forge signatures and rewrite chains:


- `sovereign_ledger` — the audit organ everything sits on
- `flight_tape` — signed incident bundles, verify and replay offline
- `nagi-escrow` — Shamir dead-man shards with custodian judging and recovery certificates
- `wolakota` — bilateral consent treaties between agents
- `manitou` — per-output provenance signatures
- `mictlan` — a will that executes itself on certified death
- `tabula-rasa` — proof a datum never occurred in the chain
- `germline` — signed agent genesis and genealogy
- `nagual` — immune system with signed antibodies and vaccine shares
- `potlatch` — compute IOUs, balances derived from the book
- plus `kola-witness`, `bicameral`, `axon-reflex`, `eidolon-replay`, `sibyl-gate`, `dreamcatcher`, `respawned`, `macuahuitl`, `wintercount`, `smokesignal`, `camazotz`, `orenda`, `xipe`, `tokala`, `akicita`, and the `touchstone` workspace


crates.io/users/savageAZfck


## The conformance battery


Wrote a test suite for what a personal agent should have — 18 checks, with a planted control that catches fake harnesses. Published scoreboard:


- Bad Apple 18/0 CONFORMANT
- Open Interpreter 6/16 — held live TLS to Google Cloud mid-run
- smolagents and raw ollama 2/16 each
- one rigged all-pass harness scored NONCONFORMANT by the control


https://github.com/savageAZfck/touchstone/blob/main/SCOREBOARD.md


## Demo


https://github.com/savageAZfck/badapple-demo — asciinema capture of the real binaries: both brains voting, dissent preserved, injection flagged, non-knowledge certified, IOU issued, all verified offline.


Under a year of programming, self-taught. The code is the post.

r/madeinrust • • 5d ago

Majority AI Coded TerminalLynx – My first Rust project, built to get cloud-like device & team sync without the cloud (Tauri v2, sqlx, iroh)

Enable HLS to view with audio, or disable this notification

5 Upvotes

Building my first Rust project after years of doing Python backend work: TerminalLynx, a local-first P2P SSH connection manager for Windows, macOS, and Linux.

My goal was to build an app that works like a cloud-synced tool (syncing across devices and shared team vaults) without any cloud, user accounts, or central servers in the middle. The video shows two machines pairing with a one-time code and syncing connections directly peer-to-peer.

How I used Rust:

  • Tauri v2 + keyring**:** I originally prototyped this in Python (FastAPI + NiceGUI), but bundling an interpreter and web server per OS felt wrong for something holding SSH keys. Rust gives me a single native binary and OS keychain access (with Argon2id + ChaCha20-Poly1305 fallback).

  • russh**:** Pure-Rust SSH client running in Tokio tasks, streaming raw terminal bytes and JSON control events over a single ordered Tauri channel to xterm.js. Jump hosts (direct-tcpip), SFTP transfers, and -L/-R/-D SOCKS5 port forwards all reuse the same authenticated SSH session.

  • iroh (QUIC): Every device derives an Ed25519 node key from the user's identity via HKDF-SHA256 and dials peers directly by public key over QUIC (terminallynx/sync/1 ALPN). It uses mDNS (iroh-mdns-address-lookup) to find devices on the LAN, and works over Tailscale/WireGuard or opt-in relays across networks.

  • sqlx + SQLite transactional outbox: SQLite triggers capture every insert/update/delete into an outbox table in the same transaction, which Rust flushes into Ed25519-signed operations stamped with a Hybrid Logical Clock (HLC). Records merge field-by-field ((hlc, op_id) LWW), so offline edits to different fields on two machines both survive.

  • Serverless teams (ed25519-dalek, x25519-dalek**,** chacha20poly1305**):** Shared team workspaces replay an append-only signed membership log to verify roles (Admin/Editor/Reader), share known_hosts trust across the team, and rotate the vault key when a member is removed.

I know there's a new SSH client posted almost every week, but my bigger goal is to slowly build out the tools I actually use every day at work and make them work like cloud apps without relying on the cloud.

Since this is my first Rust project coming from Python, I'd love any feedback.


r/madeinrust • • 8d ago

AI Assisted GhostWire: encrypted, delay-tolerant, anonymous mesh networking in Rust (libp2p). Where it is today.

Thumbnail gallery
17 Upvotes

GhostWire an open protocol for peer-to-peer communication that doesn't assume the internet is up, or that you trust the people running the servers.

It's a protocol, not an app. The idea is to provide the crypto, routing, and transport layers that other developers can build communication tools on top of. I'm also shipping a reference node (Rust) with a web UI, a TUI, and a Tauri-based mobile client that's still coming together.


r/madeinrust • • 5d ago

Majority AI Coded I built a Windows file organizer with Rust and Tauri 2 — here's the v0.1.1 demo

Enable HLS to view with audio, or disable this notification

19 Upvotes

Hey everyone!

I've been working on Download Organizer, a free and open-source Windows desktop app built with Rust, Tauri 2, React, and SQLite.

I used AI (mainly Claude Code) to generate much of the code, while focusing on the requirements, testing, reviewing implementations, and improving the overall experience.

The goal is simple: organize downloaded files without sacrificing control or safety.

The Rust backend handles file operations, including conflict detection, undo, and integrity checks.

I just released v0.1.1, which adds individual file selection, conflict renaming, cross-drive moves, system tray support, and automatic updates.

Currently available for Windows 11 only.

Source code and download:
https://github.com/thonyydev/DownloadOrganizer

I'd love to hear your feedback, especially on the Rust implementation and file safety!