All Projects → typeintandem → nvim

typeintandem / nvim

Licence: Apache-2.0 license
Repository for the Tandem NeoVim Plugin

Programming Languages

javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to nvim

Tandem
Typing in Tandem. Decentralized, cross-editor, collaborative text-editing!
Stars: ✭ 678 (+2847.83%)
Mutual labels:  peer-to-peer, decentralized, collaboration, macosx, collaborative, collaborative-editing
sublime
Repository for the Tandem Sublime Plugin
Stars: ✭ 22 (-4.35%)
Mutual labels:  peer-to-peer, decentralized, macosx, collaborative, collaborative-editing, cross-editor
Yjs
Shared data types for building collaborative software
Stars: ✭ 5,894 (+25526.09%)
Mutual labels:  peer-to-peer, decentralized, collaboration, collaborative-editing
Text
📑 Collaborative document editing using Markdown
Stars: ✭ 282 (+1126.09%)
Mutual labels:  collaboration, collaborative, collaborative-editing
Subethaedit
General purpose plain text editor for macOS. Widely known for its live collaboration feature.
Stars: ✭ 1,183 (+5043.48%)
Mutual labels:  collaboration, macosx, collaborative-editing
Etherpad Lite
Etherpad: A modern really-real-time collaborative document editor.
Stars: ✭ 11,937 (+51800%)
Mutual labels:  collaboration, collaborative, collaborative-editing
network
Monorepo containing all the main components of Streamr Network.
Stars: ✭ 522 (+2169.57%)
Mutual labels:  peer-to-peer, decentralized
tool-db
A peer-to-peer decentralized database
Stars: ✭ 15 (-34.78%)
Mutual labels:  peer-to-peer, decentralized
tableaunoir
An online blackboard 🖉 with fridge magnets 🌈🧲 for teaching, and making animations 🏃 and presentations ⎚.
Stars: ✭ 149 (+547.83%)
Mutual labels:  collaborative, collaborative-editing
dispersy
The elastic database system. A database designed for P2P-like scenarios, where potentially millions of computers send database updates around.
Stars: ✭ 81 (+252.17%)
Mutual labels:  peer-to-peer, decentralized
Gun
An open source cybersecurity protocol for syncing decentralized graph data.
Stars: ✭ 15,172 (+65865.22%)
Mutual labels:  peer-to-peer, decentralized
geesome-node
🦈 Your self-hosted decentralized Messenger, Social network, Media file storage on top of IPFS! Freely communicate in encrypted chat groups, share images, video, text or any data without a risk of censorship or blocking.
Stars: ✭ 90 (+291.3%)
Mutual labels:  peer-to-peer, decentralized
sprawl
Alpha implementation of the Sprawl distributed marketplace protocol.
Stars: ✭ 27 (+17.39%)
Mutual labels:  peer-to-peer, decentralized
trystero
🤝 Serverless WebRTC matchmaking for painless P2P — Make any site multiplayer in a few lines — Use BitTorrent, IPFS, or Firebase
Stars: ✭ 512 (+2126.09%)
Mutual labels:  peer-to-peer, decentralized
dynamic-data-and-capabilities
[ARCHIVED] Dynamic Data and Capabilities in IPFS Working Group
Stars: ✭ 57 (+147.83%)
Mutual labels:  decentralized, collaboration
Crdt Playground
Stars: ✭ 215 (+834.78%)
Mutual labels:  peer-to-peer, collaborative-editing
conceal-desktop
Conceal Desktop (GUI)
Stars: ✭ 65 (+182.61%)
Mutual labels:  peer-to-peer, decentralized
mesh-code-editor
✒️ A sleek, real-time & collaborative online code editor for HTML, CSS, and JavaScript
Stars: ✭ 26 (+13.04%)
Mutual labels:  collaboration, collaborative-editing
go-peer
Library for create secure and anonymity decentralized networks.
Stars: ✭ 74 (+221.74%)
Mutual labels:  peer-to-peer, decentralized
counter-interview.dev
a collaborative collection of interview questions collected from both sides of the game: Interviewer(s) and Interviewee.
Stars: ✭ 102 (+343.48%)
Mutual labels:  collaborative, collaborative-editing

Tandem

Tandem is an add-on for your favorite text editor that enables peer-to-peer collaborative editing across different editors.

This repository contains code for the Neovim plugin. For more details on Tandem, visit our website, or our mono-repository containing all other source code.

Installation

To install, you will need to have a copy of the Neovim Python2 client.

pip install neovim

You must also have python3 and node.js installed for the networking code to work.

Neovim users have the option of installing in one of the following ways:

  • [Recommended] Using your favourite plugin manager (e.g. Vundle, vim-plug, etc.) Tandem should be compatible with most popular plugin managers
  • Installing Tandem directly. You’ll need download this repository to ~/.config/nvim/rplugin/python.

Whether you use a plugin manager or download directly, you will also need to complete an additional one-time step.
Tandem uses Neovim remote plugin functionality for thread-safety, so you will need to:

  • launch nvim
  • run :UpdateRemotePlugins
  • quit nvim

You are now ready to use Tandem!

Usage

Tandem users can choose either start a collaborative session or join an existing one. Starting a collaborative session will share the contents of your current buffer. Joining an existing session will open it’s contents in a new buffer.

Please use one of the following commands:

  • :Tandem - creates a new tandem session and prints the session ID
  • :Tandem <session_id> - joins an existing tandem session with the specified session ID
  • :TandemStop - leaves the current session
  • :TandemSession - prints the current session ID

It is recommended to leave the session before exiting neovim, but that process should be automated.

Terms of Service

By using Tandem, you agree that any modified versions of Tandem will not use the rendezvous server hosted by the owners. You must host and use your own copy of the rendezvous server. We want to provide a good user experience for Tandem, and it would be difficult to do that with modified clients as well.

You can launch the rendezvous server by running python3 ./rendezvous/main.py. Change the address of the rendezvous server used by the agent in the configuration file to point to your server's host. This file is located at: rplugin/python/tandem_lib/agent/tandem/agent/configuration.py

License

Copyright (c) 2018 Team Lightly

See LICENSE.txt

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at:

http://www.apache.org/licenses/LICENSE-2.0

Authors

Team Lightly
Geoffrey Yu, Jamiboy Mohammad and Sameer Chitley

We are a team of senior Software Engineering students at the University of Waterloo.
Tandem was created as our Engineering Capstone Design Project.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].