Manuscripts

From 2019-2022 I was one of the principal engineers on Manuscripts.io, a platform for authoring, editing, and submitting scientific publications on the web. I contributed code primarily impacting the rich-text editing experience within the browser, as well as solutions for data synchronization and conflict resolution. I managed the team at a technical level, reviewing pull requests and responding to end-user issue reports.

Screenshot of the Manuscripts authoring platform

The editing experience in Manuscripts was based on ProseMirror, and data were serialized and stored in a local PouchDB database. The collaborative (possibly offline) editing experience was provided by a syncing protocol which required a git-like merge resolution system that was understandable by non-programmers. Later we built a change-tracking system on top of that.

Understanding this syncing model, and making React, Pouch and ProseMirror work together, was among the most interesting and rewarding technical challenges of my career as a programmer.

The project has been retired by Atypon, but the main repository is available on GitLab.