<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Case Study on Omid Farhang</title><link>https://omid.dev/tags/case-study/</link><description>Recent content in Case Study on Omid Farhang</description><image><title>Omid Farhang</title><url>https://omid.dev/images/bio-photo-150x150.jpg</url><link>https://omid.dev/images/bio-photo-150x150.jpg</link></image><generator>Hugo -- 0.163.3</generator><language>en-US</language><copyright>2026 Omid Farhang | All rights reserved.</copyright><lastBuildDate>Tue, 09 Jun 2026 10:00:00 +0330</lastBuildDate><atom:link href="https://omid.dev/tags/case-study/index.xml" rel="self" type="application/rss+xml"/><item><title>Building Bio-Dynamics: An Educational 3D Microbiome Lab in the Browser</title><link>https://omid.dev/2026/06/09/building-bio-dynamics-educational-3d-microbiome-lab-in-the-browser/</link><pubDate>Tue, 09 Jun 2026 10:00:00 +0330</pubDate><guid>https://omid.dev/2026/06/09/building-bio-dynamics-educational-3d-microbiome-lab-in-the-browser/</guid><description>Why I built a full-body microbiome sandbox — for education, open development storytelling, and exploring simulation and 3D outside my usual frontend lane.</description></item><item><title>Migrating from React to Angular: A 'Ship of Theseus' Case Study in Production</title><link>https://omid.dev/2026/01/01/ship-of-theseus-react-to-angular/</link><pubDate>Thu, 01 Jan 2026 02:25:59 +0330</pubDate><guid>https://omid.dev/2026/01/01/ship-of-theseus-react-to-angular/</guid><description>A detailed look at why and how we migrated a core legacy React application to Angular in a high-stakes FinTech environment using the Strangler Fig pattern.</description></item><item><title>Migrating from REST to GraphQL: A Step-by-Step Guide for Express.js and Angular</title><link>https://omid.dev/2024/08/07/migrating-from-rest-to-graphql-a-step-by-step-guide-for-expressjs-and-angular/</link><pubDate>Wed, 07 Aug 2024 02:20:56 +0330</pubDate><guid>https://omid.dev/2024/08/07/migrating-from-rest-to-graphql-a-step-by-step-guide-for-expressjs-and-angular/</guid><description>&lt;p&gt;In today&amp;rsquo;s rapidly evolving web development landscape, GraphQL has emerged as a powerful alternative to traditional REST APIs. This blog post will guide you through the process of migrating your Express.js backend and Angular frontend from REST to GraphQL, unlocking the benefits of a more flexible and efficient API architecture.&lt;/p&gt;
&lt;aside class="card card--accent card--companion companion-card"&gt;
&lt;span class="icon-circle icon-circle--lg icon-circle--gradient companion-card__icon" aria-hidden="true"&gt;
&lt;i class="fa-solid fa-cubes-stacked"&gt;&lt;/i&gt;
&lt;/span&gt;
&lt;span class="companion-card__content"&gt;
&lt;span class="section-kicker companion-card__eyebrow"&gt;Companion resource&lt;/span&gt;
&lt;strong class="companion-card__title"&gt;Companion Project&lt;/strong&gt;
&lt;span class="companion-card__description"&gt;Explore the complete working example on GitHub.&lt;/span&gt;
&lt;code class="companion-card__path"&gt;github.com/omidfarhang/example-projects/examples/graphql-express-angular-migration&lt;/code&gt;
&lt;/span&gt;
&lt;span class="companion-card__actions btn-group"&gt;
&lt;a class="btn btn--accent btn--sm" href="https://github.com/omidfarhang/example-projects/tree/master/examples/graphql-express-angular-migration" target="_blank" rel="noopener noreferrer"&gt;
&lt;i class="fa-brands fa-github" aria-hidden="true"&gt;&lt;/i&gt;
View on GitHub
&lt;/a&gt;
&lt;/span&gt;
&lt;/aside&gt;
&lt;h2 id="1-introduction"&gt;1. Introduction&lt;/h2&gt;
&lt;p&gt;REST (Representational State Transfer) has been the go-to architectural style for building web APIs for many years. However, GraphQL, developed by Facebook, offers several advantages:&lt;/p&gt;</description></item><item><title>OpenTelemetry in Angular: Distributed Tracing Setup Guide</title><link>https://omid.dev/2024/06/28/building-a-distributed-tracing-system-with-opentelemetry-in-angular-applications/</link><pubDate>Fri, 28 Jun 2024 12:31:41 +0330</pubDate><guid>https://omid.dev/2024/06/28/building-a-distributed-tracing-system-with-opentelemetry-in-angular-applications/</guid><description>Step-by-step OpenTelemetry Angular tutorial: instrument an Angular app for distributed tracing, export spans to Jaeger, and monitor microservices performance.</description></item><item><title>Building a Real-Time Collaborative Editor with Angular, Firebase, and WebRTC: A Step-by-Step Guide</title><link>https://omid.dev/2024/06/24/realtime-collaborative-editor-with-angular-firebase-webrtc/</link><pubDate>Mon, 24 Jun 2024 02:03:44 +0330</pubDate><guid>https://omid.dev/2024/06/24/realtime-collaborative-editor-with-angular-firebase-webrtc/</guid><description>&lt;p&gt;Creating a real-time collaborative text editor can be a challenging but rewarding project. In this guide, we&amp;rsquo;ll walk you through the process of building a real-time collaborative editor using Angular, Firebase, and WebRTC. By the end of this tutorial, you’ll have a working understanding of these technologies and how to integrate them to create a seamless, real-time collaborative experience.&lt;/p&gt;
&lt;aside class="card card--accent card--companion companion-card"&gt;
&lt;span class="icon-circle icon-circle--lg icon-circle--gradient companion-card__icon" aria-hidden="true"&gt;
&lt;i class="fa-solid fa-cubes-stacked"&gt;&lt;/i&gt;
&lt;/span&gt;
&lt;span class="companion-card__content"&gt;
&lt;span class="section-kicker companion-card__eyebrow"&gt;Companion resource&lt;/span&gt;
&lt;strong class="companion-card__title"&gt;Companion Project&lt;/strong&gt;
&lt;span class="companion-card__description"&gt;Explore the complete working example on GitHub.&lt;/span&gt;
&lt;code class="companion-card__path"&gt;github.com/omidfarhang/example-projects/examples/angular-collaborative-editor-firebase-webrtc&lt;/code&gt;
&lt;/span&gt;
&lt;span class="companion-card__actions btn-group"&gt;
&lt;a class="btn btn--accent btn--sm" href="https://github.com/omidfarhang/example-projects/tree/master/examples/angular-collaborative-editor-firebase-webrtc" target="_blank" rel="noopener noreferrer"&gt;
&lt;i class="fa-brands fa-github" aria-hidden="true"&gt;&lt;/i&gt;
View on GitHub
&lt;/a&gt;
&lt;/span&gt;
&lt;/aside&gt;
&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Real-time collaborative applications are increasingly popular in today&amp;rsquo;s digital world. They allow multiple users to work on the same document simultaneously, seeing each other&amp;rsquo;s changes in real time. Google Docs is a prime example of such an application. In this tutorial, we will build a similar application using modern web technologies.&lt;/p&gt;</description></item></channel></rss>