<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Rust on AI VOID</title><link>https://ai-blog.noorshomelab.dev/categories/rust/</link><description>Recent content in Rust on AI VOID</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sun, 24 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://ai-blog.noorshomelab.dev/categories/rust/index.xml" rel="self" type="application/rss+xml"/><item><title>Setting Up Your GPUI Development Environment (2026-05-24)</title><link>https://ai-blog.noorshomelab.dev/gpui-guide-2026/setup-gpui-dev-environment/</link><pubDate>Sun, 24 May 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/gpui-guide-2026/setup-gpui-dev-environment/</guid><description>&lt;h2 id="setting-up-your-gpui-development-environment-2026-05-24"&gt;Setting Up Your GPUI Development Environment (2026-05-24)&lt;/h2&gt;
&lt;p&gt;Welcome to the exciting world of GPUI, the GPU-accelerated UI framework powering the Zed editor! If you&amp;rsquo;re a Rust developer looking to build high-performance, native user interfaces on macOS or Linux, you&amp;rsquo;ve come to the right place. GPUI offers a unique hybrid rendering model that promises exceptional speed and responsiveness, making it ideal for demanding applications.&lt;/p&gt;
&lt;p&gt;In this chapter, we&amp;rsquo;ll guide you through setting up your development environment, understanding GPUI&amp;rsquo;s fundamental design principles, and creating your very first GPUI application. We&amp;rsquo;ll emphasize practical, step-by-step instructions, ensuring you grasp not just &lt;em&gt;how&lt;/em&gt; to set things up, but &lt;em&gt;why&lt;/em&gt; each piece is important.&lt;/p&gt;</description></item><item><title>Building UI with Views and Elements: The Core of GPUI</title><link>https://ai-blog.noorshomelab.dev/gpui-guide-2026/views-and-elements-core-gpui/</link><pubDate>Sun, 24 May 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/gpui-guide-2026/views-and-elements-core-gpui/</guid><description>&lt;p&gt;Building a user interface often feels like painting a picture, but with GPUI, you&amp;rsquo;re not just painting; you&amp;rsquo;re orchestrating a high-performance visual symphony. This chapter dives into the fundamental building blocks of GPUI&amp;rsquo;s UI: &lt;strong&gt;Views&lt;/strong&gt; and &lt;strong&gt;Elements&lt;/strong&gt;. These are the core components you&amp;rsquo;ll use to define what your users see and interact with.&lt;/p&gt;
&lt;p&gt;You&amp;rsquo;ve already set up your GPUI environment and understand the basic application lifecycle. Now, we&amp;rsquo;ll shift our focus to &lt;em&gt;what&lt;/em&gt; actually appears on the screen and &lt;em&gt;how&lt;/em&gt; you control it. We&amp;rsquo;ll explore GPUI&amp;rsquo;s unique hybrid rendering approach, understand how state is managed through &lt;code&gt;Entity&lt;/code&gt; and &lt;code&gt;AppContext&lt;/code&gt;, and learn to construct visual trees using the &lt;code&gt;elements!&lt;/code&gt; macro. Get ready to bring your applications to life with interactive user interfaces!&lt;/p&gt;</description></item><item><title>Chapter 3: Content Loading and Frontmatter Parsing</title><link>https://ai-blog.noorshomelab.dev/stellar-gen-guide/chapter-03-content-frontmatter/</link><pubDate>Mon, 02 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/stellar-gen-guide/chapter-03-content-frontmatter/</guid><description>&lt;h2 id="chapter-3-content-loading-and-frontmatter-parsing"&gt;Chapter 3: Content Loading and Frontmatter Parsing&lt;/h2&gt;
&lt;p&gt;Welcome to Chapter 3 of our Rust SSG journey! In the previous chapter, we laid the groundwork for our project structure and set up basic logging. Now, we&amp;rsquo;re ready to tackle the core of any static site generator: processing content. This chapter will focus on how our SSG will read content files from the file system, parse their associated metadata (known as &amp;ldquo;frontmatter&amp;rdquo;), and separate the main content body.&lt;/p&gt;</description></item><item><title>Asynchronous Programming with GPUI&amp;#39;s Executor</title><link>https://ai-blog.noorshomelab.dev/gpui-guide-2026/async-programming-gpui-executor/</link><pubDate>Sun, 24 May 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/gpui-guide-2026/async-programming-gpui-executor/</guid><description>&lt;h2 id="introduction-to-gpuis-asynchronous-executor"&gt;Introduction to GPUI&amp;rsquo;s Asynchronous Executor&lt;/h2&gt;
&lt;p&gt;Building responsive and fluid user interfaces is a cornerstone of modern application development. No user wants an application that freezes or becomes unresponsive while performing a long-running task, such as fetching data from a server or processing a large file. This is where asynchronous programming becomes indispensable.&lt;/p&gt;
&lt;p&gt;In this chapter, we&amp;rsquo;ll dive into the heart of how GPUI handles concurrency: its built-in asynchronous executor. You&amp;rsquo;ll learn how to offload heavy computations, manage network requests, and update your UI seamlessly without blocking the main thread. We&amp;rsquo;ll explore GPUI&amp;rsquo;s specific tools, &lt;code&gt;cx.spawn&lt;/code&gt; and &lt;code&gt;cx.spawn_on_main&lt;/code&gt;, which are tailored for its unique hybrid rendering model.&lt;/p&gt;</description></item><item><title>Advanced Topics: Unsafe Rust and FFI</title><link>https://ai-blog.noorshomelab.dev/rust-guide/advanced-unsafe-ffi/</link><pubDate>Sat, 25 Oct 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/rust-guide/advanced-unsafe-ffi/</guid><description>&lt;h1 id="advanced-topics-unsafe-rust-and-ffi"&gt;Advanced Topics: Unsafe Rust and FFI&lt;/h1&gt;
&lt;p&gt;Rust&amp;rsquo;s strict compile-time safety guarantees are foundational. However, there are scenarios where these guarantees need to be circumvented to achieve specific goals, such as interacting with hardware, operating system features, or code written in other languages. This is where &lt;code&gt;unsafe&lt;/code&gt; Rust and the Foreign Function Interface (FFI) come into play.&lt;/p&gt;
&lt;p&gt;Entering an &lt;code&gt;unsafe&lt;/code&gt; block means you are telling the compiler, &amp;ldquo;I know what I&amp;rsquo;m doing, and I guarantee that this code is memory-safe.&amp;rdquo; The compiler will trust you. It is your responsibility to ensure that &lt;code&gt;unsafe&lt;/code&gt; code &lt;em&gt;actually&lt;/em&gt; upholds Rust&amp;rsquo;s memory safety guarantees.&lt;/p&gt;</description></item><item><title>The Stoolap Ecosystem: Future Directions and Community</title><link>https://ai-blog.noorshomelab.dev/mastering-stoolap-2026/stoolap-ecosystem-future/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/mastering-stoolap-2026/stoolap-ecosystem-future/</guid><description>&lt;h2 id="introduction-to-the-stoolap-ecosystem"&gt;Introduction to the Stoolap Ecosystem&lt;/h2&gt;
&lt;p&gt;Welcome to the final chapter of our Stoolap journey! Throughout this guide, we&amp;rsquo;ve explored Stoolap&amp;rsquo;s core concepts, from its unique architecture supporting both OLTP and OLAP workloads to advanced features like MVCC, parallel execution, cost-based optimization, and vector search. You&amp;rsquo;ve learned how to leverage this powerful embedded SQL database for a variety of modern applications, building confidence with hands-on examples.&lt;/p&gt;
&lt;p&gt;In this chapter, we&amp;rsquo;re going to shift our focus from &lt;em&gt;using&lt;/em&gt; Stoolap to understanding its broader context: its open-source ecosystem, the vibrant community driving its development, and where it might be headed in the future. As an open-source project, Stoolap thrives on collaboration. Understanding how to engage with the community and even contribute back is crucial for staying at the forefront of its evolution. This knowledge empowers you not just as a user, but as a potential participant in shaping Stoolap&amp;rsquo;s future.&lt;/p&gt;</description></item><item><title>Chapter 14: Project: Creating a File Browser</title><link>https://ai-blog.noorshomelab.dev/ratatui-mastery-guide-2026/14-project-file-browser/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/ratatui-mastery-guide-2026/14-project-file-browser/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Welcome to Chapter 14! So far, we&amp;rsquo;ve explored the foundational elements of Ratatui: drawing widgets, managing layouts, and handling basic input. Now, it&amp;rsquo;s time to bring these concepts together and build something truly useful and interactive: a terminal-based file browser.&lt;/p&gt;
&lt;p&gt;This project will challenge you to integrate multiple Ratatui features, manage application state effectively, and interact with the underlying file system. By the end of this chapter, you&amp;rsquo;ll have a functional TUI application that allows you to navigate directories, view file and folder names, and apply the principles of event-driven TUI development to a real-world scenario. Get ready to put your Ratatui skills to the test and build a practical tool!&lt;/p&gt;</description></item><item><title>Ratatui Practical Field Guide</title><link>https://ai-blog.noorshomelab.dev/guides/ratatui-mastery-guide/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/guides/ratatui-mastery-guide/</guid><description>&lt;h2 id="welcome-to-your-ratatui-journey"&gt;Welcome to Your Ratatui Journey!&lt;/h2&gt;
&lt;p&gt;Are you ready to build stunning, interactive applications right in your terminal? Forget boring command-line interfaces (CLIs) that just print text! With Ratatui, you&amp;rsquo;ll learn to craft dynamic, engaging, and highly functional Terminal User Interfaces (TUIs) using the power and safety of Rust.&lt;/p&gt;
&lt;h3 id="what-is-ratatui"&gt;What is Ratatui?&lt;/h3&gt;
&lt;p&gt;At its core, Ratatui is a robust, community-driven Rust library designed for &amp;ldquo;cooking up&amp;rdquo; beautiful and interactive text-based user interfaces. Think of it as a canvas and a set of drawing tools for your terminal. Instead of a graphical window (like a web browser or a desktop app), Ratatui renders its interface directly within the command line, allowing for rich layouts, real-time updates, and complex interactions—all without leaving the console.&lt;/p&gt;</description></item><item><title>Chapter 10: Deployment with `cargo install`</title><link>https://ai-blog.noorshomelab.dev/rust-password-generator-guide/chapter-10-deployment-with-cargo-install/</link><pubDate>Mon, 01 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/rust-password-generator-guide/chapter-10-deployment-with-cargo-install/</guid><description>&lt;h3 id="purpose-of-this-chapter"&gt;Purpose of This Chapter&lt;/h3&gt;
&lt;p&gt;Our password generator is now complete with core features, robust error handling, logging, and unit tests. The final step to making it a production-ready tool is to properly package and deploy it so that users (including yourself) can easily install and run it from anywhere on their system. This chapter will cover building a release binary and deploying it using &lt;code&gt;cargo install&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id="concepts-explained"&gt;Concepts Explained&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Release Build:&lt;/strong&gt; When developing, Rust compiles code in &amp;ldquo;debug mode&amp;rdquo; by default, which includes debugging information and fewer optimizations, making compilation faster. For deployment, we use &amp;ldquo;release mode&amp;rdquo; which optimizes the code for performance and size, resulting in a production-ready executable.&lt;/p&gt;</description></item><item><title>Chapter 7: Error Handling and User Feedback</title><link>https://ai-blog.noorshomelab.dev/rust-password-generator-guide/chapter-07-error-handling-and-user-feedback/</link><pubDate>Mon, 01 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/rust-password-generator-guide/chapter-07-error-handling-and-user-feedback/</guid><description>&lt;h3 id="purpose-of-this-chapter"&gt;Purpose of This Chapter&lt;/h3&gt;
&lt;p&gt;A production-ready application doesn&amp;rsquo;t just work when everything goes right; it also handles errors gracefully and provides helpful feedback when things go wrong. In this chapter, we&amp;rsquo;ll refine our error handling, moving from simple &lt;code&gt;eprintln!&lt;/code&gt; and &lt;code&gt;process::exit&lt;/code&gt; to a more structured approach using custom error types. This makes our application more robust and user-friendly.&lt;/p&gt;
&lt;h3 id="concepts-explained"&gt;Concepts Explained&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Error Types:&lt;/strong&gt; In Rust, errors are typically represented by types that implement the &lt;code&gt;std::error::Error&lt;/code&gt; trait. Custom error enums, often used with &lt;code&gt;thiserror&lt;/code&gt; (though we&amp;rsquo;ll keep it manual for this guide for simplicity), provide structured ways to define different error conditions.&lt;/p&gt;</description></item><item><title>Chapters for Building a Rust CLI Password Generator</title><link>https://ai-blog.noorshomelab.dev/rust-password-generator-guide/</link><pubDate>Wed, 20 Aug 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/rust-password-generator-guide/</guid><description>&lt;p&gt;This section contains all the chapters dedicated to building our Rust CLI Password Generator. Each chapter builds upon the previous one, guiding you through the process of setting up your environment, implementing core features, ensuring security and robustness, and finally preparing your application for deployment.&lt;/p&gt;</description></item></channel></rss>