Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Electron desktop app #55

Closed
tvedtorama opened this issue Aug 30, 2017 · 6 comments
Closed

Electron desktop app #55

tvedtorama opened this issue Aug 30, 2017 · 6 comments
Labels

Comments

@tvedtorama
Copy link

It could be useful to have this fantastic tool as an Electron app, where users could choose to synchronize the browser file system with the local file system.

They could then use their favorite editor and would not require the files to pass through a zip archive. Instead they could drag in a folder (or point to one) and have the filesystem initialized.

It could even allow you to set up your own "private code server", similar to Coda - although I'm not sure how smart/easy that would be security wise.

@t-mullen
Copy link
Member

I agree. Being able to sync through the filesystem would be useful. It might work better as a Node.js tool though, to avoid Electron's overhead.

The only problem with this is that most editors use their internal memory to edit files, meaning changes aren't pushed immediately to the filesystem. So it wouldn't be able to replace the editor plugins.

@kifhan
Copy link
Collaborator

kifhan commented Aug 31, 2017

Awesome Idea man!
I thought about it, you could run child process to sync between y-js and file system.
Then it is okay the editor use memory cause delta will goes to y-js.
It might have little delay on sync file system, though.

@tvedtorama
Copy link
Author

Thank you guys!

I guess it will be a problem to cleverly match external and internal changes with the data model, perhaps an WebRTC enabled "merge driver" for Visual Studio Code would be better?

Otherwise, maybe the desktop app could do a diff between local changes (saves) and treat each changed snippet as an individual edit - as if they were performed offline? Then external/incoming changes could be merged with this and applied to the local file system - right after the user has flushed his editor buffer (saved his work).

@t-mullen
Copy link
Member

I plan to fully support vscode, which is in the works. multihack-vscode

The dekstop app would have to work like that, doing it's own diffing when the user saves (with a filesystem watcher). We won't need to worry about merging, YJS does that for us!

@tvedtorama
Copy link
Author

Excellent, sounds very promising!

And this YJS library also looks like a great tool in lots of cases, I guess it could be used for "collaborative stream scribbling" as well 👍

@t-mullen
Copy link
Member

t-mullen commented Sep 1, 2017

Repo created as https://github.com/RationalCoding/multihack-cli

@t-mullen t-mullen closed this as completed Sep 1, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants