InfoQ Homepage Reactive Programming Content on InfoQ
-
Embracing Reactive Applications on JVM: A Deep Dive Into Modern I/O Models and Vert.x
This article discusses the shift from blocking to non-blocking and asynchronous I/O models, highlighting their role in modern software development. It focuses on Vert.x, a toolkit for building reactive applications on the JVM, featuring the Multi-Reactor Pattern, Event Bus, and Verticles. Vert.x is ideal for cloud, Big Data, and IoT, as shown through benchmarks and real-world examples.
-
Spring Boot 3.2 and Spring Framework 6.1 Add Java 21, Virtual Threads, and CRaC
Spring Framework 6.1 and Spring Boot 3.2 run on Java 21. They make concurrent programming simpler and more efficient with virtual threads, as well as improving reactive programming and Kotlin coroutines. For “Scale to Zero” startup time reduction, the OpenJDK project CRaC received initial support, while the existing GraalVM Native Image integration got faster through a GraalVM release.
-
Mobile Video-Conferencing Using Jitsi
In this article, we will look at alternatives for providing video meetings on mobile devices. We take Jitsi as a popular open source option, which provides Jitsi Meet, an ad-hoc video meetings service, and JaaS, a service platform for developers. Looking at user engagement data, we see there’s no "one size fits all" solution.
-
Exploring Architectural Concepts Building a Card Game
One of the things I missed during the pandemic were my friends, the possibility to meet them, discuss with them and, why not, play cards with them. So I decided to implement an app to play Scopone with my friends and, at the same time, test “in the code” some architectural concepts which had been intriguing me for some time.
-
Deep Dive into Reactive Programming with RxJS
One of the most challenging aspects of developing any user-facing application is handling asynchronous actions such as user input and API requests cleanly and robustly. RxJS helps developers author declarative code for handling side effects and asynchronous actions with continuous data streams and subscriptions.
-
Pathpida Brings Types to Next.js and Nuxt.js Dynamic Routing with Zero Configuration
Pathpida is a library for TypeScript projects to collect dynamic routes in one place. It is a tedious task to do manually. This helps check the existence of routes in large web apps. Pathpida is optimized for Next.js (React) and Nuxt.js (Vue). Pathpida can be added to existing Next.js and Nuxt.js projects without configuration.
-
Running React Applications at the Edge with Cloudflare Workers - Q&A with Josh Larson
Running web applications at the edge shortens the latency observed by users of web applications. Flareact is an edge-rendered React framework built for Cloudflare Workers and inspired by Next.js. Flareact currently supports file-based page routing, dynamic page paths, API routes, cache policy configuration, and edge-side data fetching APIs.
-
Brahmos, a New, Small, React-Like UI Framework with Concurrent Rendering -- Q&A with Sudhanshu Yadav
Brahmos implements the known React APIs (hooks, context, concurrent mode, and more) with a different and potentially faster method that also leverages a standard feature of JavaScript: template literals. Brahmos is among the very few UI frameworks that implements the experimental concurrent mode API sponsored by React. Other frameworks may be waiting out, or discarding the feature entirely.
-
Software Architecture and Design InfoQ Trends Report—April 2020
An overview of how the InfoQ editorial team sees the Software Architecture and Design topic evolving in 2020, with a focus on fundamental architectural patterns, framework usage, and design skills.
-
Interview with Creator of Polypane, a Powerful Browser for Developers
Polypane is a powerful development web browser with many features to assist during the development of web applications and websites. We recently had the opportunity to sit down with Polypane creator Kilian Valkhof to learn more about what Polypane is, the motivation behind it, the technology used, challenges in creating the product, future direction, and much more.
-
Obscuring Complexity
One of the most important things that software architects do is manage the complexity of their systems in order to mitigate release disruption while maintaining sufficient feature velocity. When we cannot reduce complexity, we try to hide or shift it. Software architects tend to manage that complexity with the time-honored strategies covered in this article.
-
Five Android and iOS UI Design Guidelines for React Native
This article will explain why UI designers should follow platform specific guidelines while designing for multiple platforms. This can be quite a complex task, due to the variety of constraints and guidelines there are to consider. We propose five easy guidelines to design for multiple platforms focusing on React Native and without missing key usability concerns.