English / AdRoll |
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) |
English / Aha! |
How I Convinced Our CTO to Switch From CoffeeScript to ES6 | | | (September 7, 2017) |
English / Airbnb |
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): , , , |
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) |
English / ALDO |
The Impact of Web Performance | | | (February 6, 2020) |
English / Algolia |
Improving Web Performance to Mirror Engine Speed | | | (July 26, 2017) |
Using NetInfo API to Improve Algolia’s JavaScript Client | | | (July 30, 2019) |
English / Allegro |
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) |
English / Amazon |
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) |
English / Artsy |
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) |
English / Atlassian |
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) |
English / Australian Broadcasting Corporation |
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) |
English / Badoo |
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) |
part 1 | | | Hot localisations update: , (November 2017) |
part 1 | | | From zero to Cosmos: , , (February 2018) |
Translating Dust templates to JSX | | | (May 16, 2018) |
How to manage your Design Tokens with Style Dictionary | | | (September 27, 2018) |
why is it not the same as it is for designers | | | Optical alignment for frontend developers: and (November 22, 2018) |
from the idea to the assets Sketch files | | | Generating multi-brand multi-platform icons with Sketch and a Node.js script: and (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) |
English / BBC |
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) |
English / Betty Crocker |
Wake Lock API case study: 300% increase in purchase intent indicators on BettyCrocker.com | | | (May 19, 2020) |
English / Bitmovin |
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) |
English / blogfoster |
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 | | | |
English / Bloomberg |
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) |
English / BuzzFeed |
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) |
English / Campaign Monitor |
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) |
English / Carbon Five |
Cross-Domain Browser Window Messaging with HTML5 and Javascript | | | (August 17, 2012) |
Composing Synchronous and Asynchronous Functions in JavaScript | | | (January 29, 2015) |
An AJAX Auto-Save Implementation | | | (January 24, 2018) |
English / Carousell |
How we made Carousell’s mobile web experience 3x faster | | | (October 31, 2018) |
part 1 | | | Building a Dynamic UI System at Carousell (Feb/Mar 2019): , and |
An Experiment with JSON Schema | | | (April 18, 2019) |
English / cars.com |
How Cars.com Developer Mac Heller-Ogden Convinced His Bosses to Adopt Node.js | | | (July 17, 2017) |
English / Checkbot |
Scalable & lightweight web screenshots with SVG | | | (November 30, 2018) |
English / Clearleft |
How to use variable fonts in the real world | | | (January 26, 2018) |
A framework for web performance | | | (September 20, 2018) |
English / Cloudflare |
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) |
English / Cloud Four |
All Mixed Up: Isomorphic Sorting Gone Wrong | | | (October 17, 2019) |
English / CodeSandbox |
Lessons learned refactoring Codesandbox.io from Redux to Cerebral | | | (February 7, 2018) |
English / Condé Nast |
The Why and How of Google AMP at Condé Nast | | | (August 29, 2017) |
English / Conductor |
Painless Migration From Backbone to React/Redux | | | (February 16, 2018) |
English / Datadog |
Redux-Doghouse – Creating Reusable React-Redux Components Through Scoping | | | (November 14, 2016) |
How Datadog uses Datadog to gain visibility into the Datadog user experience | | | (February 22, 2022) |
DRUIDS, the Design System that Powers Datadog | | | (September 29, 2022) |
Making Fetch Happen - Building a General-purpose Query & Render Scheduler | | | (April 17, 2023) |
How We Migrated Our Acceptance Tests to Use Synthetic Monitoring | | | (June 30, 2023) |
English / DAZN |
Testing MobX State Tree | | | (December 7, 2018) |
Handling complexity in lambda functions | | | (February 8, 2019) |
Micro-frontends, the future of Frontend architectures | | | (April 2, 2019) |
Adopting a Micro-frontends architecture | | | (April 8, 2019) |
Orchestrating micro-frontends | | | (April 12, 2019) |
Jest: Our journey into performant unit tests | | | (April 15, 2019) |
Identifying micro-frontends in our applications | | | (May 21, 2019) |
English / De Voorhoede |
Why our website is faster than yours | | | (July 16, 2016) |
English / DEV |
App shell UX with service workers and streams | | | (June 23, 2020) |
English / Discord |
Using React Native: One Year Later | | | (June 7, 2016) |
Lessons from migrating a large codebase to React 16 | | | (October 5, 2017) |
Why Discord is Sticking with React Native | | | (July 26, 2018) |
How Discord Maintains Performance While Adding Features | | | (August 2, 2018) |
How Discord Handles Two and Half Million Concurrent Voice Users using WebRTC | | | (September 10, 2018) |
Investigating Discord’s React Memory Leak | | | (August 8, 2019) |
How Discord achieves native iOS performance with React Native | | | (November 7, 2019) |
How Discord Implemented App-Wide Keyboard Navigation | | | (December 17, 2020) |
English / <div>RIOTS |
A story of how we migrated to pnpm | | | (January 18, 2022) |
English / DoorDash |
Things to Keep in Mind When Integrating a Map Feature to a Web App | | | (Septermber 11, 2020) |
Building the Caviar Web Experience Using Reusable React Components on the DoorDash Platform | | | (September 29, 2020) |
Implementing Theming in DoorDash’s Design Language System | | | (December 17, 2020) |
Serving Multiple Websites and Business Logic From a Single Platform | | | (February 9, 2021) |
Managing React State on DoorDash’s Item Modal Using the Class Pattern | | | (April 21, 2021) |
Building a Marketing Engineering Platform using Next.js, Cloudflare, and Contentful | | | (February 22, 2022) |
Improving Web Page Performance at DoorDash Through Server-Side Rendering with Next.JS | | | (March 29, 2022) |
Building a Common Web Library for Fast Implementations of Risk Frictions | | | (March 31, 2022) |
DoorDash’s Lessons on Improving Performance on High-Traffic Web Pages | | | (August 30, 2022) |
English / Dropbox |
Translating Dropbox | | | (April 18, 2011) |
Some love for JavaScript applications | | | (August 31, 2012) |
Dropbox dives into CoffeeScript | | | (September 13, 2012) |
On Reporting and Filtering | | | Content Security Policy at Dropbox (September 2015): , , , |
Enabling HTTP/2 for Dropbox web services: experiences and observations | | | (May 11, 2016) |
Annotations on Document Previews | | | (November 30, 2016) |
Preventing cross-site attacks using same-site cookies | | | (March 16, 2017) |
Deploying Brotli for static content | | | (April 6, 2017) |
Dropbox Paper: Emojis and Exformation | | | (November 15, 2017) |
Improving Document Preview Performance | | | (December 1, 2017) |
Migrating from Underscore to Lodash | | | (September 5, 2018) |
Redux with Code-Splitting and Type Checking | | | (July 16, 2019) |
Design Tooling at Scale | | | (October 12, 2019) |
The Great CoffeeScript to Typescript Migration of 2017 | | | (May 13, 2020) |
JQuery to React: How we rewrote the HelloSign Editor | | | (September 30, 2020) |
English / eBay |
Data URI Sprites | | | (July 12, 2011) |
The New eBay Motors Homepage is 2X Faster | | | (October 14, 2011) |
Five JavaScript Tips for a Sleek User Experience | | | (April 16, 2012) |
Page Loading and Rendering Optimizations | | | (June 22, 2012) |
Bandwidth-based Experience | | | (October 10, 2012) |
Early Detection of Frontend Single Points of Failure | | | (January 22, 2013) |
Front-end Renaissance at eBay | | | (January 13, 2014) |
Yet Another Responsive vs. Adaptive Story | | | (March 5, 2014) |
Don't Build Pages, Build Modules | | | (October 2, 2014) |
Async Fragments: Rediscovering Progressive HTML Rendering with Marko | | | (December 8, 2014) |
The Power of Perceived Performance | | | (January 5, 2015) |
Mobile First - A Retrospective | | | (May 13, 2015) |
How Our CSS Framework Helps Enforce Accessibility | | | (November 4, 2015) |
Packaging for Performance | | | (January 4, 2016) |
The Path to JavaScript Next | | | (March 15, 2016) |
Browse eBay with Style and Speed | | | (June 30, 2016) |
Experience the Lightning Bolt | | | (September 21, 2016) |
Effective Front-End Code Review | | | (March 2, 2017) |
Building a UI Component in 2017 and Beyond | | | (May 3, 2017) |
eBay’s Font Loading Strategy | | | (September 21, 2017) |
The Future of Marko | | | (October 26, 2017) |
Beyond HTTPS | | | (December 13, 2017) |
Integration Testing with React and Enzyme | | | (June 26, 2018) |
WebAssembly at eBay: A Real-World Use Case | | | (May 22, 2019) |
Autofill on Browsers: A Deep Dive | | | (December 3, 2019) |
Speed By A Thousand Cuts | | | (January 23, 2020) |
Front End Debugging — Tips on Resolving Issues Quickly so You Can Move on to Better Things | | | (April 7, 2020) |
Auto Effect Pattern with Redux and React Hooks | | | (April 15, 2020) |
English / Electronic Arts |
Building UI at Enterprise Scale with Web Components | | | (August 22, 2017) |
English / Ele.me |
Upgrading Ele.me to Progressive Web App | | | (May 6, 2017) |
English / Etsy |
Localizing Logically for a Global Marketplace | | | (October 21, 2011) |
Multilingual User Generated Content and SEO | | | (December 2, 2011) |
Measuring Front-end Performance With Real Users | | | (November 29, 2012) |
Responsive emails that really work | | | (March 13, 2014) |
Transitioning to SCSS at Scale | | | (February 2, 2015) |
Rebuilding the Foundation of Etsy’s Seller Tools | | | (February 5, 2015) |
How Etsy Formats Currency | | | (April 19, 2016) |
SEO Title Tag Optimization at Etsy: Experimental Design and Causal Inference | | | (October 25, 2016) |
Optimizing Meta Descriptions, H1s and Title Tags: Lessons from Multivariate SEO Testing at Etsy | | | (January 25, 2017) |
Reducing Image File Size at Etsy | | | (May 30, 2017) |
How Etsy Localizes Addresses | | | (September 26, 2018) |
Developing in a Monorepo While Still Using Webpack | | | (April 6, 2020) |
The journey to fast production asset builds with Webpack | | | (February 3, 2020) |
Etsy’s Journey to TypeScript | | | (November 8, 2021) |
English / Evil Martians |
Is React Native podium-ready? | | | (May 14, 2018) |
English / Expedia Group |
Scoping A/B Test Code in React | | | (September 4, 2018) |
Profiling React Server-Side Rendering to Free the Node.js Event Loop | | | (February 18, 2019) |
Creating Your Own Apollo Cache for Perf and Profit | | | (February 7, 2019) |
Optimizing a Page: Resource Hints, Critical CSS, and Webpack | | | (March 20, 2019) |
Contextual and Consistent Analytic Events in React | | | (April 22, 2019) |
Minimizing DOM Nodes for Performance | | | (September 24, 2019) |
Web Performance vs. User Engagement | | | (October 31, 2019) |
Migrating to WKWebView | | | (December 11, 2019) |
A (Small) Case for Function-Based React Components | | | (December 10, 2019) |
Measuring Interaction Performance with FPS Data | | | (December 16, 2019) |
File Upload with GraphQL, Apollo Server, Hapi 18+, and React | | | (January 16, 2020) |
Web Applications: Analyzing Client-Side Performance | | | (January 7, 2020) |
Schema Driven UIs | | | (January 23, 2020) |
Responsive Accessibility Guidelines at Expedia.com | | | (February 27, 2020) |
12 Tips to Improve Client Side Page Performance | | | (April 28, 2020) |
Using Webpack Module Federation to Create an App Shell | | | (June 10, 2020) |
CSS-in-JS: An Investigation | | | (July 7, 2020) |
Multi-Variate Web Optimisation Using Linear Contextual Bandits | | | (September 1, 2020) |
How Expedia.com Uses Accessibility Automation | | | (October 1, 2020) |
Sizing Android WebView iframes with JavaScript | | | (April 27, 2021) |
English / ezCater |
The case against React snapshot testing | | | (June 27, 2019) |
Saying goodbye to emotion | | | (June 1, 2021) |
English / Facebook |
Building the F8 App with React Native | | | |
BigPipe: Pipelining web pages for high performance | | | (June 4, 2010) |
Facebook has 30,000 react components. How do you manage large project directories with many components? | | | (December 31, 2013) |
The technology behind preview photos | | | (August 6, 2015) |
Improving CSS quality at Facebook and beyond | | | (June 13, 2016) |
This browser tweak saved 60% of requests to Facebook | | | (January 26, 2017) |
Building High-Quality JavaScript Tools | | | (June 2, 2017) |
React 16: A look inside an API-compatible rewrite of our frontend UI library | | | (September 26, 2017) |
Design Systems & Tools at Facebook | | | (November 15, 2017) |
Behind the Scenes: Improving the React Repository Infrastructure | | | (December 15, 2017) |
Faster input events with Facebook’s first browser API contribution | | | (April 22, 2019) |
Building the New facebook.com with React, GraphQL and Relay | | | (April 30, 2019) |
Rebuilding our tech stack for the new Facebook.com | | | (May 8, 2020) |
Making Facebook.com accessible to as many people as possible | | | (July 30, 2020) |
English / FARFETCH |
The need for speed — 1: measuring today’s web performance | | | (February 19, 2019) |
The need for speed — 2: call for metrics | | | (February 19, 2019) |
How to build a performance culture at scale | | | (September 11, 2019) |
One less second for the page, one giant leap for the business | | | (July 2, 2020) |
The art of failure II: graceful degradation | | | (September 20, 2021) |
GraphQL sessions: powering farfetch.com | | | (May 6, 2022) |
English / fastq.bio |
How We Used WebAssembly To Speed Up Our Web App By 20X | | | (April 5, 2019) |
English / Figma |
Building a professional design tool on the web | | | (December 7, 2015) |
Debugging Data Corruption with Emscripten | | | (November 7, 2016) |
WebAssembly cut Figma’s load time by 3x | | | (June 8, 2017) |
Introducing BrowserView for Electron | | | (June 29, 2017) |
Introducing: Figma to React | | | (April 26, 2018) |
Figma, faster 🏎 | | | (August 13, 2018) |
How to build a plugin system on the web and also sleep well at night | | | (August 22, 2019) |
React at 60fps: improving scrolling comments in Figma | | | (August 19, 2020) |
Inside Figma: a case study on strict null checks | | | (December 17, 2020) |
Illuminating dark mode | | | (July 21, 2022) |
The evolution of Figma’s mobile engine: Compiling away our custom programming language | | | (May 1, 2024) |
English / Financial Times |
Building The New Financial Times Web App | | | (May 23, 2013) |
Free-market software development | | | (August 21, 2015) |
SVG icons are easy but the fallbacks aren't | | | (December 1, 2015) |
A faster FT.com | | | (April 4, 2016) |
YES, your site too can (and should) be accessible | | | (May 23, 2017) |
Improving the cache performance of The Polyfill Service | | | (June 9, 2017) |
Can't You Just Make It More like Bootstrap? | | | (July 22, 2017) |
Speeding up without slowing down | | | (November 7, 2017) |
What happens when you visit ft.com? | | | (November 24, 2017) |
Tips for in-house teams in a free market software culture | | | (January 30, 2018) |
An outbreak of Accessibility anti-patterns | | | (May 18, 2018) |
This one line of Javascript made FT.com 10 times slower | | | (July 16, 2018) |
Improving the cache performance of The Polyfill Service even more | | | (January 21, 2019) |
Designing a sustainable front-end toolset for FT.com | | | (April 27, 2020) |
Animating list reordering with React Hooks | | | (August 26, 2020) |
Taming Webpackʼs content hashes | | | (June 3, 2020) |
English / Flickr |
Lessons Learned from the Flickr Touch Lightbox | | | (July 20, 2011) |
Creating an interface for geofences | | | (September 6, 2011) |
Raising the bar on web uploads | | | (April 25, 2012) |
Building an HTML5 Photo Editor | | | (April 18, 2012) |
Building The Flickr Web Uploadr: The Grid | | | (May 11, 2012) |
Parsing Exif client-side using JavaScript | | | (June 1, 2012) |
Adventures in Jank Busting: Parallax, performance, and the new Flickr Home Page | | | (June 4, 2013) |
Building Flickr’s new Hybrid Signed-Out Homepage | | | (April 23, 2014) |
Perceptual Image Compression at Flickr | | | (September 25, 2015) |
Introducing yakbak: Record and playback HTTP interactions in NodeJS | | | (April 25, 2016) |
English / Flipboard |
Layout in Flipboard for Web and Windows | | | (March 24, 2014) |
60 FPS on the mobile web | | | (February 10, 2015) |
English / Flipkart |
Building Flipkart Lite: A Progressive Web App | | | (November 11, 2015) |
English / Flocktory |
Third party libraries | | | (May 22, 2017) |
English / Futurice |
How Elm made our work better | | | (November 1, 2016) |
English / Garbarino |
Building a PWA in Argentina | | | (July 24, 2017) |
English / GitHub |
GitHub's CSS | | | (July 23, 2014) |
How GitHub is using Web Components in production | | | (September 30, 2014) |
Browser Monitoring for GitHub.com | | | (May 19, 2015) |
GitHub's CSP journey | | | (April 12, 2016) |
GitHub's post-CSP journey | | | (January 19, 2017) |
Shipping system fonts to GitHub.com | | | (February 7, 2018) |
Design Systems at GitHub | | | (July 6, 2018) |
Removing jQuery from GitHub.com frontend | | | (September 6, 2018) |
From 48k lines of code to 10—the story of GitHub’s JavaScript SDK | | | (April 9, 2020) |
How we built the GitHub globe | | | (December 21, 2020) |
How GitHub Actions renders large-scale logs | | | (March 25, 2021) |
English / GitLab |
Why We Chose Vue.js | | | (December 1, 2016) |
Our big Frontend plan revealed | | | (February 6, 2017): long term plan to make GitLab as fast and performant as possible with Vue and webpack |
How we do Vue: one year later | | | (November 9, 2017) |
How GitLab switched to Headless Chrome for testing | | | (December 19, 2017) |
Our journey in switching to native Unicode emoji | | | (May 30, 2018) |
How we iterated and improved our frontend team culture | | | (June 26, 2018) |
Why we chose ECharts for data visualizations | | | (September 30, 2019) |
How GitLab Pages made our Sketch design handoffs easier and faster | | | (November 7, 2019) |
How we created a dark UI for GitLab's Web IDE | | | (May 20, 2020) |
English / Goibibo |
How Goibibo's PWA improved conversions by 60% | | | (September 29, 2020) |
English / Google |
Designing very large (JavaScript) applications | | | (April 15, 2018) |
Building the Google Photos Web UI | | | (July 10, 2018) |
TypeScript at Google | | | (September 1, 2018) |
The Chrome Dev Summit site: case study | | | (March 12,2019) |
The new AdWords UI uses Dart — we asked why | | | (March 31, 2016) |
A Recipe for Designing Animations — Without Sacrificing Performance | | | (June 4, 2019) |
Bringing service workers to Google Search | | | (June 20, 2019) |
How we built the Chrome DevTools WebAuthn tab | | | (October 22, 2020) |
Migrating Puppeteer to TypeScript | | | (January 21, 2021) |
DevTools architecture refresh: migrating DevTools to TypeScript | | | (April 8, 2021) |
Implementing CSP and Trusted Types debugging in Chrome DevTools | | | (November 1, 2021) |
Why Google Sheets ported its calculation worker from JavaScript to WasmGC | | | (June 26, 2024) |
English / GOV.UK |
Accessibility for developers: building a frontend that everyone can use | | | (October 6, 2016) |
Patterns for accessible webchats | | | (December 9, 2016) |
How to create content that works well with screen readers | | | (February 8, 2017) |
How we’ve made GOV.UK Elements even more accessible | | | (February 28, 2018) |
What we learned from getting our autocomplete tested for accessibility | | | (May 15, 2018) |
Accessibility lessons: dealing with a large amount of form inputs | | | (April 8, 2019) |
Why the GOV.UK Design System team changed the input type for numbers | | | (February 24, 2020) |
Why videos on GOV.UK use the YouTube video player | | | (March 16, 2020) |
How we reduced CSS size and improved performance across GOV.UK | | | (December 15, 2023) |
English / grammarly |
Building Browser Extensions At Scale | | | (October 6, 2017) |
Introducing Embrace: A Framework for Building Declarative UIs | | | (September 3, 2021) |
Real-Time Collaborative Text Editing | | | Under the Hood of the Grammarly Editor: and (April 22, 2022) |
Making Grammarly Feel Native On Every Website | | | (March 7, 2022) |
part 1 | | | How Grammarly Tackles Hidden Complexity in Front-End Applications: and (March 7, 2022) |
Signals With @grammarly/focal | | | (August 21, 2023) |
English / Gusto |
Scaling Front-end Architecture | | | (June 10, 2016) |
Evolving JavaScript Part 1: Goodbye Backbone | | | (July 12, 2016) |
Evolving JavaScript Part 2: Hello React | | | (July 12, 2016) |
Evolving JavaScript Part 3: Building a React Application | | | (July 12, 2016) |
Taking off with Apollo | | | (September 12, 2018) |
How I fell out of love with HOCs | | | (December 9, 2018) |
English / HealthCare.gov |
Building a design system for HealthCare.gov | | | (August 29, 2017) |
English / Heap |
Goodbye CoffeeScript, Hello TypeScript | | | (October 7, 2015) |
Migrating To React + MobX While Shipping New Features | | | (August 16, 2017) |
How We Write Front-end Code | | | (February 20, 2018) |
Redesigning Heap Without a Feature Branch | | | (April 10, 2019) |
How we failed, then succeeded, at migrating to TypeScript | | | (October 10, 2019) |
How we leveraged ASTs and Babel to capture everything on React Native apps | | | (June 23, 2020) |
English / in der Apotheke |
Farewell, Google Maps | | | (July 18, 2018) |
English / Infinite Red |
Switching from Ava to Jest for TypeScript | | | (November 6, 2017) |
Using TypeScript to upgrade Ignite without losing my mind | | | (March 20, 2019) |
Yarn 1 vs Yarn 2 vs NPM | | | (February 6, 2020) |
Why Infinite Red uses MobX-State-Tree instead of Redux | | | (June 16, 2020) |
English / Insider Inc. |
How to style different sites with one CSS collection | | | (December 17, 2018) |
Why we got rid of all our front-end and back-end engineers | | | (February 13, 2019) |
Delightful ways to write reusable CSS using subclasses | | | (March 1 , 2019) |
English / Instagram |
React Native at Instagram | | | (February 7, 2017) |
part 1 | | | Making Instagram.com faster: (August 1, 2019), (September 6, 2019), (October 11, 2019), (November 1, 2019) |
English / Internet Archive |
Pixels vs. Ems: Users DO Change Font Size | | | (June 13, 2018) |
English / Intuit |
Making Accessibility an Integral Part of the Creative Workflow | | | (April 15, 2018) |
TurboTax Live’s Approach to a Gender-Neutral Design System | | | (February 21, 2019) |
Delivering Consistent Animations with a Design System Library | | | (April 25, 2019) |
GraphQL: Intuit’s Path to ONE API System | | | (March 13, 2019) |
English / InVision |
Sharing ESLint Across Teams | | | (April 5, 2016) |
Optimizing Webpack for Faster React Builds | | | (April 12, 2016) |
Persist Redux State by Using Sagas | | | (April 26, 2016) |
Testing Our Shared ESLint Configs | | | (May 12, 2016) |
How ESLint Saved Our Soul | | | (August 12, 2016) |
React Performance Tune-Up | | | (September 23, 2016) |
Building the inspect measurement engine | | | (July 17, 2019) |
English / Khan Academy |
Babel in Khan Academy's i18n Toolchain | | | (June 22, 2015) |
Fun with slope fields, css and react | | | (August 5, 2015) |
Copy-pasting more than just text | | | (August 31, 2015) |
i18nize-templates: Internationalization After the Fact | | | (September 28, 2015) |
Schrödinger's deploys no more: how we update translations | | | (October 12, 2015) |
Forgo JS packaging? Not so fast | | | (November 23, 2015) |
Inline CSS at Khan Academy: Aphrodite | | | (March 29, 2016) |
Migrating to a Mobile Monorepo for React Native | | | (May 29, 2017) |
Creating Query Components with Apollo | | | (June 12, 2017) |
tota11y - an accessibility visualization toolkit | | | (April 15, 2018) |
English / Kickstarter |
Namespacing Actions for Redux | | | (November 20, 2017) |
English / Klarna |
Migrating from Rails’ asset pipeline to Node’s webpack | | | (January 2, 2016) |
How removing caching improved mobile performance by 25% | | | (January 10, 2017) |
Improving Communication and Confidence with Visual Snapshot Testing | | | (March 14, 2017) |
6 Lessons learned from optimizing the performance of a Node.js service | | | (January 9, 2020) |
English / Line |
LINE MANGA: Smooth page transition with Page Stack | | | (January 18, 2018) |
Easy code-splitting with grow-loader | | | (January 24, 2018) |
English / LinkedIn |
Bringing a Modern Javascript Build Pipeline to LinkedIn | | | (January 20, 2016) |
Sleek and Fast: Speeding Up your Fat Web Client | | | (October 19, 2017) |
The Glimmer Binary Experience | | | (December 7, 2017) |
Ember Timer Leaks: The Bad Apples in Your Test Infrastructure | | | (January 3, 2018) |
Lighter than Lightweight: How We Built the Same App Twice with Preact and Glimmer.js | | | (March 12, 2018) |
LinkedIn’s approach to automated accessibility (A11y) testing | | | (May 21, 2020) |
English / Lucidchart |
IE10: How does it really stack up? | | | (November 14, 2012) |
Atomic CSS as a tool set | | | (January 31, 2014) |
The Definitive Guide to Copying and Pasting in JavaScript | | | (December 2, 2014) |
Big content in a little canvas | | | (May 19, 2015) |
Improving Angular 2 Load Times and a 29KB Hello World App | | | (September 26, 2016) |
Angular 2 and Observables: Data Sharing in a Multi-View Application | | | (November 8, 2016) |
Using Angular 2 Components In a Non-Angular App | | | (April 10, 2017) |
Converting 600k lines to TypeScript in 72 hours | | | (November 16, 2017) |
How to handle folder uploads in Angular 2+ | | | (January 3, 2018) |
JavaScriptCore – The Holy Grail of Cross Platform | | | (February 14, 2018) |
How to Actually Improve Type Safety with the TypeScript Strict Flags | | | (June 20, 2018) |
ZoneTracker: Tracking JavaScript Performance with Zone.js | | | (November 9, 2018) |
JavaScriptCore—10 Months Later | | | (January 3, 2019) |
English / Lyft |
TypeScript at Lyft | | | (September 27, 2017) |
Re-approaching Color | | | (September 21, 2018) |
Changing Lanes: How Lyft is Migrating 100+ Frontend Microservices to Next.js | | | (November 30, 2020) |
Frontend at Lyft: An Overview | | | (March 9, 2021) |
English / Mail.ru |
Improving Core Web Vitals on the Mail.ru home page resulted in an average 10% increase in conversion rates | | | (November 15, 2021) |
English / Mailchimp |
Designing automated tests for React | | | (August 10, 2019) |
English / MDN |
Refactoring MDN macros with async, await, and Object.freeze() | | | (February 7, 2019) |
English / Medium |
Why ContentEditable is Terrible | | | (May 14, 2014) |
Wait, Don’t Touch That! Mutual Exclusion Locks & JavaScript | | | (January 17, 2015) |
The curious case of the disappearing Polish S | | | (February 2, 2015) |
Five Goofy Things Medium Did That Break Accessibility | | | (June 29, 2015) |
The Unluckiest Paragraphs: A Tale of CSS and Why Parts of Medium Sometimes Disappear | | | (December 5, 2015) |
Simple Style Sheets, Or How to Improve Your Sleep by Dropping the Cascade | | | (September 28, 2016) |
2 Fast 2 Furious: migrating Medium’s codebase without slowing down | | | (March 22, 2018) |
The case of the eternal blur: a bug hunt horror novella | | | (May 2, 2018) |
GraphQL Server Design @ Medium | | | (November 2, 2018) |
English / MemSQL |
Porting 30K lines of code from Flow to TypeScript | | | (January 13, 2019) |
English / Mercado Libre |
How Mercado Libre optimized for Web Vitals (TBT/FID) | | | (September 21, 2020) |
English / Microsoft Bing |
Fast Front-End Performance for Microsoft Bing | | | (August 25, 2022) |
English / Microsoft To-Do |
How We React at Microsoft To-Do | | | (January 5, 2018) |
English / Mixmax |
Scaling Mixmax: Front-end performance | | | (May 5, 2015) |
How we built ‘instant’ autocomplete for Mixmax | | | (November 5, 2015) |
Yarn-ifying Mixmax: why and how we moved from npm to Yarn | | | (April 24, 2017) |
Using CORS policies to implement CSRF protection | | | (June 13, 2017) |
React without Redux: how we moved from Backbone to React without rewriting | | | (July 26, 2017) |
Handling 3rd-party JavaScript with Rollup: how and when to leave JS out of the bundle | | | (December 3, 2017) |
Precisely observing structural page changes | | | (December 7, 2017) |
Choosing (and using) Javascript static typing: how Mixmax Engineering adopted Flow | | | (May 15, 2018) |
To Yarn and Back (to npm) Again | | | (May 29, 2018) |
English / Mixpanel |
Straightening our Backbone: A lesson in event-driven UI development | | | (April 8, 2015) |
Making Web Components Work, or: How We Learned to Stop Worrying and Love the DOM | | | (June 12, 2018) |
English / Monzo |
Building a Bank with Next.js: How We Use Next.js at Monzo | | | (December 2, 2020) |
English / Mozilla |
The Art of UI Skeletons | | | (April 23, 2019) |
To Eleventy and Beyond | | | (October 1, 2020) |
English / Mud |
A Year of Utility Classes | | | (January 28, 2019) |
English / Myntra |
Myntra’s Web UI Journey — AMP and PWA | | | (January 31, 2018) |
English / Netflix |
HTML5 Video Playback UI | | | (October 21, 2013) |
Improving the performance of our JavaScript inheritance model | | | (May 16, 2014) |
Node.js in Flames | | | (November 19, 2014) |
JSON Graph: Reactive REST at Netflix | | | (April 1, 2015) |
Localization Technologies at Netflix | | | (June 4, 2015) |
Making Netflix.com Faster | | | (August 5, 2015) |
Crafting a high-performance TV user interface using React | | | (January 12, 2017) |
Netflix's approach to ES6 feature detection | | | (January 20, 2017) |
Pass the Remote: User Input on TV Devices | | | (May 17, 2017) |
Shop Talk podcast #264: React with Netflix | | | (May 22, 2017) |
Performance Signup in React & Transactional Apps with Redux | | | (October 25, 2017) |
Implementing Japanese Subtitles on Netflix | | | (December 11, 2017) |
Integrating imperative APIs into a React application | | | (December 20, 2017) |
Pseudo Localization @ Netflix | | | (August 6, 2018) |
Delivering Meaning with Previews on Web | | | (November 12, 2018) |
Enhancing the Netflix UI Experience with HDR | | | (September 24, 2018) |
Our learnings from adopting GraphQL | | | (December 10, 2018) |
Modernizing the Web Playback UI | | | (December 12, 2018) |
Architecting UI for Netflix Studio Technology | | | (November 14, 2019) |
English / New Relic |
Real-World JavaScript Performance Tips | | | (November 14, 2014) |
How We Architected the New Relic Mobile Web UI in React | | | (January 3, 2018) |
English / Notion |
Migrating Notion's marketing site to Next.js | | | (August 12, 2021) |
English / npm |
Re-inventing npmjs.com | | | (April 3, 2018) |
JavaScript Usage by Industry | | | (June 27, 2018) |
English / OK GROW! |
Migrating from Iron Router to FlowRouter (with Blaze) | | | (September 17, 2015) |
Where does Redux fit in Meteor? | | | (July 15, 2016) |
Real-world Unit Testing with Meteor and Jest | | | (October 17, 2017) |
Optimizing a GraphQL app using Apollo Engine | | | (February 12, 2019) |
English / OYO |
OYO on a User Experience Quest with AMP ⚡ | | | (January 11, 2018) |
Brotli vs Gzip Compression. How we improved our latency by 37% | | | (June 29, 2018) |
AMP for Email - Interactive and Dynamic Email Experiences at OYO | | | (March 26, 2019) |
Shipping ES6 in browsers without Polyfill | | | (April 17, 2019) |
Signed-Exchange: Solving the AMP URLs Display Problem | | | (May 7, 2019) |
Building Chrome Extension with ReactJs: Beginner’s Guide | | | (May 13, 2019) |
A complete implementation guide to Trusted Web Activity(TWA)- OYO Lite | | | (November 7, 2019) |
Migrating to webpack 5 to improve build time and reduce chunk sizes | | | (June 30, 2021) |
English / Oyster |
Oyster Shots on the Front End | | | (July 29, 2011) |
Using React and jQuery Together | | | (March 22, 2016) |
English / Palantir |
Scaling product design with Blueprint | | | (January 6, 2017) |
TSLint in 2019 | | | (February 19, 2019) |
English / PayPal |
Sane, scalable Angular apps are tricky, but not impossible. Lessons learned from PayPal Checkout | | | (September 26, 2015) |
Auto-shrink-wrapping in PayPal Checkout, and how it’s saved us more than once | | | (February 10, 2016) |
Dependency injection in Angular isn’t worth it. More lessons learned from scaling PayPal Checkout | | | (April 3, 2016) |
Less is more: reducing thousands of PayPal buttons into a single iframe, using zoid | | | (March 17, 2017) |
Safari’s new third party tracking rules, and enabling cross-domain data storage | | | (August 30, 2017 ) |
Reinventing cross-origin requests, without CORS | | | (September 6, 2017) |
Introducing PayPal’s open-source cross-domain javascript suite | | | (October 16, 2017) |
GraphQL: A success story for PayPal Checkout | | | (October 17, 2018) |
Why every new web app at PayPal starts with TypeScript | | | (January 21, 2019) |
Scaling GraphQL at PayPal | | | (October 30, 2019) |
Sharing UI Components at an Enterprise Level | | | (June 2, 2020) |
How Micro Frontend Has Changed Our Team Dynamic | | | (August 10, 2020) |
GraphQL at PayPal: An Adoption Story | | | (September 1, 2021) |
English / Pinafore |
Introducing Pinafore for Mastodon | | | (April 9, 2018) |
Scrolling the main document is better for performance, accessibility, and usability | | | (November 18, 2018) |
Building a modern carousel with CSS scroll snap, smooth scrolling, and pinch-zoom | | | (February 10, 2019) |
One year of Pinafore | | | (June 2, 2019) |
The joy and challenge of developing for KaiOS | | | (September 22, 2019) |
What I’ve learned about accessibility in SPAs | | | (November 5, 2019) |
English / Pinterest |
Gone In 60 Frames Per Second: A Pinterest Paint Performance Case Study | | | (June 10, 2013) |
Demystifying SEO with experiments | | | (January 27, 2015) |
How we made JavaScript testing 15x faster | | | (February 3, 2015) |
Making Pinterest HTTPS | | | (March 13, 2015) |
How we switched our template rendering engine to React | | | (November 18, 2016) |
Introducing Bonsai: an open source Webpack analyzer | | | (June 2, 2017) |
Migrating Pinterest profiles to React | | | (September 23, 2016) ( ) (November 22, 2017) |
A Pinterest Progressive Web App Performance Case Study | | | (November 30, 2017) |
Supporting React Native at Pinterest | | | (May 10, 2018) |
A one year PWA retrospective | | | (July 20, 2018) |
English / Pivotal Tracker |
Using Elm in Production at Pivotal Tracker | | | (January 31, 2017) |
Improving Accessibility in Pivotal Tracker | | | (February 1, 2018) |
English / Plaid |
Securing WebViews with Chrome Custom Tabs | | | (April 9, 2020) |
English / Plotly |
Modularizing monolithic javascript projects in plotly.js | | | (January 28, 2016) |
English / Product Hunt |
React @ Product Hunt | | | (May 30, 2017) |
GraphQL @ Product Hunt | | | (November 2, 2017) |
English / Proton |
Deploying CSS Logical Properties On Web Apps | | | (December 23, 2022) |
English / Quizlet |
Smooth Game Animations in React | | | (February 18, 2016) |
Launching A Successful Redesign For 20 Million Students | | | (June 13, 2017) |
Cypress: The future of end-to-end testing for web applications | | | (February 8, 2018) |
Now or Never: Migrating 300k LOC from Flow to TypeScript at Quizlet | | | (June 18, 2019) |
English / Quora |
Faster Paint Times | | | (August 18, 2016) |
Choosing Quora’s GraphQL client | | | (July 22, 2020) |
English / REA Group |
ReactJS – Real World Examples of Higher-Order Components | | | (May 6, 2016) |
Singletons Suck (aka Flux to Redux) | | | (August 17, 2016) |
ReactJS Performance Debugging (aka The Magic of Reselect Selectors) | | | (September 9, 2016) |
My Journey in a UI Project (aka front-end is the new back-end) | | | (June 23, 2017) |
English / Reaktor |
Refactoring 30000 lines of JS with types | | | (January 24, 2017) |
English / Reddit |
How We Built r/Place | | | (April 13, 2017) |
Why We Chose Typescript | | | (June 30, 2017) |
English / Redmart |
Angular The Hard Way #1 Organise and manage domain data | | | (April 22, 2015) |
RedMart's experience with PWA | | | (October 25, 2018) |
How we use Storybook for documentation and code reviews | | | (November 14, 2018) |
English / repl.it |
Infinite Loops | | | (January 23, 2017) |
Modular, fast, small: how we built a server-rendered IDE | | | (February 14, 2018) |
English / Revolut |
How we learned to stop worrying and love GraphQL | | | (August 8, 2019) |
The fundamentals of web development at Revolut | | | (January 4, 2021) |
English / Roompact |
Elm In Production: 25,000 Lines Later | | | (July 30, 2017) |
English / Safety Culture |
Why we moved our graphQL server from Node.js to Golang | | | (June 27, 2018) |
English / Scratch |
Porting Scratch from Flash to JavaScript: Performance, Interoperability and Extensions | | | (February 28, 2019) |
English / Sentry |
Building Sentry: Source maps and their problems | | | (July 16, 2019) |
Slow and Steady: Converting Sentry’s Entire Frontend to TypeScript | | | (April 12, 2021) |
How we trimmed the Sentry JavaScript SDK file size by 20% | | | (February 28, 2022) |
JavaScript SDK “Package Size is Massive” - So we reduced it by 29% | | | (July 19, 2022) |
Understanding the Performance Impact of Generated JavaScript | | | (July 22, 2022) |
How We Made JavaScript Stack Traces Awesome | | | (November 30, 2022) |
Sentry’s Frontend Tests: Migrating from Enzyme to React Testing Library | | | (February 23, 2023) |
How we reduced CI time by 35% with Nx Caching | | | (March 31, 2023) |
Measuring Session Replay Overhead | | | (July 5, 2023) |
How We Reduced Replay SDK Bundle Size by 35% | | | (November 14, 2023) |
English / Shopify |
How 17 lines of code improved shopify.com loading by 50% | | | (May 24, 2017) |
Building Shopify mobile with native and web technology | | | (September 29, 2017) |
Designing a GraphQL API | | | (June 18, 2018) |
Want to Improve UI Performance? Start by Understanding Your User | | | (October 20, 2019) |
How We Built Hydrogen: A React Framework for Building Custom Storefronts | | | (June 22, 2022) |
English / Skillshare |
How We Ditched Redux for MobX | | | (July 2, 2018) |
English / Slack |
Reducing Slack’s memory footprint | | | (March 3, 2017) |
TypeScript at Slack | | | (April 11, 2017) |
Rebuilding Slack’s Emoji Picker in React | | | (May 23, 2017) |
Getting to Slack faster with incremental boot | | | (July 5, 2016) |
Localizing Slack | | | (September 12, 2017) |
Rebuilding slack.com | | | (October 11, 2017) |
Keep webpack Fast: A Field Guide for Better Build Performance | | | (January 17, 2018) |
When a rewrite isn’t: rebuilding Slack on the desktop | | | (July 22, 2019) |
Service Workers at Slack: Our Quest for Faster Boot Times and Offline Support | | | (August 29, 2019) |
The Gradual Design System: How We Built Slack Kit | | | (September 12, 2019) |
Building Dark Mode on Desktop | | | (September 24, 2019) |
Gantry: Slack’s Fast-booting Frontend Framework | | | (October 23, 2019) |
A Day in the Life of a Frontend Product Engineer at Slack | | | (February 5, 2020) |
How Slack changed the way it designs accessible frontend components | | | (May 2020) |
The Unsuspecting Beauty & Complexity of Web Forms | | | (September 15, 2020) |
part 1 | | | Creating a React Analytics Logging Library: (November 7, 2020) and (December 16, 2020) |
Managing Focus Transitions in Slack | | | (July 13, 2021) |
English / Snipcart |
The Story of our Progressive Migration from Backbone to Vue.js | | | (July 20, 2017) |
English / SoundCloud |
Front-end JavaScript bug tracking | | | (November 21, 2011) |
Building The Next SoundCloud | | | (June 14, 2012) |
Smooth image loading by upscaling | | | (February 20, 2014) |
React Native at SoundCloud | | | (August 3, 2016) |
Garbage Collection in Redux Applications | | | (January 24, 2019) |
Playback on Web at SoundCloud | | | (May 3, 2019) |
English / Spectrum |
Tech Choices I Regret at Spectrum | | | (January 16, 2019) |
English / Spotify |
Spotify Wrapped 2018 — Technical Case Study | | | (December 18, 2018) |
Building Spotify’s New Web Player | | | (March 25, 2019) |
(Right to Left (The Mirror World | | | (April 15, 2019) |
web-scripts – creating NPM libraries in a snap at Spotify | | | (July 3, 2019) |
Reimagining Design Systems at Spotify | | | (December 16, 2019) |
English / Stack Overflow |
HTTPS on Stack Overflow: The End of a Long Road | | | (May 22, 2017) |
Building dark mode on Stack Overflow | | | (March 31, 2020) |
English / stripe |
Connect: behind the front-end experience | | | (June 19, 2017) |
A new approach to mocking GraphQL data: how we power React component tests and examples at Stripe | | | (December 11, 2018) |
Designing accessible color systems | | | (October 15, 2019) |
To design and develop an interactive globe | | | (September 1, 2020) |
Migrating millions of lines of code to TypeScript | | | (May 20, 2022) |
English / SumUp |
10 lessons learned building SumUp’s design system | | | (August 15, 2019) |
English / Superhuman |
Delightful search: more than meets the eye | | | (May 5, 2017) |
English / TakeShape |
Why we switched from Yarn to pnpm | | | (June 9, 2020) |
English / The Guardian |
What we learnt from our mistakes in 2016 | | | (December 18, 2016) |
Revisiting the rendering tier | | | (April 4, 2019) |
Migrating the Guardian website to React | | | (December 8, 2019) |
English / The Knot Worldwide |
Rebuilding the Guest List Manager with React + MobX at The Knot | | | (June 19, 2017) |
React Native @ The Knot | | | (February 8, 2019) |
React Native @ The Knot: A Designer’s Perspective | | | (February 13, 2019) |
English / The New York Times |
The Technology Behind the NYTimes.com Redesign | | | (January 8, 2014) |
Improving Article Accessibility | | | (June 24, 2014) |
Building a Cross Platform 360-degree Video Experience at The New York Times | | | (November 11, 2016) |
React, Relay and GraphQL: Under the Hood of The Times Website Redesign | | | (June 30, 2017) |
GraphQL in real life | | | (April 19, 2019) |
How We Implemented a Baseline Grid Using CSS | | | (November 21, 2019) |
A More Accessible Web | | | (February 25, 2021) |
English / The Telegraph |
React Serverside rendering : build slicker apps with better SEO ranking | | | (September 10, 2018) |
Improving third-party web performance at The Telegraph | | | (April 30, 2019) |
Improving Cumulative Layout Shift at Telegraph Media Group | | | (June 14, 2021) |
English / The Times & The Sunday Times |
Building the UI for the new The Times website | | | (March 30, 2016) |
English / The U.S. Digital Service |
Building Forms Faster on Vets.gov | | | (June 2, 2017) |
English / The Wall Street Journal |
Making WSJ.com more accessible | | | (August 3, 2016) |
English / This Also |
Fixing HTML Video on Mobile | | | (July 14, 2016) |
English / ThomasNet |
How We Adopted CSS Grid at Scale | | | (March 1, 2018) |
English / Thread |
Dealing with legacy code in React | | | (May 10, 2018) |
Searching and sorting text with diacritical marks in JavaScript | | | (August 29, 2018) |
English / Tinder |
A Tinder Progressive Web App Performance Case Study | | | (December 24, 2017) |
Building Tinder Online | | | (February 9, 2018) |
English / Tines |
Our approach to CSS and how we chose it | | | (publication date is unknown) |
Understanding why our build got 15x slower with Webpack 5 | | | (publication date is unknown) |
English / TinyMCE |
TinyMCE is going mobile | | | (March 31, 2017) |
Benefits of gradual strong typing in JavaScript | | | (January 25, 2019) |
English / Tokopedia |
A Tokopedia Mobile Web Performance Case Study | | | (May 22, 2020) |
How focusing on web performance improved Tokopedia's click-through rate by 35% | | | (October 13, 2020) |
English / Treebo |
A React And Preact Progressive Web App Performance Case Study: Treebo | | | (September 13, 2017) |
Redux Middlewares — An approach to cancel redux actions | | | (May 4, 2018) |
How do we design for an operations heavy product? | | | (May 31, 2018) |
Iconography for Treebo | | | (August 13, 2018) |
Improving User Experience with AMP⚡- A Treebo Case Study | | | (March 16, 2019) |
A Tale of Brotli Compression | | | (January 20, 2020) |
GraphQL at Treebo | | | (October 23, 2020) |
English / Trivago |
Designing for RTL platforms - A flipped layout | | | (April 27, 2015) |
Risk-free Migration From Assetic to Webpack | | | (May 28, 2015) |
Speeding up webpack performance with parallel builds | | | (December 15, 2015) |
Large Scale CSS Refactoring at trivago | | | (February 2, 2016) |
Dropping IE8 Support: Consequences for JavaScript | | | (June 1, 2016) |
Thoughts on Atom Building in the Pattern Library | | | (June 16, 2016) |
An Inline SVG Icon System For Our Hotel Search Application | | | (September 5, 2016) |
CSS done right - Post RTLCSS | | | (July 7, 2017) |
Accessibility at trivago | | | (September 26, 2017) |
trivago just made filtering faster and more accessible, but why and how? | | | (December 22, 2017) |
Melody - the sound of JavaScript for our Hotel Search | | | (June 28, 2018) |
Building fast and reliable web applications | | | (October 12, 2018) |
Presenting babel-plugin-cloudinary | | | (April 2, 2019) |
trivago Magazine's Journey to Server-Side Rendering | | | (January 29, 2020) |
The First Prettier Plugin For Twig is Here | | | (March 10, 2020) |
Exploring the Page Visibility API for Detecting Page Background State | | | (November 17, 2020) |
Rethinking the Next-gen Analytics Web App at trivago | | | (February 9, 2021) |
Designing Marketing Emails via predefined Modules in Salesforce Email Studio | | | (April 19, 2021) |
WARP - A Web Application Rewrite Project | | | (May 16, 2022) |
3 Things We Learned When Switching to TypeScript | | | (August 1, 2022) |
End-to-end tests retry strategies | | | (September 27, 2023) |
English / Tumblr |
Moving things out of critical rendering path | | | (February 19, 2016) |
The Road to Webpack | | | (April 29, 2016) |
Flow and TypeScript | | | (September 7, 2017) |
Using srcset and sizes to make responsive HTML5 images | | | (March 5, 2018) |
A Big New Beautiful Future for the Web at Tumblr | | | (April 5, 2018) |
How we wrote our own Service Worker | | | (February 1, 2019) |
We’re making Tumblr more accessible! | | | (January 17, 2019) |
English / Twitch |
Improving Chat Rendering Performance | | | (August 8, 2016) |
Investigating React Native | | | (April 25, 2017) |
Beyond Purple | | | (December 3, 2019) |
|
View Source: Twitter.com | | | (January 1, 2017) |
How we built Twitter Lite | | | (April 6, 2017) |
Infinite List and React | | | (April 9, 2017) |
Twitter Lite and High Performance React Progressive Web Apps at Scale | | | (April 11, 2017) |
The Twitter Lite team about their use of Node.js | | | (April 12, 2017) |
Redux modules and code-splitting | | | (February 02, 2018) |
How using component-based design helps us build faster | | | (July 16, 2019) |
English / Uber |
Powering UberEATS with React Native and Uber Engineering | | | (March 28, 2017) |
Building m.uber: Engineering a High-Performance Web App for the Global Market | | | (June 27, 2017) |
Javascript @ Uber | | | (July 10, 2017) |
Building a More Seamless Web Booking Flow for Uber | | | (July 25, 2019) |
Best Practices for Unit Testing in React Version 16 | | | (August 29, 2019) |
Counting Calories: How We Improved the Performance and Developer Experience of UberEats.com | | | (February 12, 2020) |
English / Udacity |
How a Fixed-Width Button Can Get Your Company Trending on Reddit for All the Wrong Reasons: A Front-End Developer Tale | | | (April 11, 2016) |
React Native: A retrospective from the mobile-engineering team at Udacity | | | (July 3, 2018) |
Udacity’s Front-End Tech Stack | | | (July 18, 2016) |
English / Unity |
WebAssembly is here! | | | (August 15, 2018) |
WebAssembly Load Times and Performance | | | (September 17, 2018) |
English / Unsplash |
How we gradually migrated to TypeScript at Unsplash | | | (March 14, 2018) |
English / Vercel |
How we made the Vercel Dashboard twice as fast | | | (August 9, 2022) |
Designing the Vercel virtual product tour | | | (June 2, 2023) |
Design Engineering at Vercel | | | (March 29, 2024) |
How Vercel adopted microfrontends | | | (October 22, 2024) |
English / Verve |
GraphQL: A Retrospective | | | (November 28, 2018) |
English / Walmart Labs |
React Native at WalmartLabs | | | (December 19, 2016) |
Cutting Dev Time in Half With Invalid User Input Prevention | | | (October 25, 2017) |
Migrating Angular 1.x apps to React — The Hybrid Way! | | | (November 15, 2017) |
Migrating Large Enterprise to NodeJS | | | (December 9, 2017) |
Primer on Front End Automation | | | (July 27, 2018) |
Lazy Loading Images with IntersectionObserver | | | (September 10, 2018) |
Midway: Walmart’s mocking journey… | | | (October 5, 2018) |
Infinite Scroll’ing the right way | | | (April 2, 2019) |
Delivering ReactJS applications at scale | | | (August 26, 2019) |
Turbocharging Walmart.com | | | (April 9, 2020) |
Differential Serving — Food for latest browsers | | | (June 23, 2020) |
|
Creative Techniques for Loading Web Pages Faster | | | (January 17, 2012) |
Investigating a performance improvement | | | (June 2, 2017) |
Improving time-to-logo performance with preload links | | | (June 7, 2017) |
Beacons | | | (August 16, 2017) |
Measuring Wikipedia page load times | | | (January 9, 2018) |
mustache.js replaced with JavaScript template literals in Extension:Popups | | | (April 3, 2018) |
Extension:Popups (Page Previews) front-end tooling | | | (April 19, 2018) |
Mobile web performance: the importance of the device | | | (June 22, 2018) |
Why performance matters | | | (December 12, 2018) |
Migrating code from MediaWiki's ResourceLoader to Webpack | | | (March 13 2019) |
Evaluating Element Timing for Images | | | (April 10, 2019) |
Performance perception: how satisfied are Wikipedia users? | | | (May 29, 2019) |
Performance perception: the effect of late-loading banners | | | (June 13, 2019) |
Performance perception: correlation to RUM metrics | | | (June 17, 2019) |
Tracking down slow event handlers with Event Timing | | | (June 19, 2019) |
Wikipedia's JavaScript initialisation on a budget | | | (Septemper 18, 2019) |
Measuring Long Tasks and First Input Delay | | | (December 21, 2019) |
Analyzing Wikipedia's Search Performance | | | (April 5, 2021) |
300ms Faster: Reducing Wikipedia's Total Blocking Time | | | (May 21, 2023) |
English / Wingify |
jQuery Promises: The answer to PostMessage's asynchrony | | | (June 17, 2013) |
How We Made The Animated A/B Testing Guide | | | (July 8, 2013) |
Getting 60 FPS using Chrome devtools | | | (July 29, 2013) |
Overcoming the Challenges of Performance Testing Single-page Apps | | | (January 29, 2015) |
Testing AngularJS Apps End to End Using Protractor | | | (February 13, 2015) |
A layout trick | | | (April 4, 2016) |
Speeding Up VWO | | | (September 17, 2016) |
Migrating towards Yarn and Webpack | | | (October 4, 2017) |
Why we've removed Inheritance/Extend from SASS & you should do the same! | | | (November 30, 2017) |
Automated Heatmap Verification E2E using Selenium and Canvas | | | (April 3, 2018) |
English / Wix |
Taking CSS To Scale: A Pragmatic Approach | | | (July 13, 2016) |
Building a React Native App for 80 Million Users | | | (October 1, 2016) |
The Story of Making Wix Accessible | | | (December 14, 2017) |
Improving load time for 100 million websites | | | (June 26, 2018) |
Trim the Fat From Your Bundles Using Webpack Analyzer & React Lazy/Suspense | | | (September 2, 2019) |
How Wix improved website performance by evolving their infrastructure | | | (March 10, 2021) |
When life gives you lemons, write better error messages | | | (September 12, 2022) |
English / Yelp |
Whoa! That Embedded Web View Looks Hot in Your iOS App! | | | (November 7, 2013) |
CSS in the Age of React: How We Traded the Cascade for Consistency | | | (March 5, 2018) |
Organizing and Securing Third-Party CDN Assets at Yelp | | | (November 20, 2019) |
Server Side Rendering at Scale | | | (February 22, 2022) |
Migrating from Styleguidist to Storybook | | | (July 6, 2022) |
Writing Emails Using React | | | (July 20, 2022) |
Gondola: an internal PaaS architecture for frontend app deployment | | | (March 3, 2023) |
English / YNAB |
Progressive Conversion of TypeScript Namespaces to Modules | | | (September 23, 2019) |
part 1 | | | Semantic Colors for Designers and Developers: , and (February 12, 2020) |
How we use OpenAPI / Swagger for the YNAB API | | | (March 16, 2020) |
English / YouTube |
Page Weight Matters | | | (December 21, 2012) |
Polymer @ YouTube | | | (August 22, 2017) |
A Conspiracy To Kill IE6 | | | (May 1, 2019) |
Building a Better Web - Part 1: A faster YouTube on web | | | (October 20, 2022) |
English / Zajno |
Visualizing money: how we explained a complex financial product using animation | | | (September 25, 2018) |
English / Zynga |
Why & How Words With Friends Is Adopting React Native | | | (September 17, 2018) |
React Native Stability Monitoring | | | (May 14, 2019) |
English / 18F |
Building a large-scale design system: How we created a design system for the U.S. government | | | (October 3, 2017) |
English / 1Password |
From dark to light and back again | | | (November 8, 2018) |
How we used esbuild to reduce our browser extension build times by 90% | | | (May 30, 2024) |
English / Miscellaneous |
PWA Stats | | | |
Web Performance Optimization Stats | | | |
Production Web Apps Performance Study Q4/16 - Q1/17 | 174 | almost 8 years ago | (January 21, 2017) |
Case study: improving a popular library’s size for webpack users | | | (June 23, 2017) |
Case study: analyzing the Walmart site performance | | | (April 27, 2018) |
part 1 | | | Web Components for Enterprise (July 2019): and |
Frontend at scale | | | : leaders at Atlassian, Canva, Tinder, and Vimeo discuss frameworks, tooling, and rapidly evolving technologies (May 2020) |
Introducing emoji-picker-element: a memory-efficient emoji picker for the web | | | (June 28, 2020) |
Building an accessible emoji picker | | | (July 1, 2020) |
How ZDF created a video PWA with offline and dark mode | | | (October 7, 2020) |
NDTV achieved a 55% improvement in LCP by optimizing for Core Web Vitals | | | (October 27, 2020) |
Rakuten 24’s investment in PWA increases user retention by 450% | | | (November 17, 2020) |
JD.ID improves their mobile conversion rate by 53% with caching strategies, installation, and push notifications | | | (November 24, 2020) |
PWA users are 2.5x more likely to purchase Gravit Designer PRO | | | (December 8, 2020) |
Clipchamp's video editor PWA installs see a 97% monthly growth | | | (December 8, 2020) |
How Zalando reduced performance feedback time from 1 day to 15 minutes with Lighthouse CI | | | (April 13, 2021) |
Mainline Menswear implements PWA and sees a 55% conversion rate uplift | | | (April 20, 2021) |
How Swappie increased mobile revenue by 42% by focusing on Core Web Vitals | | | (September 15, 2021) |
How Terra improved user engagement thanks to Dark Mode | | | (December 18, 2021) |
Russian / Amplifr |
Принципы разработки Амплифера | | | (2019) |
Как Амплифер использует Logux — инструмент для связи клиента и сервера | | | (5 марта 2020) |
Russian / Aviasales |
Как мы строим веб-платформу в Авиасейлс | | | (4 ноября 2021) |
Russian / Avito |
Фронтенд в Avito | | | (13 декабря 2015) |
Фронтенд для миллионов | | | (24 июня 2017) |
Дизайн-платформа в Avito | | | (8 апреля 2017) |
Скриншоты как сервис | | | (7 марта 2018) |
Unit-тестирование скриншотами: преодолеваем звуковой барьер | | | (14 марта 2018) |
Масштабируемая архитектура фронтенда | | | (7 апреля 2018) |
Каталог компонентов: переосмысление | | | (19 мая 2018) |
Avito Online Frontend: Infrastructure | | | (11 декабря 2018) |
Avito Online Frontend: Performance | | | (18 декабря 2018) |
Жесть для Jest | | | (17 августа 2019) |
Как мы нарисовали на карте несколько тысяч интерактивных объектов без вреда для перформанса | | | (29 июля 2020) |
Webpack в дикой природе | | | (20 ноября 2020) |
Russian / auto.ru |
Полный цикл тестирования React-приложений | | | (14 июля 2019) |
Russian / Badoo |
Многоязычный Badoo: «трудности перевода» | | | (22 мая 2014) |
Специфика верстки мультиязычных веб-приложений | | | (26 марта 2015) |
Как собрать статистику с веб-сайта и не набить себе шишек | | | (29 марта 2017) |
Работаем с API по-взрослому | | | (14 апреля 2017) |
Покрываем A/B-тесты UI-тестами. Как не запутаться в собственном коде | | | (26 декабря 2018) |
Часть 1 | | | Sketch + Node.js: генерируем иконки для множества платформ и брендов. (27 февраля 2019) и (12 марта 2019) |
Локализация приложений: как мы подружили перевод и разработку | | | (23 января 2020) |
Дизайн-токены способны на большее: создаем единый источник информации о компонентах UI | | | (12 марта 2020) |
Как перенести на TypeScript большую кодовую базу React UI-компонентов | | | (9 сентября 2020) |
Russian / Delivery Club |
Микрофронтенды: разделяй и властвуй | | | (14 апреля 2021) |
Russian / DIRECTUM |
Опыт перевода большого проекта с Flow на TypeScript | | | (1 августа 2019) |
Russian / Flocktory |
Разработка сторонних библиотек | | | (22 мая 2017) |
Russian / GitLab |
Методы борьбы с legacy-кодом на примере GitLab | | | (10 декабря 2019) |
Russian / HeadHunter |
Нянчим проект на React-redux с пелёнок | | | (21 сентября 2016) |
Качество кода фронтенда в HH | | | (4 февраля 2019) |
Как мы пилили серверный рендеринг и что из этого вышло | | | (28 марта 2019) |
Перфоманс фронтенда как современное искусство: графики, код, кулстори | | | (17 сентября 2020) |
«Продам гараж»: фронт и реклама в hh.ru | | | (14 апреля 2021) |
Russian / ISPSystem |
Обновляем Angular до 6-ой версии в проекте без использования CLI | | | (16 мая 2018) |
Как организовать собственный репозиторий модулей Node.js с блэкджеком и версионностью | | | (25 июля 2018) |
Как разделить фронтенд и бэкенд, сохранив взаимопонимание | | | (11 апреля 2019) |
От библиотеки компонентов к дизайн-системе | | | (23 июня 2020) |
Ленивая подгрузка переводов с Angular | | | (22 июля 2020) |
Russian / Joom |
Автоматизируем локализацию макетов в Figma | | | (29 декабря 2020) |
Пошаговая инструкция: как с Node.js организовать иконки из Figma в проекте | | | (30 декабря 2022) |
Russian / Mail.Ru |
Разработка собственного решения: риски и ответственность | | | (26 ноября 2015) |
Frontend: Разработка и поддержка | | | (6 сентября 2016) |
Архитектура фронтенда крупного проекта, как она есть | | | (19 апреля 2018) |
запись доклада | | | WebAuthn в реальной жизни: (27 ноября 2019), (20 февраля 2020) |
Кастомизация компонентов Ant Design и оптимизация бандла | | | (11 декабря 2020) |
Адаптивный layout — как переверстать весь проект, не перевёрстывая его | | | (24 сентября 2021) |
Russian / Microsoft To-Do |
Как Microsoft To-Do использует React | | | (18 июня 2018) |
Russian / Miro |
Как мы учились рисовать тексты на Canvas | | | (3 июля 2019) |
Как мы боролись за байты на фронтенде. Усмиряем прожорливый виджет рисования и помогаем iPad его переварить | | | (6 июля 2021) |
Russian / Netcracker |
Выбранный UI-фреймворк – вред. Архитектурные требования – профит | | | (20 июля 2017) |
Микросервисный фронтенд — современный подход к разделению фронта | | | (21 августа 2018) |
Russian / OneTwoTrip |
9 лет в монолите на Node.JS | | | (9 июля 2019) |
Как мигрировать с mocha на jest в 14 простых шагов — и зачем | | | (31 января 2020) |
Russian / Rambler Group |
Как мы разогнали мобильную Lenta.ru до скорости света | | | (31 марта 2016) |
Проектирование дизайн-системы Рамблера | | | (18 июня 2018) |
Опыт Rambler Group: как мы начали полностью контролировать формирование и поведение фронтовых React компонентов | | | (12 июля 2018) |
Apollo: 9 месяцев — полет нормальный | | | (27 июля 2018) |
Способы синхронизации вкладок браузера | | | (7 сентября 2018) |
Маршрутизация в большом приложении на React | | | (27 сентября 2018) |
Russian / Setka |
Разработка Rich Text Editor: проблемы и решения | | | (5 марта 2018) |
Russian / Skyeng |
Как масштабировать сложный Single Page Application | | | (5 июня 2017) |
цели, планы и правила переноса элементов | | | Переход с AngularJS на Angular (февраль 2018): , , |
От Skype до WebRTC: как мы организовали видеосвязь через веб | | | (3 апреля 2019) |
Как мы подружили SCSS с CSS Variables на примере c темизацией UI Kit | | | (9 июля 2019) |
Russian / Sports.ru |
Как в Sports.ru писали свой WYSIWYG-редактор | | | (13 марта 2020) |
Russian / Tinkoff |
Как мы разрабатываем новый фронтенд Tinkoff.ru | | | (23 июня 2016) |
Создание Tinkoff Design System. Первые шаги | | | (18 апреля 2017) |
Создание Tinkoff Design System. UI Kit, версионирование и витрина компонентов | | | (9 октября 2017) |
Как организовать работу над библиотекой общих компонентов | | | (25 сентября 2019) |
WARNING: sanitizing HTML stripped some content и как с ним правильно бороться | | | (27 сентября 2019) |
Как заопенсорсить npm-пакет с нормальным деплоем, CI и демо (без потери радости к жизни) | | | (30 сентября 2019) |
Компоненты-агностики в Angular | | | (25 октября 2019) |
«Шакал»: сжимаем фронтенд | | | (7 ноября 2019) |
часть 1 | | | Как мы распилили монолит: , , , (август–декабрь 2020) |
Russian / Wrike |
Чем плох JavaScript в большом проекте? С какими проблемами мы столкнулись и как их решали | | | (16 февраля 2016) |
Как отрефакторить 2 500 000 строк кода и не сойти с ума | | | (5 июня 2017) |
Два года с Dart: о том, как мы пишем на языке, который ежегодно «хоронят» | | | (15 июня 2017) |
DIY: Как мы делали «живое» расписание для Codefest X | | | (18 апреля 2019) |
10 верстальщиков на 30 команд. Вы рехнулись? | | | (21 мая 2019) |
Как настроить веб-аналитику на AMP страницах | | | (26 июня 2019) |
Russian / Альфа-Банк |
Предъявите паспорт | | | (18 августа 2017) |
БЭМ + React: гибкая архитектура дизайн-системы | | | (23 октября 2017) |
Изоморфное приложение React JS + Spring Boot | | | (27 октября 2017) |
Атомарные SPA | | | (7 апреля 2018) |
Тёмная сторона дизайн-системы и что с ней делать | | | (16 марта 2020) |
Russian / Бюро Горбунова |
Как в книгах Бюро тяжёлые картинки выгружаются из памяти, чтобы браузер не тормозил | | | (29 июня 2017) |
Russian / ВКонтакте |
React со скоростью света: не совсем обычный серверный рендеринг | | | (2 июня 2017) |
Как оседлать радугу: история создания тёмной темы | | | (29 апреля 2019) |
Баги, которые вы никогда не встретите | | | (26 ноября 2019) |
Бенчмарки VKUI и других ребят из UI-библиотек | | | (26 мая 2021) |
Russian / Додо Пицца |
Додо Пицца: собственная касса на веб-технологиях | | | (14 октября 2019) |
Лошадь сдохла – слезь: переход с tslint на eslint | | | (29 октября 2019) |
Russian / Леруа Мерлен |
Опыт интеграции веб-компонентов на сайт Леруа Мерлен | | | (18 февраля 2020) |
Russian / Медуза |
Веб-пуш уведомления в Медузе | | | (10 декабря 2015) |
AMP, Instant Articles, Instant View, whut? | | | (23 ноября 2016) |
Как использовать кастомные шрифты в вебе и не сойти с ума | | | (1 декабря 2016) |
Подкасты «Медузы» | | | (21 сентября 2017) |
Как техотдел «Медузы» решил оптимизировать картинки — а в процессе переделал сайт, админку и подход к интерфейсу | | | (13 июля 2020) |
Russian / Одноклассники |
Архитектура и платформа проекта Одноклассники | | | (21 марта 2011) |
Как мы оптимизировали социальную кнопку | | | (26 августа 2013) |
Часть 1 | | | Новый фронтенд Одноклассников: запуск React в Java. и (январь–февраль 2020) |
Russian / Сбербанк |
За закрытой дверью фронтенда Единой фронтальной системы (ЕФС) | | | (7 апреля 2017) |
Redux как сердце архитектуры фронтенда Единой фронтальной системы | | | (4 мая 2017) |
Работа с периферией из JavaScript: от теории к практике | | | (15 июня 2017) |
Как работают приложения Сбербанк Онлайн: Workflow API и фрэймворки | | | (18 апреля 2018) |
Russian / Ситимобил |
Хороший ли выбор Svelte для реализации виджета? | | | (28 мая 2020) |
Russian / Спортмастер |
Frontend в Sportmaster Lab | | | (4 декабря 2020) |
Russian / Учи.ру |
Интерфейсы для тех, кто еще не читает. Принципы проектирования детского UX-UI | | | (24 августа 2020) |
Единый UI-кит и синхронизация дизайна в Учи.ру. Часть 1 | | | (20 февраля 2021) |
Russian / Хабр |
Как мы ускоряли комментарии Хабра | | | (25 ноября 2021) |
Russian / ЦИАН |
Микросервисный фронтенд | | | (7 ноября 2018) |
доклад | | | Как разрабатывать сотни A/B-экспериментов: , (28 мая 2019) |
Внедряем Sign in with Apple — систему авторизации от Apple | | | (8 ноября 2019) |
Micro-frontends. Асинхронный подход к мультикомандной разработке | | | (28 августа 2020) |
Время менять шапки: ускорение мобильной поисковой выдачи Циан | | | (11 января 2021) |
Russian / ЮMoney (Яндекс.Деньги) |
Прототипирование на продакшн-технологиях | | | (26 октября 2017) |
Почему Node.js в качестве основы фронтенда – это круто | | | (31 июля 2017) |
Создание NPM-модуля Яндекс.Кассы под Node.js — опыт Lodoss Team | | | (1 февраля 2018) |
Фронтенд как у сына маминой подруги | | | (26 апреля 2018) |
Реактивный фронтенд. История о том, как мы снова всё переписали | | | (15 июня 2018) |
Jenkins на службе фронтенд-разработки | | | (22 февраля 2018) |
Обзор архитектуры фронтенда ЮMoney | | | (15 декабря 2020) |
Russian / Яндекс |
Как инкрементальные обновления влияют на скорость загрузки. Опыт Яндекс.Почты | | | (6 ноября 2014) |
Accessibility. Как мы делаем Яндекс доступным людям с ограниченными возможностями и почему считаем это важным | | | (21 мая 2015) |
Лекция Виталия Харисова «10k» про лёгкую версию поиска для медленных соединений и способы оптимизации кода, позволяющие уложиться в 10 килобайт | | | (22 апреля 2017) |
Как создавалась карта с голосами болельщиков для Олимпиады | | | (20 августа 2017) |
Как мы делали «нарратив» – новый формат публикаций в Яндекс.Дзене | | | (16 февраля 2018) |
React в Яндекс Поиске. Новая архитектура фронтенда СЕРПа | | | (27 октября 2018) |
Бэкенд для фронтенда, или как в Яндекс.Маркете создают API без костылей | | | (1 ноября 2018) |
React & БЭМ – официальная коллаборация. Часть историческая | | | (5 февраля 2019) |
Как создать тёмную тему и не навредить. Опыт команды Яндекс.Почты | | | (9 апреля 2019) |
«Под капотом» Турбо-страниц: архитектура технологии быстрой загрузки веб-страниц | | | (17 июля 2019) |
От идеи до релиза. Детальный опыт фронтенда Маркета | | | (22 июля 2019) |
Разработка в монорепозитории | | | (3 октября 2019) |
Как мы внедряли WebAssembly в Яндекс.Картах и почему оставили JavaScript | | | (19 ноября 2019) |
Как устроено тестирование фронтенда в Яндекс.Маркете и почему мы отказываемся от еженедельных релизов | | | (10 декабря 2019) |
Как переписать фронтенд нагруженного проекта и не потерять главного | | | (3 февраля 2020) |
Минифицируем приватные поля в TypeScript | | | (13 июня 2020) |
Технические предпочтения пользователей с нарушениями зрения в 2020 году | | | (18 августа 2020) |
Как и почему мы переехали с собственного npm-репозитория на Verdaccio | | | (17 ноября 2020) |
Веб-тренажёр Яндекс.Практикума. Как всё устроено | | | (27 ноября 2020) |
Russian / 2ГИС |
TARS, сделай уровень frontend-рутины 0% | | | (26 марта 2015) |
Тестируем вёрстку правильно | | | (18 февраля 2016) |
Этажи: 3D-навигация на WebGL в 2gis.ru | | | (22 апреля 2016) |
Дели — сокращай, или как мы делали мобильный 2ГИС Онлайн | | | (20 июля 2017) |
Справа налево. Что такое dir=rtl и как приручить арабский язык | | | (10 мая 2018) |
Справа налево. Как перевернуть интерфейс сайта под RTL | | | (10 июля 2018) |
Быстрая генерализация маркеров на WebGL-карте | | | (6 марта 2019) |
3D-аркада в браузере: как мы сделали игру на React + Redux | | | (23 апреля 2020) |
Russian / Прочее |
Вавилонская башня из миллиона печенек. Как мы делали игру в VK mini app | | | (10 марта 2021) |