Articles like “Building a simple todo list with [framework or technology name]” won’t teach you how that framework or technology solves real-world problems and works at a large scale. This document is a curated list of technical talks and articles about real-world enterprise frontend development.
Important
As of January 2025, we've launched a website where you can browse case studies with a better UX! Please use the website for the latest updates. Entries in this README will no longer be updated and will eventually be removed completely.
- English
- AdRoll
- Aha!
- Airbnb
- ALDO
- Algolia
- Allegro
- Amazon
- Artsy
- Atlassian
- Australian Broadcasting Corporation
- Badoo
- BBC
- Betty Crocker
- Bitmovin
- blogfoster
- Bloomberg
- BuzzFeed
- Campaign Monitor
- Carbon Five
- Carousell
- cars.com
- Checkbot
- Clearleft
- Cloudflare
- Cloud Four
- CodeSandbox
- Condé Nast
- Conductor
- Datadog
- DAZN
- De Voorhoede
- DEV
- Discord
- <div>RIOTS
- DoorDash
- Dropbox
- eBay
- EdgeDB
- Electronic Arts
- Ele.me
- Etsy
- Evil Martians
- Expedia Group
- ezCater
- FARFETCH
- fastq.bio
- Figma
- Financial Times
- Flickr
- Flipkart
- Flocktory
- Futurice
- Garbarino
- GitHub
- GitLab
- Goibibo
- GOV.UK
- grammarly
- Gusto
- HealthCare.gov
- Heap
- in der Apotheke
- Infinite Red
- Insider Inc.
- Internet Archive
- Intuit
- InVision
- Khan Academy
- Kickstarter
- Klarna
- Line
- Lucidchart
- Lyft
- Mail.ru
- Mailchimp
- MDN
- Medium
- MemSQL
- Mercado Libre
- Microsoft Bing
- Microsoft To-Do
- Mixmax
- Mixpanel
- Monzo
- Mozilla
- Mud
- Myntra
- Netflix
- New Relic
- Notion
- npm
- OK GROW!
- OYO
- Oyster
- Palantir
- PayPal
- Pinafore
- Pivotal Tracker
- Plaid
- Plotly
- Product Hunt
- Proton
- Quizlet
- Quora
- REA Group
- Reaktor
- Redmart
- repl.it
- Revolut
- Roompact
- Safety Culture
- Scratch
- Sentry
- Shopify
- Skillshare
- Slack
- Snipcart
- SoundCloud
- Spectrum
- Spotify
- Stack Overflow
- stripe
- SumUp
- Superhuman
- TakeShape
- The Guardian
- The Knot Worldwide
- The New York Times
- The Telegraph
- The Times & The Sunday Times
- The U.S. Digital Service
- The Wall Street Journal
- This Also
- ThomasNet
- Thread
- Tinder
- Tines
- TinyMCE
- Tokopedia
- Treebo
- Trivago
- Tumblr
- Twitch
- Uber
- Udacity
- Unity
- Unsplash
- Vercel
- Verve
- Walmart Labs
- Wikimedia
- Wingify
- Wix
- Yelp
- YNAB
- YouTube
- Zajno
- Zynga
- 18F
- 1Password
- Miscellaneous
- Russian
- Amplifr
- Aviasales
- Avito
- auto.ru
- Badoo
- Delivery Club
- DIRECTUM
- Flocktory
- GitLab
- HeadHunter
- ISPsystem
- Joom
- Mail.Ru
- Microsoft To-Do
- Miro
- Netcracker
- OneTwoTrip
- Rambler Group
- Setka
- Skyeng
- Sports.ru
- Tinkoff
- Wrike
- Альфа-Банк
- Бюро Горбунова
- ВКонтакте
- Додо Пицца
- Леруа Мерлен
- Медуза
- Одноклассники
- Сбербанк
- Ситимобил
- Спортмастер
- Учи.ру
- Хабр
- ЦИАН
- ЮMoney (Яндекс.Деньги)
- Яндекс
- 2ГИС
- Прочее
- License
- Lazy loading Backbone collections with Promises (November 12, 2013)
- Rollup: Shared UI components at AdRoll (November 05, 2015)
- Rollup: How we use React.js and npm to share UI code at AdRoll (November 12, 2015)
- Rollup: What we have learned from sharing UI code at AdRoll (November 19, 2015)
- gulp-react-docs: From propTypes to Markdown in 3 seconds (December 21, 2015)
- How to Create a Style Guide: Start with a UI Framework (July 29, 2016)
- How to Run a Front-End Infrastructure Team (August 29, 2017)
- How I Convinced Our CTO to Switch From CoffeeScript to ES6 (September 7, 2017)
- Turbocharged JavaScript Refactoring with Codemods (April 27, 2016)
- Rearchitecting Airbnb’s Frontend (May 15, 2017)
- Migrating from Mocha to Jest (June 15, 2017)
- React Performance Fixes on Airbnb Listing Pages (December 5, 2017)
- Server Rendering, Code Splitting, and Lazy Loading with React Router v4 (January 10, 2018)
- React Native at Airbnb (June 19, 2018): The Technology, Building a Cross-Platform Mobile Team, Sunsetting React Native, What’s Next for Mobile at Airbnb
- Operationalizing Node.js for Server Side Rendering (July 18, 2018)
- How Airbnb is Moving 10x Faster at Scale with GraphQL and Apollo (December 5, 2018)
- Building (And Re-Building) the Airbnb Design System (October 30, 2019)
- ts-migrate: A Tool for Migrating to TypeScript at Scale (August 18, 2020)
- Building a Faster Web Experience with the postTask Scheduler (May 20, 2021)
- A Deep Dive into Airbnb’s Server-Driven UI System (June 29, 2021)
- Measuring Web Performance at Airbnb (December 7, 2021)
- Faster JavaScript Builds with Metro (May 24, 2022)
- Airbnb’s Trip to Linaria (June 16, 2022)
- Improving Performance with HTTP Streaming (May 17, 2023)
- Rethinking Text Resizing on Web (May 16, 2024)
- How Airbnb Smoothly Upgrades React (July 23, 2024)
- Adopting Bazel for Web at Scale (Nov 12, 2024)
- The Impact of Web Performance (February 6, 2020)
- Improving Web Performance to Mirror Engine Speed (July 26, 2017)
- Using NetInfo API to Improve Algolia’s JavaScript Client (July 30, 2019)
- Managing Frontend in the Microservices Architecture (March 12, 2016)
- Why Allegro Ads chose TypeScript (April 9, 2019)
- Page visibility and performance metrics (September 2, 2019)
- Performance of JavaScript optional chaining (November 8, 2019)
- Using ESLint to improve your app’s performance (August 11, 2020)
- Measuring Web Performance (June 8, 2021)
- Making API calls a seamless user experience (July 21, 2021)
- CSS Architecture and Performance in Micro Frontends (July 29, 2021)
- How to turn on TypeScript strict mode in specific files (September 6, 2021)
- Evolution of web performance culture (September 23, 2021)
- How we refactored the search form UI component (October 26, 2021)
- How we halved the publish size of modular AWS SDK for JavaScript clients (October 14, 2021)
- How Prime Video updates its app for more than 8,000 device types: the switch to WebAssembly increases stability, speed (January 27, 2022)
- Rendering on the Server and Client in Node.js (November 30, 2013)
- The Tech Behind Live Auction Integration (August 9, 2016)
- React Native at Artsy (August 15, 2016)
- Making Artsy Editorial Accessible (August 29, 2017)
- Helping the Web Towards OSS by Default (September 6, 2016)
- JSON Web Tokens: Artsy's Journey (October 26, 2016)
- Exploration: Front-end JavaScript at Artsy in 2017 (February 5, 2017)
- Modernizing Force (September 5, 2017)
- React Native, 2 years later (March 17, 2018)
- Keeping Artsy's dependencies up to date (November 26, 2018)
- Switch from Capybara Webkit to Chrome (November 27, 2018)
- GraphQL Stitching 101 (December 11, 2018)
- GraphQL: Union vs. Interface (January 14, 2019)
- From TSLint to ESLint, or How I Learned to Lint GraphQL Code (January 29, 2019)
- Trellisheets: How we spin up CSS for Trello sites with ease (March 1, 2016)
- A look at Trello: adopting GraphQL and Apollo in a legacy application (August 28, 2019)
- Using an event-driven architecture to improve Jira Software responsiveness (November 05, 2019)
- Scaling React server-side rendering in Jira Cloud (February 04, 2020)
- Improving performance through better architecture (June 23, 2020)
- Performance in Jira front-end: the story of a single line of code (November 16, 2020)
- Performance in Jira front-end: using modern bundles to improve load time (December 5, 2020)
- Performance in Jira front-end: solving bundle duplicates with Webpack and yarn (December 22, 2020)
- Composing Components (September 28, 2018)
- From data to DOM: Building a text rendering pipeline for React (October 23, 2019)
- Migrating the platform that powers ABC sites to TypeScript (September 30, 2021)
- How to teach a web app to speak 100 languages: the specifics of localisation (March 8, 2017)
- The painless way to collect statistics from a web-site (May 18, 2017)
- Translating interfaces into almost fifty languages: Sketch (October 17, 2017)
- Hot localisations update: part 1, part 2 (November 2017)
- From zero to Cosmos: part 1, part 2, part 3 (February 2018)
- Translating Dust templates to JSX (May 16, 2018)
- How to manage your Design Tokens with Style Dictionary (September 27, 2018)
- Optical alignment for frontend developers: why is it not the same as it is for designers and how can the process be automated (November 22, 2018)
- Generating multi-brand multi-platform icons with Sketch and a Node.js script: from the idea to the assets Sketch files and the build script and the generation of the assets (December 2018)
- Covering A/B tests with UI tests: how to avoid getting tangled up in your own code (February 22 2019)
- Design Tokens beyond colors, typography, and spacing (November 12, 2019)
- Redefining the BBC News core experience (July 22, 2016)
- HTTP/2 is easy, just turn it on… (November 7, 2017)
- How BBC Interactive Content Works Across AMP, Apps, And The Web (March 15, 2018)
- Wake Lock API case study: 300% increase in purchase intent indicators on BettyCrocker.com (May 19, 2020)
- How Bitmovin Used React/Redux to Develop Its New Dashboard (September 7, 2017)
- To Play, or Not to Play – New AutoPlay Policies for Safari 11 and Chrome 64 (September 28, 2017)
- To Play, or Not to Play #2 – Firefox blocks audible autoplay by default! (February 20, 2019)
- Jumpstart to React+Redux Development
- Centralized ESLint Configuration
- Redux For Better in-App Analytics
- Managing Complexity in Redux: Higher-Order Reducers and Async State
- How We Simplified our Tooling Setup for Node.js Projects
- How to Use the Power of Jest’s Snapshot Testing Without Using Jest
- How Bloomberg Used React Native to Develop its new Consumer App (December 15, 2016)
- wsk: A Straightforward and Maintainable Build System from the Bloomberg Graphics Team (December 12, 2017)
- 10 Insights from Adopting TypeScript at Scale (November 9, 2020)
- Micro Frontends at BuzzFeed (September 17, 2019)
- Accessible BuzzFeed (August 27, 2020)
- CLS at BuzzFeed — Part 1: Raising The Floor (November 6, 2021)
- CLS at BuzzFeed — Part 2: Getting Help From Real Users (November 6, 2021)
- CLS at BuzzFeed — Part 3: Dealing with the unpredictable (November 6, 2021)
- Fixing bugs with Outlook specific CSS (November 9, 2016)
- Better video previews for email (December 20, 2016)
- How to test accessibility of emails (June 5, 2018)
- How we made Carousell’s mobile web experience 3x faster (October 31, 2018)
- Building a Dynamic UI System at Carousell (Feb/Mar 2019): part 1, part 2 and part 3
- An Experiment with JSON Schema (April 18, 2019)
- Scalable & lightweight web screenshots with SVG (November 30, 2018)
- How to use variable fonts in the real world (January 26, 2018)
- A framework for web performance (September 20, 2018)
- How we built Origin CA: Web Crypto (May 10, 2016)
- Open Sourcing CloudFlare’s UI Framework (June 8, 2016)
- Going Global - a Localization Case Study at Cloudflare (August 23, 2017)
- How we made our page-load optimisations even faster (February 2, 2018)
- Real URLs for AMP Cached Content Using Cloudflare Workers (November 13, 2018)
- Fast Google Fonts with Cloudflare Workers (November 22, 2018)
- Migrating to React land: Gatsby (March 26, 2020)
- Moving from reCAPTCHA to hCaptcha (April 8, 2020)
- Dark Mode for the Cloudflare Dashboard (September 29, 2021)
- All Mixed Up: Isomorphic Sorting Gone Wrong (October 17, 2019) <




