dupl.kit - Real time collaborative text editor!
rafrafraf (237)

repl.it? Never heard of it.

dupl.kit is where its at

(this is a repl clone im working on im not actually trying to make an official online IDE.
P.S repl pls hire me lol)

This is a live multi user text editor!

What it does:

  • multi user cursors! (credit to @marcusweinberger we worked on this together)
  • the global files can be edited by anyone live! and at the time of writing this they do not run code just yet.
  • the local files can only be seen and edited by you and can be run! they are stored in your local storage so you wont lose them logging out

How it works:

The server handles all operations made to the document while keeping it synchronised with all clients!

  • I did this by making my own operational transformations algorithm to make concurrent document edits always produce the same result

  • An operational transformation takes a document (you can think of it a string) plus a position within that document and either modifies the document at that position or skips to a new position. That’s it!

  • The client sends the keyboard input as operations to the server like this:

'[{"op": "skip", "count": 40}, {"op": "delete", "count": 47}]'

coming soon:

  • the py, html, js and css files will actually run in your browser!
  • live chat just like repls is in the works!

try opening it on two tabs side by side to see it working :)

You are viewing a single comment. View All
JordanDixon1 (354)

Is there a way to make the bash "vim" command multi-user?

firefish (589)

@JordanDixon1 No, VI was designed long before the internet existed even

xxpertHacker (394)

@firefish Redesign it from the source. :)

firefish (589)

@xxpertHacker Well what if you want to run your new VI version on a 1970-era AT&T Unix Machine

xxpertHacker (394)

@firefish Then I feel bad for you, using a 1970 era machine 50 years later.

firefish (589)

@xxpertHacker well what if your internet blacks out, while using a modern 2020-era machine

xxpertHacker (394)

@firefish Well, modern technology should work online or offline, it's hardware :/
Now for the software... I'd hope they design the application well, with functionality for both collaborative work, or solo work, offline/online, Wi-Fi connection, lan-network connections, etc.
Of course, it would be harder, but it better work, and it should be efficient and performant.

firefish (589)

@xxpertHacker Why has nobody mentioned PWAs yet and UWP PWAs...

xxpertHacker (394)

@firefish Because the WP stands for "Web Application," and the web is slow, hogs your memory, and is pretty bad overall.

HTML is slow to parse, and repainting the DOM is highly inefficient.
JavaScript JiTs are slow, and the JavaScript they execute is often poorly written.
CSS is a synchronous blocking resource that affects every element on a page, thus being slow and inefficient.
Wasm is weak, very weak. It has no DOM access, I'd say that it has no access to any of the native browser objects. Also, no one at Repl knows about it, ex: https://repl.it/talk/ask/Simple-multiplication-table-code-fails-to-run-loop/55923

JordanDixon1 (354)

@xxpertHacker Main reason I ask is because I'm working on a text/code editor and the main dependency is vim.