While there already exists services that provide live code collaboration, most are either software as a service (paid) or only allow you to edit one file through copy pasting
What it does
It allows you to specify a git-repository to clone and then creates a workspace from cloning the git-repo. At the moment it allows you view the project directory as well as open files.
Planned for it is the ability to edit the files as well as commit files to the cloned git-repo.
How we built it
We used NodeJS coupled with ExpressJS to handle the back-end and routing. We then used Webpack to bundle the web clients. Client-Server communication and content loading is all handled using Socket.io (web sockets).
Challenges we ran into
Syncing up edits is a hard problem to tackle. Recreating text editors from near scratch is also hard to do.
Accomplishments that we're proud of
Getting the file structure to load as well as the ability to show files.
What we learned
This is a large project, especially in the back-end. Furthermore it requires custom technology on the front end the current editable text elements in HTML do not support. As such it took a good amount of infrastructure on the backend as well as some research and prototyping on the front-end.
What's next for Polynous
Finishing up the editing capabilities and refining it is at the forefront. Furthermore, users were shelved during the hackathon due to them being non-essential. Having users for editing will be needed to track git changes as well as identify edits.
Finally, additional improvements to the editor such as syntax highlighting and multiple loaded tabs will be needed.