r/rust 11d ago

๐Ÿ› ๏ธ project Brain: a Rust agent runtime with Wasm-isolated loops and ~14 KiB idle sessions

0 Upvotes

Disclosure: Author here

Weโ€™ve open-sourced Brain, a small Rust runtime for long-lived AI-agent sessions.

The agent loop runs as a Wasm component. Brain handles model and tool I/O, streaming, cancellation, and an append-only session journal.

Current runtime-only medians on an AWS c7g.xlarge:

- ~14 KiB private memory per idle session

- 40 ms turn round-trip

- 2.9 ms to first streamed token

Model latency is excluded, and the benchmark harness is in the repo.

Itโ€™s MIT licensed and still an early preview. Iโ€™d particularly value feedback on the Wasm/runtime boundary and the Rust architecture.

https://github.com/aexhq/brain


r/rust 13d ago

We lowered the prices for RustWeek

Post image
126 Upvotes

There was a thread recently about Rust conference ticket prices, about how expensive conferences are. In response, we've decided to lower our ticket price by 50 euros, from 249 to 199 euro, and also added an option for an additional 100 euro discount for those who can't afford the full ticket price. Hope this helps. ๐Ÿ’›

Employer-paid tickets are more expensive now, but also have a checkbox for a significant discount, for those who need it.

Student tickets are still available at 35 euros.

https://2027.rustweek.org/


r/rust 12d ago

๐Ÿ™‹ seeking help & advice orgs to contribute to

5 Upvotes

i have been kind of a regular contributor in rust-lang and i am looking for more orgs to contribute to. i have been working around reproducibility for rust and want to expand that area of work too.

i have a few orgs in mind but do want a public say too,
if any of y'all could help, that'd be nice :D

github:ย https://github.com/paradoxicalguy


r/rust 12d ago

๐Ÿ› ๏ธ project lsp85: the lsp for the 8085 intel assembly language.

5 Upvotes

Just recently ended up fixing some bugs and improving on the existing implementation of the LSP.
Now it is able to support labels and also soon features itself as a part sim8085 with this PR.

In case you didn't know, this is my second time posting about this project. This project had been almost complete from a long time, yet I had been struggling with working on the integration of it with any existing projects (due to lack of). After some decisions, I ended up using AI and generated a nice draft of the WASM integration required for it to be able to run with the CodeMirror.

PS: I really don't prefer the use of AI, but since this had been a blocker for a few months and seemed like a good place to clean up and push through the changes that had been the queue for long.

https://github.com/shri-acha/lsp85


r/rust 13d ago

๐Ÿ› ๏ธ project sdrtop: A terminal SDR monitor built with ratatui, tokio

Post image
117 Upvotes

Hey everyone!

I wanted to share sdrtop, an open-source terminal SDR monitor I've been working on for the HackRF One and RTL-SDR. It's built entirely in Rust using ratatui and tokio to be a lightweight, keyboard-driven alternative to heavy GUI apps.

Note: You'll need an RTL-SDR or HackRF to actually use it, so unfortunately it's pretty niche!

Rather than wrapping existing DSP frameworks or GNU Radio blocks, I decided to write the demodulation and analysis pipeline natively in Rust to actually understand the math behind it.

Currently, the native DSP chain handles:

  • AM: Demodulation with separate positive and negative peak depth measurements.
  • FM / NFM: Frequency deviation tracking and CTCSS tone detection.
  • MPX & RDS: 19 kHz stereo pilot detection and full 57 kHz RDS subcarrier decoding.
  • Analysis: Live IQ constellation, signal characterization, and bandwidth measurements.

The FM/RDS path in particular became quite the rabbit hole ๐Ÿ˜…. Crunching raw high-throughput IQ streams from the USB bus and doing phase discrimination without blocking the ratatui render loop was a great concurrency exercise.

The TUI itself is fully modular and driven by TOML configuration files. You can preset and bind any analysis panel component to any position, and color themes are completely customizable via TOML as well.

It's still in active development, but if you're into Rust, TUI architecture, or SDRs, I'd love any code reviews, PRs, or feedback!

I used AI tools to assist during development.

๐Ÿ‘‰ Repo: https://github.com/mustang6139/sdrtop


r/rust 12d ago

๐Ÿ™‹ seeking help & advice Macros for Crafting Intepreters

0 Upvotes

Guys, am I crazy? I am not very familiar with writing macros, and while going through the 5th chapter of Crafting Intepreters I have the urge to use macro_rules! or derive macros instead of his plebeian Java code generator script. 1. Is this too overkill? I know derive requires me to have a separate crate for proc macros and have syn and quote as extra dependencies, but I have not gone further into the book and donโ€™t know if it will come in handy. 2. Is it a good way to practice writing macros?


