
Vary for Images: Serve the Correct Images to the Correct Browsers
We’re excited to announce support for Vary, an HTTP header that ensures different content types can be served to user-agents with differing capabilities.
The best problem-solving writing in software engineering — databases, performance, security, frontend and distributed systems, in one feed.

We’re excited to announce support for Vary, an HTTP header that ensures different content types can be served to user-agents with differing capabilities.

Today, I have three speedy infrastructure updates: we’ve passed 250 on-network cities, more than tripled our external network capacity, and increased our long-haul internal backbone network by over 800% since the start of 2020.

I feel like my quest to make sure this site had pretty sweet (and automatically-generated) social media images (e.g. Open Graph) came to a close once I found

What did we ship in August? Codespaces, Discussions, and lots of other updates, from the general availability of the dark high contrast theme to an auto-generated table of contents for wikis.

Managing app size at Facebook is a unique challenge: Every day, developers check in large volumes of code, and each line of code translates into additional bits in the apps that people ultimately download onto their phones. Left unchecked, this added code would make the app bigger and bigger until eventually the time it takes […]

There are way too many options in Web Animations API to pick them up that easily. There’s no middle ground between simple transitions and complex animations. You’re either fine with what CSS Transitions and Animations provide or you suddenly need all the power you can get. Learning how timing works and how to control the playback of several animations at once makes for a solid foundation on which

No one likes to wait. Internet impatience is something we all suffer from.

Announcing recipients of the GitHub Open Source Grants and opening of GitHub Sponsors in India.

Continue learning how to import and execute code from an object file. In this part we will handle external library dependencies.

I believe acss.io is the first usage of "Atomic CSS" where the point of it is to be a compiler. You write CSS like this:

We might leave a text input unstyled. We might leave a link unstyled. Even a button. But checkboxes… we don’t leave them alone. That’s why styling checkboxes

I had no idea this was coming but it's pretty neat! Chrome has shipped the EyeDropper API in v95 (Canary, as I write).

Quadratic algorithms are slow (and hashmaps are fast)

For years, in order to safeguard the privacy of people’s messages, WhatsApp has provided end-to-end encryption by default so messages can be seen only by the sender and recipient, and no one in between. Now, we’re planning to give people the option to protect their WhatsApp backups using end-to-end encryption as well. People can already […]

For better or worse, the web is absolutely awash with content. A lot of it is great, a lot of it is not. A lot of the talk around it has the cold, calculating cadence you’d sooner expect from industrialists talking about assembly lines. They say content is king, and they’re right. The web has unlocked untold possibilities for storytellers — provided the story is right, of course. Here are some of

Introducing the Cloudflare Workers Rust SDK: write your entire Worker in Rust, no JavaScript required.

I recently blogged about how images are hard and it ended up being a big ol' checklist of things that you could/should think about and implement when placing

Optimizing the user experience you offer on your website is essential for the success of any online business. Google does use different user

Frontity is a framework for creating de-coupled (or "headless") WordPress sites. In this article, we dive into the process of spinning up such a site, with a detailed overview of the building blocks provided by Frontity and its flagship theme, Mars.

GitHub Enterprise Server 3.2 is available today as a release candidate.

We put out a call to open source developers and security researchers to talk about the security vulnerability disclosure process. Here’s what we found.

When paired with ISR and Next.js’ API routes, SWR can be used to create a responsive user experience. In this article, Sam Poder explains what SWR is, where to use it (and where not), and how to build a website by using Incremental Static Regeneration. This approach ensures that users still have a good experience, that the site is fast and that the data is kept up to date.

Today, we’re excited to announce that SaaS providers will now be able to give their customers visibility into what happens to their traffic when the customer onboards onto the SaaS provider, and inherently, onto the Cloudflare network.

On August 25, 2021, Atlassian released a security advisory affecting their Confluence application. The Cloudflare WAF soon after started mitigating an increase in malicious traffic to vulnerable endpoints ensuring customers remained protected.