Sail (YC-backed) was a collaborative infinite canvas web browser based on Chromium. As a founding engineer, I worked end-to-end from initial concept through prototype to production deployment. I owned the front-end architecture and real-time collaboration features, moving fast with full ownership alongside a senior designer and one other engineer. Starting from the initial product vision, I drove development through rapid prototyping cycles and eventually into our production deployment. Sail later evolved and pivoted to become Muddy. Our tech stack included React, Recoil, GraphQL, Redis, and MongoDB, in addition to a custom Chromium fork with C++/JS bindings to access browser capabilities. For design and prototyping, we used Figma, Framer, and Rive.
Boards are live documents shareable with friends, coworkers, & organizations. In a space, users can browse, create cards, organize them in boards, and communicate with chat, audio / video, and global multiplayer.
A sail board, with web cards, note cards, thread cards, and groups
Cards live in spaces and can be created through the Sail command palette. Sail supports web cards, live web pages (leveraging the chromium browser), note cards built with Prosemirror to allow for rich text editing and formatting, image cards for displaying images, and message cards to communicate with others in a chat thread.
Adding Cards with the Sail Command Palette
Organize your cards into groups
Drag, and right click to group cards
Sail supports global multiplayer, allowing users to collaborate in real-time with with others using shared cursors and live editing across cards, boards, and any website.
For when you have to say something: every space comes with a chat. Each card has a built-in chat thread so conversations don't get lost. Space events also get logged in the chat, like creating a card.
Your Sail Stash is a a place to keep the things you find on the web. It's a personal space where you can save and organizer your tabs before you decide to share them with others.
Built-in audio and video let users talk with their team in one place without having to leave their working space.
Sail was built on top of the Chromium browser, meaning it had all the features of a modern web browser, like extensions, web apps, and compatibility with all websites. Special C++ and JavaScript APIs were implemented on a custom Chromium fork to enable access of browser capabilities through web UI. This allowed us to create a new browser by using a traditional React front-end stack.