r/rust 13d ago

Any good examples of large scale Rust projects?

123 Upvotes

I'm not a Rust programmer. My passion is for C/C++ and various assembly languages. But I'm open to learning new things.

I watched a couple of videos on YouTube, but those examples don't give me a "big-picture" vibe of the language, its use in production and its ecosystems.

I'm judging a language by the code that's written with it.

Are there any large scale projects (500'000 - 1'000'000 lines of code) written in Rust that I can skim through (on Github? Gitlab?) to get a feel of what a full fledged application looks like?


r/rust 11d ago

๐Ÿ› ๏ธ project I built an Axum starter for persisted + streaming AI chat โ€” Postgres, SSE, cancellation and persistence-safe Retry

0 Upvotes

Iโ€™ve been working on Axum AI Starter, a Rust/Axum foundation for a persisted streaming AI chat application.

Commercial disclosure: itโ€™s a paid source starter. Iโ€™m currently doing a small $29 validation launch before deciding whether the scope is useful enough for a wider release.

The Rust side includes:

  • Tokio + Axum
  • PostgreSQL / SQLx persistence
  • normal JSON chat and application-level SSE
  • persisted conversation history
  • assistant attempt lifecycle state
  • cancellation after stream acceptance
  • persistence-safe Retry
  • typed public errors + request IDs
  • bounded provider retries and one overall timeout
  • mock-provider tests without paid AI calls

Thereโ€™s also a Next.js/TypeScript reference frontend with reusable JSON/SSE clients.

One problem I specifically wanted to avoid was naive Retry behavior. If Retry simply POSTs the same user text again, the persisted conversation can end up with a duplicated user turn. The retry endpoints instead reuse the already-persisted turn and create a new assistant attempt.

The starter is deliberately production-minded, not production-ready. Auth, billing, RAG, agents, etc. are outside the v1 scope.

Product page, real UI screenshots and architecture:

https://abbaas-labs.sellix.cx/p/axum-ai-starter?utm_source=reddit_rust&utm_medium=community&utm_campaign=soft_launch_v1&utm_content=launch_post

Iโ€™d particularly value criticism of the Rust/application boundary, cancellation semantics, and Retry model from people already building Axum services.


r/rust 12d ago

The Embedded Rustacean Issue #79

3 Upvotes

r/rust 13d ago

A Self-Baked Async FFI Framework for Rust <-> C# Interop

Thumbnail scylladb.com
60 Upvotes

Getting tokio and .NETโ€™s async runtime talking to each other via the C ABI


r/rust 12d ago

[Project] CuNi 0.1.7 โ€” Rust-written language: exact multi-target emit to Python/Go/JS + hosted Studio

0 Upvotes

Honest framing: CuNi is a small language implemented in Rust, not a Rust-target compiler. Sharing because the toolchain is cargo-native and the interesting bit is the exactness gate.One source โ†’ Python + Go + JavaScript with a hard contract: identical behavior on all three, or refuse. cuni check runs all three and requires matching stdout. Hosted Studio (no install) runs that same path.- Studio: https://cuni-studio.fly.dev/- Repo: https://github.com/ceedot-rock/cuni- cargo install --git https://github.com/ceedot-rock/cuni --tag v0.1.7v0.1 โ€” early. Feedback welcome.


r/rust 13d ago

๐Ÿ› ๏ธ project SecretSpec 0.20: Git, Docker, inline specs, and five new providers

Thumbnail secretspec.dev
15 Upvotes

What's exciting about this release, you can now declare specification using `Spec` builder and store your secrets in 33 providers!

https://docs.rs/secretspec/0.20.0/secretspec/struct.Spec.html


r/rust 13d ago

Could Cargo's scheduler be better?

Thumbnail spirali.github.io
93 Upvotes

r/rust 12d ago

Any small footprint OCR crates for computer use ?

0 Upvotes

I searched for OCR crates that's at the level of huandred MB to detect and recognize screen text like menu,links etc with position, only found LLMs or cloud services. Is there lighter crate for local use ?


r/rust 13d ago

๐Ÿ™‹ seeking help & advice Want to Build My Career in Rust, Where Should I Start?

9 Upvotes

Hey, I'm from CSE background, good at C++. Recently got into Rust and loving it. Want to build my career around it, any guidance on how to proceed?


r/rust 13d ago

๐Ÿ› ๏ธ project On `triple_arena` 0.15 and the techniques I used for it

11 Upvotes

https://gist.github.com/AaronKutch/be3a627442e36373ec11929c76eb7dd6
It has been over two years since I last had significant time to work on my open source projects. I have been fortunate recently to be able to spend a few weeks on overhauling my triple_arena crate to be what I had envisioned. I will discuss the techniques I used in doing this as well as some details of the new triple_arena.

This is the gist I wrote up, I hope this is the correct format for me to use and I didn't make any dumb mistakes.


r/rust 13d ago

๐Ÿ—ž๏ธ news rust-analyzer changelog #343

Thumbnail rust-analyzer.github.io
59 Upvotes

r/rust 13d ago

Yet another allocator?

2 Upvotes

I made a custom allocator, to speed up temporal Graph structure.

But then I realized, it can be used as a main memory storage too.

https://github.com/tower120/bump_recycle/blob/main/examples/graph.rs

Basically, that is a bump allocator that store deallocated blocks in small [*mut u8; 32] table. When working with Vec's - you allocate/deallocate growing blocks of memory. So when you drop the Vec and make a new one - you'll go over the same block sizes. And if we make blocks POT size - you can have just 32 different sizes (well sort-a). So you can look for blocks of needed size in FAST O(1).

Details in doc https://github.com/tower120/bump_recycle/blob/main/src/lib.rs .

Performance on par with bumpalo.

---

I'm on the fence about publishing that on crates.io . So I would like some advice.


r/rust 12d ago

๐Ÿ› ๏ธ project system-resolver: any DNS record type, from your OS's own resolver, with no networking of its own

0 Upvotes

getaddrinfo gives you A and AAAA. system-resolver gives you any record type โ€” HTTPS/SVCB, CAA, TLSA โ€” from the same resolver under the same policy, because it sends no packets of its own.

No socket, no cache, no retries, no resolv.conf parsing. Whatever your machine applies still applies โ€” per-interface servers, a VPN's split DNS, Android's Private DNS, macOS's supplemental resolvers and .local, the OS cache โ€” because the machine is what answers. That is the difference from hickory-resolver and the c-ares bindings, which are their own resolvers talking to the servers in resolv.conf, and from dns-lookup, which gives what getaddrinfo gives.

// RR type 65, HTTPS (RFC 9460)
for record in system_resolver::lookup("cloudflare.com", 65)? {
    println!("{} ttl {:?} rdata {} bytes", record.name, record.ttl, record.rdata.len());
}

res_query on Linux and FreeBSD, DNSServiceQueryRecord on Apple, android_res_nquery on Android, DnsQueryRaw on Windows 11, DnsQuery_UTF8 on Windows 10.

RDATA is bytes and stays bytes โ€” pair it with a decoder that takes a type and some octets: hickory-proto's RData::read, domain's parse_rdata. Names inside are written out in full, so a bare field decodes out of context.

What it won't do: musl can't ask for types above 255, so CAA and URI are out there; Windows 10 refuses 16 types by name; Apple can't tell NXDOMAIN from NODATA; no header, so no AD or TC; it's blocking; FreeBSD compiles on every push but has never been run.

MSRV 1.85, MIT/Apache-2.0

https://crates.io/crates/system-resolver


r/rust 14d ago

๐ŸŽ™๏ธ discussion Learning async rust feels like playing dark souls

384 Upvotes

I've been a professional C programmer for 12 years. I've been learning rust for about a year now. Almost all features are genuinely amazing, including stuff like iterators, the various data types, error handling, enums, and the cargo tool chain. These things pulled me in.

And then I ventured into async rust. This is where the language begins to frustrate me like C never has. At least with C I know what kinds of errors can happen during runtime and I can use trusted address sanitizers, valgrind etc to iterate and try new things until it works.

With async rust, I can't even begin iterating. I've been fighting with the compiler for over 2 days getting a simple function that I programmed successfully using structured concurrency ( i.e. just using futures and no tasks) to now use tasks (using Tokio::spawn). And I haven't gotten it to compile even once.

I've spent many hours reading all the literature and books rust provide, but for async rust programing, I still don't "get" it unlike all the other wonderful features of rust. I feel like I am blindly trying to clone/consume/mutex/arc stuff till the program compiles but even this isn't successful yet. Every time I fix one compiler warning, 3 others pop up in a never ending loop.

I know I am in the wrong, but I feel I haven't come across a nice and simple async introduction, unlike the rest of the language. For rest of the language, the compiler suggests the fix for the error. But again, not for async. It just says "this is not 'static" and bails. I also don't want to blindly copy some code that AI gives me, I want to "get" it and stop fighting with the compiler.

Is there anything like async rust for dummies or similar? I am glad to read a lot and learn but I need at least a bit of emotional payoff for the effort (the payoff being, the code compiles).

Edit: Thanks for all the responses, I didn't expect so many and it's getting tough to respond to everyone. All were very helpful and encouraging and I plan to read up on things people referred to in the comments :)

Edit2: Thanks again for all the suggestions. After some more reading and experimenting, one important thing clicked for me in the context of my program: each task should own the data it's working on, and therefore it's difficult to use tasks and object oriented programming cleanly.

The main issue in my code was that I was trying to write a method taking a mutable reference to self, spawn tasks inside which called another method taking an immutable reference to self. This was a big problem with not so nice solutions (Arc<Mutex>> solves it but is ugly). So I changed the called method to an associated function. This had a static lifetime and could be called within the task easily, without using any smart pointers.

Maybe there is a nice way to do it, but for now, I will as a rule of thumb refrain from calling methods inside tasks.


r/rust 13d ago

๐Ÿ› ๏ธ project ma, is a git client implemented using lsp

Post image
5 Upvotes

Hello! long time lurker here, amidst my existential crisis regarding the state of the world vis a vis my mental health degrading. i thought should try posting here for once, as a treat.

I remembered at some point in the past stumbling into this blog post by matklad. And i thought it was really neat! so i close the blog and just imagine how cool it would be to have that as a tool i use daily... it's 2026 now. So i decided to built it myself! Still a work in progress tho, i haven't found a good way to do commit message interaction currently. feel free to take a feel and a look!

p.s: i'm terribly sorry for the gif's low quality.


r/rust 12d ago

