Cap Gradle workers and Cargo build jobs to 2 each so the build doesn't starve the machine of CPU. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Synchronicity
Overview
Synchronicity is a decentralized personal server implemented as an overlay operating system.
What does this mean in practice? A personal server is a computer owned and controlled by a single person that performs computational tasks on a network on their behalf, where a computational task is concretely something like storing and displaying PDF documents, recording text notes, playing music files, downloading and storing files from the internet, making and recording posts on social media networks, and in general anything that a person might want to do using modern networked computer or smartphone. decentralized means that there is not a single instantiation of Synchronicity on any particular hardware device; but rather any person's computer is comprised of an ensemble of individual nodes which communicate and synchronize data with each other over the network. Concretely, a node might be an Android smartphone, a desktop or laptop computer, or a Linux VPS in the cloud. An overlay operating system is a self-contained computing environment designed to be run as a program on an existing computer operating system, instead of directly controlling the hardware itself. A web browser with its Javascript engine capable of executing sophisticated webapps is probably the most widespread example of an overlay OS today.
What can I do with Synchronicity? Some examples:
- Listen to a podcast streaming from your phone to your car stereo while driving. When you get to your destination and get out of the car, you can pick up where you left off from your Synchronicity instance on your laptop.
- Start reading a PDF on your desktop computer, then head out to get on public transit, and pick up where you left off on your phone.
- Keep a music library on an always-on cloud server, and stream arbitrary songs to the music player built into your Synchronicity instance.
- Host a code version control system forge like Forgejo or Github.
- Proxy requests to a commercial AI service like Anthropic's Claude or OpenAI's ChatGPT; or run a local Large Language Model and manage chat conversations with it from any device.
Project Structure
Note: Synchronicity is actively in development and is an early-stage project. The bulk of its ambitions are yet-unrealized.
Synchronicity can currently be instantiated as an Android app, a Linux GUI program, a Linux daemon, and a cli tool that can interact with that daemon.
android/- Android application coderust/- Rust library with core functionalitydocs/- Project documentation
Build Instructions
Currently a work-in-progress; see the justfile at the root of the repo.