<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Real-Time on AI VOID</title><link>https://ai-blog.noorshomelab.dev/tags/real-time/</link><description>Recent content in Real-Time on AI VOID</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sat, 14 Mar 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://ai-blog.noorshomelab.dev/tags/real-time/index.xml" rel="self" type="application/rss+xml"/><item><title>Chapter 1: Decoding SpaceTimeDB: Concepts and Architecture</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-1-decoding-spacetime-db/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-1-decoding-spacetime-db/</guid><description>&lt;p&gt;Welcome, aspiring real-time architect, to the exciting world of SpaceTimeDB!&lt;/p&gt;
&lt;p&gt;In this first chapter of our comprehensive guide, we&amp;rsquo;re going to embark on a journey to demystify SpaceTimeDB. You&amp;rsquo;ll discover what makes it a game-changer for building real-time, collaborative, and multiplayer applications. We&amp;rsquo;ll explore its fundamental concepts, understand the unique architectural problems it solves, and get our hands dirty with the initial setup.&lt;/p&gt;
&lt;p&gt;By the end of this chapter, you&amp;rsquo;ll have a solid grasp of:&lt;/p&gt;</description></item><item><title>Introduction to Redis</title><link>https://ai-blog.noorshomelab.dev/redis-guide/introduction-to-redis/</link><pubDate>Fri, 07 Nov 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/redis-guide/introduction-to-redis/</guid><description>&lt;p&gt;Welcome to the world of Redis! If you&amp;rsquo;re building modern applications that demand speed, scalability, and real-time capabilities, Redis is an indispensable tool you&amp;rsquo;ll want in your arsenal. This introductory chapter will lay the groundwork for your journey, explaining what Redis is, why it&amp;rsquo;s so powerful, and how it&amp;rsquo;s used in the real world.&lt;/p&gt;
&lt;h3 id="what-is-redis"&gt;What is Redis?&lt;/h3&gt;
&lt;p&gt;Redis, which stands for &lt;strong&gt;RE&lt;/strong&gt;mote &lt;strong&gt;DI&lt;/strong&gt;ctionary &lt;strong&gt;S&lt;/strong&gt;erver, is an open-source, in-memory data structure store. While it&amp;rsquo;s often referred to as a &amp;ldquo;NoSQL database&amp;rdquo; or &amp;ldquo;key-value store,&amp;rdquo; Redis is much more versatile. It functions as a:&lt;/p&gt;</description></item><item><title>Chapter 5: Bringing Logic to Life: Reducers and Server-Side Operations</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-5-reducers-server-side-logic/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-5-reducers-server-side-logic/</guid><description>&lt;h2 id="introduction-where-the-magic-happens--server-side-logic"&gt;Introduction: Where the Magic Happens – Server-Side Logic&lt;/h2&gt;
&lt;p&gt;Welcome back, intrepid SpaceTimeDB explorer! In our previous chapters, we laid the groundwork by understanding SpaceTimeDB&amp;rsquo;s unique architecture, setting up our environment, and defining our database schema with tables. You now know how to structure your data, but what about changing it? How do you update a player&amp;rsquo;s score, add a new chat message, or move a character in a game?&lt;/p&gt;
&lt;p&gt;This is where server-side logic comes into play, and in SpaceTimeDB, it&amp;rsquo;s handled by a powerful concept called &lt;strong&gt;Reducers&lt;/strong&gt;. Reducers are the heart of your application&amp;rsquo;s state changes, ensuring that all modifications to your shared database are consistent, deterministic, and immediately propagated to all connected clients.&lt;/p&gt;</description></item><item><title>Chapter 6: Real-time Magic: Client Synchronization and Event Propagation</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-6-client-sync-event-propagation/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-6-client-sync-event-propagation/</guid><description>&lt;h2 id="chapter-6-real-time-magic-client-synchronization-and-event-propagation"&gt;Chapter 6: Real-time Magic: Client Synchronization and Event Propagation&lt;/h2&gt;
&lt;p&gt;Welcome back, intrepid developer! In our previous chapters, we&amp;rsquo;ve explored the foundational concepts of SpaceTimeDB, from setting up your development environment to designing schemas and writing server-side logic using reducers. We&amp;rsquo;ve seen how SpaceTimeDB acts as a unified backend, combining a database with application logic.&lt;/p&gt;
&lt;p&gt;Now, it&amp;rsquo;s time to unveil the &amp;ldquo;magic&amp;rdquo; that makes SpaceTimeDB truly shine: its real-time capabilities. This chapter will pull back the curtain on how client applications stay perfectly synchronized with your SpaceTimeDB instance, receiving instant updates as data changes. We&amp;rsquo;ll explore the core mechanisms of client synchronization, event propagation, and how to build responsive, collaborative experiences.&lt;/p&gt;</description></item><item><title>Chapter 7: Building Collaborative Features: Patterns for Shared State</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-7-collaborative-patterns/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-7-collaborative-patterns/</guid><description>&lt;h2 id="chapter-7-building-collaborative-features-patterns-for-shared-state"&gt;Chapter 7: Building Collaborative Features: Patterns for Shared State&lt;/h2&gt;
&lt;p&gt;Welcome back, intrepid developer! In our journey through SpaceTimeDB, we&amp;rsquo;ve covered the basics of setting up your database, defining schemas, and even writing server-side logic with reducers. But where SpaceTimeDB truly shines is in its ability to power real-time, collaborative applications. This is where the magic of shared state and instant synchronization comes alive!&lt;/p&gt;
&lt;p&gt;In this chapter, we&amp;rsquo;re going to dive deep into building collaborative features. We&amp;rsquo;ll explore the patterns and techniques that allow multiple users to interact with the same data simultaneously, seeing updates happen in real-time across all connected clients. Think multiplayer games, shared whiteboards, collaborative document editors, or live dashboards – SpaceTimeDB makes these complex scenarios surprisingly approachable. Get ready to build applications that feel alive and responsive!&lt;/p&gt;</description></item><item><title>Chapter 8: Integrating with Frontends: Web Clients and Game Engines</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-8-frontend-integration/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-8-frontend-integration/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Welcome to Chapter 8! So far, we&amp;rsquo;ve explored the fascinating world of SpaceTimeDB, understanding its core concepts, how to define schemas, and how to implement server-side logic using reducers. We&amp;rsquo;ve built the &amp;ldquo;brain&amp;rdquo; of our real-time applications, where data lives and logic executes deterministically.&lt;/p&gt;
&lt;p&gt;But what&amp;rsquo;s a powerful backend without a beautiful and interactive frontend? This chapter is all about bridging that gap. We&amp;rsquo;ll dive deep into how your client applications—whether they&amp;rsquo;re web apps built with JavaScript/TypeScript or games developed with engines like Unity using C#—connect to SpaceTimeDB, subscribe to real-time data updates, and invoke your server-side reducers. By the end of this chapter, you&amp;rsquo;ll be able to bring your SpaceTimeDB-powered ideas to life with dynamic, real-time user interfaces.&lt;/p&gt;</description></item><item><title>Chapter 11: Scaling Your SpaceTimeDB Application: Distributed Architectures and Deployment</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-11-scaling-deployment/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-11-scaling-deployment/</guid><description>&lt;h2 id="chapter-11-scaling-your-spacetimedb-application-distributed-architectures-and-deployment"&gt;Chapter 11: Scaling Your SpaceTimeDB Application: Distributed Architectures and Deployment&lt;/h2&gt;
&lt;p&gt;Welcome back, intrepid SpaceTimeDB adventurer! Up until now, we&amp;rsquo;ve focused on building fantastic real-time applications on a single SpaceTimeDB instance. But what happens when your game explodes in popularity, your collaborative app goes viral, or your real-time dashboard needs to handle millions of data points per second? That&amp;rsquo;s when you need to think about &lt;em&gt;scaling&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;In this chapter, we&amp;rsquo;re going to tackle one of the most exciting and critical aspects of building production-ready systems: making them scale. We&amp;rsquo;ll explore how SpaceTimeDB&amp;rsquo;s unique architecture lends itself to distributed deployments, dive into concepts like sharding and replication, and then discuss modern deployment strategies using tools like Docker and Kubernetes. Get ready to design systems that can handle immense loads and stay resilient!&lt;/p&gt;</description></item><item><title>12. Integrating Databases and Real-time Systems</title><link>https://ai-blog.noorshomelab.dev/void-cloud-mastery-2026/integrating-databases-realtime-systems/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/void-cloud-mastery-2026/integrating-databases-realtime-systems/</guid><description>&lt;h2 id="12-integrating-databases-and-real-time-systems"&gt;12. Integrating Databases and Real-time Systems&lt;/h2&gt;
&lt;p&gt;Welcome back, fellow Void Cloud voyager! In our previous chapters, we’ve learned how to build and deploy robust applications, manage environments, and ensure secure operations on Void Cloud. But what good is an application if it can&amp;rsquo;t remember anything, or if it can&amp;rsquo;t deliver instant updates to its users?&lt;/p&gt;
&lt;p&gt;This chapter is all about making your applications truly dynamic and interactive. We&amp;rsquo;re going to dive deep into integrating two crucial components of almost any modern web application: &lt;strong&gt;databases&lt;/strong&gt; for persistent data storage and &lt;strong&gt;real-time systems&lt;/strong&gt; for instant communication. You&amp;rsquo;ll learn how Void Cloud seamlessly connects to various database solutions and how to leverage real-time technologies to build engaging user experiences.&lt;/p&gt;</description></item><item><title>Chapter 12: Security &amp;amp; Authentication in SpaceTimeDB</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-12-security-authentication/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-12-security-authentication/</guid><description>&lt;h2 id="introduction-to-security--authentication-in-spacetimedb"&gt;Introduction to Security &amp;amp; Authentication in SpaceTimeDB&lt;/h2&gt;
&lt;p&gt;Welcome to Chapter 12! As we venture further into building sophisticated real-time applications with SpaceTimeDB, securing our data and controlling access becomes paramount. Just as you wouldn&amp;rsquo;t leave your front door unlocked, we can&amp;rsquo;t deploy an application without robust authentication and authorization mechanisms. This chapter will equip you with the knowledge and practical skills to safeguard your SpaceTimeDB applications.&lt;/p&gt;
&lt;p&gt;In this chapter, we&amp;rsquo;ll unravel SpaceTimeDB&amp;rsquo;s unique approach to security, which tightly integrates authentication and authorization directly into your backend logic (reducers). We&amp;rsquo;ll explore how to identify users, manage their identities, and critically, how to enforce granular permissions for every action and data access within your SpaceTimeDB instance. By the end, you&amp;rsquo;ll be able to design and implement secure, multi-user real-time systems with confidence.&lt;/p&gt;</description></item><item><title>Chapter 13: Project: Building a Real-time Collaborative Whiteboard</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-13-project-collaborative-whiteboard/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-13-project-collaborative-whiteboard/</guid><description>&lt;h2 id="chapter-13-project-building-a-real-time-collaborative-whiteboard"&gt;Chapter 13: Project: Building a Real-time Collaborative Whiteboard&lt;/h2&gt;
&lt;p&gt;Welcome back, intrepid SpaceTimeDB explorer! In this chapter, we&amp;rsquo;re going to put many of the concepts you&amp;rsquo;ve learned into practice by building a truly exciting project: a real-time collaborative whiteboard. Imagine multiple users drawing simultaneously on the same canvas, seeing each other&amp;rsquo;s strokes appear instantly – that&amp;rsquo;s the magic we&amp;rsquo;ll create with SpaceTimeDB.&lt;/p&gt;
&lt;p&gt;This project will solidify your understanding of how SpaceTimeDB excels at managing dynamic, shared state for interactive applications. We&amp;rsquo;ll design a schema for drawing data, implement reducers to handle drawing actions, and conceptualize the client-side integration that brings it all to life. You&amp;rsquo;ll see firsthand how SpaceTimeDB&amp;rsquo;s built-in real-time synchronization makes building such complex features surprisingly straightforward.&lt;/p&gt;</description></item><item><title>Chapter 14: Project: Developing a Simple Multiplayer Game</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-14-project-multiplayer-game/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-14-project-multiplayer-game/</guid><description>&lt;h2 id="introduction-bringing-games-to-life-with-spacetimedb"&gt;Introduction: Bringing Games to Life with SpaceTimeDB&lt;/h2&gt;
&lt;p&gt;Welcome to Chapter 14! In this exciting chapter, we&amp;rsquo;re going to put all our SpaceTimeDB knowledge to the test by building a simple, yet engaging, real-time multiplayer game. Imagine a canvas where multiple players can move their unique cursors or avatars around, and everyone sees everyone else&amp;rsquo;s movements instantly. That&amp;rsquo;s the magic we&amp;rsquo;re aiming for!&lt;/p&gt;
&lt;p&gt;This project is more than just a game; it&amp;rsquo;s a practical demonstration of how SpaceTimeDB&amp;rsquo;s core strengths—its unified database and backend logic, real-time synchronization, and deterministic reducers—make it an ideal platform for collaborative and interactive applications. By the end of this chapter, you&amp;rsquo;ll have a clear understanding of how to manage shared game state, process player actions, and update the game world in real-time across all connected clients.&lt;/p&gt;</description></item><item><title>Guided Project 1: Building a Real-time Leaderboard</title><link>https://ai-blog.noorshomelab.dev/redis-guide/project-realtime-leaderboard/</link><pubDate>Fri, 07 Nov 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/redis-guide/project-realtime-leaderboard/</guid><description>&lt;p&gt;This project will guide you through building a real-time leaderboard, a classic use case for Redis. Leaderboards need to:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Store player scores.&lt;/li&gt;
&lt;li&gt;Maintain an ordered list of players by their score.&lt;/li&gt;
&lt;li&gt;Allow quick updates to scores.&lt;/li&gt;
&lt;li&gt;Efficiently retrieve top players or a player&amp;rsquo;s rank.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Redis &lt;strong&gt;Sorted Sets&lt;/strong&gt; are perfectly designed for this, as they store unique members with an associated score and keep them sorted.&lt;/p&gt;
&lt;p&gt;We will build a simple console application in both Node.js and Python.&lt;/p&gt;</description></item><item><title>Chapter 15: Debugging, Testing, and Observability in SpaceTimeDB</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-15-debugging-testing-observability/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-15-debugging-testing-observability/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Welcome to Chapter 15! As we&amp;rsquo;ve journeyed through the capabilities of SpaceTimeDB, building real-time, collaborative applications, you might have encountered situations where things didn&amp;rsquo;t quite work as expected. This is a natural part of software development, and it highlights the critical importance of debugging, testing, and observability.&lt;/p&gt;
&lt;p&gt;In this chapter, we&amp;rsquo;ll equip you with the essential skills and tools to confidently diagnose problems, ensure the correctness of your SpaceTimeDB logic, and monitor your applications in production. We&amp;rsquo;ll explore strategies for both server-side (reducer) and client-side debugging, delve into writing robust unit and integration tests, and discuss how to establish comprehensive observability using logs, metrics, and tracing. By the end of this chapter, you&amp;rsquo;ll not only be able to build powerful SpaceTimeDB applications but also maintain and scale them with confidence.&lt;/p&gt;</description></item><item><title>Chapter 16: Schema Evolution, Migrations, and Advanced Design Patterns</title><link>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-16-schema-evolution-migrations/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/spacetime-db-guide-2026/chapter-16-schema-evolution-migrations/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Welcome to Chapter 16! So far, we&amp;rsquo;ve explored the core concepts of SpaceTimeDB, built real-time applications, and even delved into performance and security. But what happens when your application grows, and your initial data model no longer fits your evolving needs? This is where &lt;strong&gt;schema evolution&lt;/strong&gt; and &lt;strong&gt;data migrations&lt;/strong&gt; come into play.&lt;/p&gt;
&lt;p&gt;In this chapter, we&amp;rsquo;ll tackle the crucial, yet often overlooked, aspects of managing change in your SpaceTimeDB projects. We&amp;rsquo;ll learn how to gracefully adapt your database schema over time without disrupting existing data or live applications. We&amp;rsquo;ll also explore different strategies for migrating data when your schema changes require transforming existing information. Finally, we&amp;rsquo;ll dive into advanced design patterns like Event Sourcing and CQRS, showing how SpaceTimeDB&amp;rsquo;s unique architecture naturally supports them, helping you build even more robust and scalable systems.&lt;/p&gt;</description></item><item><title>Chapter 23: Advanced Architecture: Microfrontends, WebSockets, and Feature Toggles</title><link>https://ai-blog.noorshomelab.dev/angular-production-guide-2026/advanced-architecture/</link><pubDate>Wed, 11 Feb 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/angular-production-guide-2026/advanced-architecture/</guid><description>&lt;h2 id="chapter-23-advanced-architecture-microfrontends-websockets-and-feature-toggles"&gt;Chapter 23: Advanced Architecture: Microfrontends, WebSockets, and Feature Toggles&lt;/h2&gt;
&lt;p&gt;Welcome back, intrepid Angular architect! In this chapter, we&amp;rsquo;re going to level up our application design skills and tackle some truly advanced architectural patterns. As your applications grow in complexity, team size, and user expectations, traditional monolithic frontend approaches can become bottlenecks. We&amp;rsquo;ll explore strategies that empower independent teams, enable real-time user experiences, and provide unparalleled flexibility in deploying new features.&lt;/p&gt;</description></item><item><title>Project 4: Real-Time Collaboration Tool</title><link>https://ai-blog.noorshomelab.dev/ios-pro-dev-2026-guide/project-realtime-collaboration/</link><pubDate>Thu, 26 Feb 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/ios-pro-dev-2026-guide/project-realtime-collaboration/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Welcome to Project 4, where we&amp;rsquo;ll dive into the exciting world of real-time collaboration! Up until now, our apps have largely focused on single-user experiences or fetching data that updates periodically. But what if multiple users need to interact with the &lt;em&gt;same data&lt;/em&gt;, simultaneously, and see each other&amp;rsquo;s changes &lt;em&gt;instantly&lt;/em&gt;? That&amp;rsquo;s the challenge we&amp;rsquo;ll tackle in this project.&lt;/p&gt;
&lt;p&gt;In this chapter, you&amp;rsquo;ll learn how to design and build a simplified real-time collaborative drawing application for iOS. This project will push your understanding of networking, state management, and concurrency, bringing together many advanced concepts from previous chapters. We&amp;rsquo;ll explore how to establish persistent connections, synchronize data across devices, and ensure a smooth, responsive user experience.&lt;/p&gt;</description></item><item><title>USearch &amp;amp; ScyllaDB Vector Search Practical Field Guide</title><link>https://ai-blog.noorshomelab.dev/guides/usearch-scylladb-vector-search-guide/</link><pubDate>Tue, 17 Feb 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/guides/usearch-scylladb-vector-search-guide/</guid><description>&lt;h2 id="welcome-to-the-world-of-ultra-fast-vector-search"&gt;Welcome to the World of Ultra-Fast Vector Search!&lt;/h2&gt;
&lt;p&gt;Are you ready to dive into one of the most exciting areas in modern AI and data management? This guide is your comprehensive pathway to mastering &lt;strong&gt;USearch&lt;/strong&gt; – an incredibly efficient open-source vector search library – and integrating it seamlessly with &lt;strong&gt;ScyllaDB&lt;/strong&gt;, a real-time, high-performance NoSQL database. Together, they form a powerhouse for building scalable, lightning-fast AI applications.&lt;/p&gt;
&lt;h3 id="what-is-usearch-and-scylladb-vector-search"&gt;What is USearch and ScyllaDB Vector Search?&lt;/h3&gt;
&lt;p&gt;Imagine you have millions of items – perhaps images, documents, or user queries – and you want to find others that are &amp;ldquo;similar&amp;rdquo; in meaning or content, not just by exact keyword matches. This is where &lt;strong&gt;vector search&lt;/strong&gt; shines!&lt;/p&gt;</description></item><item><title>Chapter 5: Managing Active WebSocket Connections</title><link>https://ai-blog.noorshomelab.dev/chat-guide/chapter-5-connection-manager/</link><pubDate>Wed, 20 Aug 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/chat-guide/chapter-5-connection-manager/</guid><description>&lt;p&gt;Our current WebSocket endpoint only echoes messages back to the sender. A real chat application needs to handle multiple users, allowing them to join, leave, and send messages that are broadcast to all other connected users (or users in a specific room). This chapter introduces a WebSocket connection manager to address this.&lt;/p&gt;
&lt;h3 id="purpose-of-this-chapter"&gt;Purpose of this Chapter&lt;/h3&gt;
&lt;p&gt;By the end of this chapter, you will:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Understand the need for a connection manager in a real-time application.&lt;/li&gt;
&lt;li&gt;Implement a &lt;code&gt;ConnectionManager&lt;/code&gt; class to store and manage active WebSocket connections.&lt;/li&gt;
&lt;li&gt;Modify the WebSocket endpoint to use the manager for connecting, disconnecting, and broadcasting messages.&lt;/li&gt;
&lt;li&gt;Test broadcasting functionality with multiple client connections.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="concepts-explained-connection-management"&gt;Concepts Explained: Connection Management&lt;/h3&gt;
&lt;p&gt;When a client connects via WebSocket, the &lt;code&gt;WebSocket&lt;/code&gt; object represents that specific connection. To send a message to all active clients, or a subset of them, our server needs a way to keep track of these individual &lt;code&gt;WebSocket&lt;/code&gt; objects. A &lt;code&gt;ConnectionManager&lt;/code&gt; class typically serves this purpose.&lt;/p&gt;</description></item><item><title>Chapter 7: Enhancing Chat Functionality: Room-based Messaging</title><link>https://ai-blog.noorshomelab.dev/chat-guide/chapter-7-chat-rooms/</link><pubDate>Wed, 20 Aug 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/chat-guide/chapter-7-chat-rooms/</guid><description>&lt;p&gt;A single global chat channel is fun, but real-world chat applications typically feature multiple &amp;ldquo;rooms&amp;rdquo; or &amp;ldquo;channels&amp;rdquo; where users can have separate conversations. This chapter will modify our &lt;code&gt;ConnectionManager&lt;/code&gt; and WebSocket endpoint to support room-based messaging.&lt;/p&gt;
&lt;h3 id="purpose-of-this-chapter"&gt;Purpose of this Chapter&lt;/h3&gt;
&lt;p&gt;By the end of this chapter, you will:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Modify the &lt;code&gt;ConnectionManager&lt;/code&gt; to manage connections per room.&lt;/li&gt;
&lt;li&gt;Update the WebSocket endpoint to allow clients to specify a chat room.&lt;/li&gt;
&lt;li&gt;Implement broadcasting messages only to users within the same room.&lt;/li&gt;
&lt;li&gt;Create an endpoint to list available rooms.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="concepts-explained-room-based-messaging"&gt;Concepts Explained: Room-Based Messaging&lt;/h3&gt;
&lt;p&gt;Instead of a flat list of all active WebSocket connections, we&amp;rsquo;ll use a dictionary where keys are room names (e.g., &amp;ldquo;general&amp;rdquo;, &amp;ldquo;python-dev&amp;rdquo;, &amp;ldquo;random&amp;rdquo;) and values are lists of &lt;code&gt;WebSocket&lt;/code&gt; objects for users in that specific room.&lt;/p&gt;</description></item><item><title>WebSockets with React and Node.js: A Comprehensive Guide</title><link>https://ai-blog.noorshomelab.dev/guides/websockets-react-node-latest/</link><pubDate>Wed, 20 Aug 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/guides/websockets-react-node-latest/</guid><description>&lt;h1 id="mastering-websockets-with-react-and-nodejs-a-comprehensive-guide"&gt;Mastering WebSockets with React and Node.js: A Comprehensive Guide&lt;/h1&gt;
&lt;p&gt;Welcome to the exciting world of real-time web applications! In this document, you&amp;rsquo;ll embark on a journey to understand and implement WebSockets using two of the most popular technologies today: React for the frontend and Node.js for the backend. Whether you&amp;rsquo;re looking to build a chat application, a live dashboard, or an interactive gaming experience, WebSockets are a fundamental technology that will enable you to create dynamic and engaging user interfaces.&lt;/p&gt;</description></item></channel></rss>