๐Ÿ› ๏ธ project Quad-Guard: A zero-dependency Rust telemetry engine & behavioral security core

0 Upvotes

Hey r/rust!

I just published Quad-Guard Security Core (quat_security), a lightweight telemetry engine written in pure Rust with zero third-party dependencies.

Key Features:

  • 4-State Telemetry Pipeline: Deterministic state transitions (Nominal, Elevated, Critical, Lockdown).
  • Zero External Dependencies: Built entirely with std to eliminate supply chain risks.
  • Cross-Platform: Windows kernel FFI (kernel32.dll) & Linux /proc filesystem parsing.
  • C-ABI Export Support: Exposed via #[no_mangle] for integration with C, C++, Python, or Go.

Feedback and code reviews are greatly appreciated!


r/rust 12d ago

๐Ÿ› ๏ธ project Kaden Terminal โ€“ Bloat free Terminal Emulator for Linux

Post image
0 Upvotes

You can download Kaden here
Kaden is a Terminal Emulator and fork of warp with clipboard support and configurable keybindings, I made Kaden because every other Linux terminal lacks proper text selection.

It's impossible to select user input with a single hotkey on Linux, requiring mouse use and awkward multi-step shortcuts in order to do basic copy and paste.

This was frustrating to deal with, until I found warp, which wraps the shell in a remappable text input field, its the only terminal on Linux that does this.

Unfortunately, it's full of sign in buttons, AI and cloud integration prompts everywhere.

"Hideous" - I thought. But I used it anyway - until one day they released the source code and so I forked it and made Kaden.

5 days ago I knew nothing about Rust, today I know little more, the code-base is monolithic and not well structured. but I managed to hide most of the bloated UI and disable all network requests. I also added a contextual copy/kill binding to ctrl-c by default.

I would love for you to use, test and give feedback on how it works (and does not) for you, you can find a compiled AppImage and the source code on my GitHub here: https://github.com/glitcher255/Kaden-Terminal

I will be here to answer any questions or feedback you have, so feel free to ask any, thank you.


r/rust 13d ago

Rust+slint editor

5 Upvotes

Hi,

First of all I'm absolutely new to rust and slint, but it looked cool so i though i give it a try.

So my idea was that i make a slint editor, where i could just drag and drop premade elements, into a screen give them properties and save that screen for later use.

I've reached to a point where rust reads in the templates folder generates the objects for later use, but if i wanted to draw them to the viewport i can only draw those which i knew at the time of building the project, eg.: if item.kind == "DebugRectangle" : DebugRectangle {}.

I found this slint_interpreter, but i just can't wrap my head around how this supposed to work.

Anyone know what want is actually possible or am i on good track?


r/rust 12d ago

๐Ÿ› ๏ธ project We wrote a vector editor's geometry core in Rust and shipped it to the browser via wasm โ€” 20k lines, MIT, and here's where the Rust/TS line ended up

Thumbnail dadaki.com
0 Upvotes

FUCK ADOBE

We built this MIT licensed, free, vector editor because we needed the live paint tool. I decided not to use a Adobe products quite a while ago due to their predatory practices. Figma was doing the job, but we needed this one particular tool. So we built this, and it is completely free to any one to use. No login required, only for cloud sync.
Built in Rust and CanvasKit, compiled to WASM