Multiplayer mode for your text editor!
For complete end-user documentation see the Teamtype Documentation site.
Note
Until October 2025, this project was known as "Ethersync". The motivation for the rename was explained in this PR.
Teamtype enables real-time peer-to-peer collaborative editing of local files using your own text editor or other tools. For example, you can use it for pair programming sessions, brainstorming, or note-taking. It's the missing real-time complement to Git and other version control systems!
- 👥 Edit files concurrently by multiple users using different text editors
- 📍 See your peers' cursors, selections, and edits in real time
- 🗃️ Collaborate on entire directories, not just single files
- 🔒 Rest easy with encrypted peer-to-peer connections, no need for a server
- ✒️ Maintain full access with a local-first model that retains all content on disk even if you go offline
- 🧩 Write new editor plugins using a simple JSON-RPC protocol
We also maintain a list of other collaborative text-editing software.
We are not a company and do not have anything to sell. We do not require you to create an account. We do not have access to your data, and do not use it to train AI algorithms. We do not serve you ads or track you in any way.
We are just a bunch of people building something we want to use ourselves and share with others.
We're currently maintaining Teamtype in our free time. We're often using it for pair programming ourselves, but there's still some bugs to be aware of.
Teamtype works on Linux, macOS, Android, and on the Windows Subsystem for Linux.
Binary releases
The releases on GitHub come with precompiled static binaries.
Download one and put it somewhere in your shell's PATH:
x86_64-unknown-linux-muslfor Linuxuniversal-apple-darwinfor macOSaarch64-unknown-linux-muslfor Android (use a terminal emulator like Termux)
Arch Linux
sudo pacman -S teamtypeHomebrew
brew install teamtypeNix
To put teamtype in your PATH temporarily, run:
nix shell nixpkgs#teamtypeMake sure to also have it in your PATH when you run the editors, or install it to your environment in your preferred way.
Via Cargo
cargo install --locked teamtypeTo save some compilation time, you can use cargo-binstall, which will install a precompiled binary attached to our latest release:
cargo binstall teamtype- Neovim
- VS Code/Codium: Install the "Teamtype" extension from the marketplace
In the directory you want to share:
$ teamtype share
To connect to you, another person can run:
teamtype join 5-hamburger-endorse
Peer connected: adfa90edd932732ddf242f24dc2dcd6156779e69966d432fcb3b9fe3ae9831abAnother person, in a separate directory (also works on the same computer):
$ teamtype join 5-hamburger-endorse
Derived peer from join code. Storing in config (overwriting previous config).
Storing peer's address in .teamtype/config.
Connected to peer: 5e6b787fff79074735eb9b56939269100de1e37bc7f7a4d29c277cc24f7ee53dThe directories are now connected, and changes will be synced instantly. You can open text files (using editors with a Teamtype plugin), and start collaborating in real time! ✨
- Learn more about Teamtype in the documentation.
- Watch a 10-minute talk given at FOSDEM 2025.
- Watch a (German) 1-hour talk given at MRMCD 2024.
Plugins:
- @schrieveslaach is maintaining a plugin for Jetbrains IDEs
- TeXstudio has a Teamtype integration
Work-in-progress plugins:
- @sohalt's Emacs plugin
- @hvergara's Obsidian plugin
- @winniehell's web editor
- Emacs plugin
- @thwischm's Kakoune plugin
Bridges:
- Hedgedoc bridge prototype
- @dglittle's Braid bridge
- LSP bridge
- @3timeslazy's LSP bridge (see this discussion)
We'd love to receive your patches and other contributions! Small patches are very welcome as PRs. Before starting to implement a new big feature, please briefly check in with us so we can discuss how it fits in with our ideas for the project. We have a CONTRIBUTING.md file that gives more guidance. Please take note of our strict no-LLM policy.
If you're interested in building new editor plugins, read the editor plugin development guide. For more information about Teamtype's design, refer to the list of decision records.
If you find bugs, please open an issue on Github!
Feel free to join us on Zulip to ask us anything! Other good channels:
- Mastodon: @[email protected]
- Email: teamtype@zormit.de
Teamtype received funding from NLNet's NGI0 Core Fund throughout 2024.
Thanks to the Prototype Fund and the Federal Ministry of Research, Technology and Space for funding this project in 2025.
Teamtype is based on Automerge, Iroh, and Magic Wormhole.
And finally, thanks to everyone who helped us beta-test, or reported issues!
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This project is REUSE compliant, see the headers of each file for licensing information.
