{{#> layout }}

Introducing Zed—A lightning-fast, collaborative code editor written in Rust.

Zed is about seamless real-time collaboration, fine grain version control of code + conversations, and breaking past the boundaries of software responsiveness.

We think there is a better way to write code, and are using Zed as we build Zed to prove it.

Early access to Zed will open up mid-2022 for small teams and individuals in our community.

Read our story. Join the waitlist.

———

We believe that...

Collaboration produces better code.

Write & discuss code with native real-time collaboration.

Software should be hyper responsive.

Your display should bottleneck long before your software. A slow editor creates anxiety while a fast one makes writing code a joy.

The keystroke is the fundamental unit of change.

The refresh rate of your display should bottleneck long before your editor.

Conversation happens where code does.

The refresh rate of your display should bottleneck long before your editor.

———

Under the hood

Rust

With performance and reliability being our priority, writing Zed in Rust was an obvious choice.

In the past to write software with this performant you would need to use C++. Rust, for the first time, enables us to write software at that level as a very small team.

GPUI

While Rust enables us to build performant, reliable software, it's constraints make rending custom UIs a challenge. To attack this, we created gpui, a rust library that rethinks the entire rendering stack that goes all the way to the graphics hardware.

We started gpui as an extension of that desire to write apps that are fast and fluid, yet easy to develop itteratively. gpui rethinks the way we draw UI in response to the constraints of Rust. By controlling the entire stack we remove layers of extra code that would reduce performance.

Without building gpui the most viable way to build a cross-platform app would have been Electron. It's well documented performance limitations and single threaded nature made it a deal-breaker for us. Taking full advantage of local hardware was important to use to ensure that we can squeeze out the best performance.

We’re building gpui and Zed in parallel, and may consider opening gpui up for usage outside of it in the future.

CRDT

Like gpui enables performant UI, crdt is the key to making code collaborative as it is being written.

A crdt allows us to version control the codebase on the keystroke level—Every keystroke can be revisited, commented on or undone. Entire sessions can be replayed and scrubbed in a session, from the point of view of any player.

This level of granularity in our version control allows us to explore ideas like time traveling the codebase.

Often the best way to understand code is to experience it's creation chronologically. Imagine if you could jump to the point a piece of code was created and watch it be written in real time.

———

Excited about what we are doing? Sign up for updates to follow along in our development process.

{{/layout}}