Inspiration

We wanted to design a better method of real-time collaboration for programmers. We wanted it to work anytime and anywhere. The tools available had some shortcomings that we knew we can address.

What it does

OuiCode connects multiple developers and lets them work on one workspace. It allows for real-time code synchronization offline through Bluetooth. OuiCode lets the host choose which files and folders to share, maintaining security while letting other programmers add necessary files.

How we built it

OuiCode is a visual studio code extension built using Node, the vscode API, and communicates using the bluetooth-serial-port module with the SPP protocol.

Challenges we ran into

One major challenge was platform independence. While setting up the wireless connections, we had to account for the different ways linux and windows receive and process packets. Two of our team members had very little experience in javascript, and had to learn while coding.

Accomplishments that we're proud of

We built a prototype that holds all of our core features: Live code editing, full project syncing and offline connections with Bluetooth.

What we learned

We learned that visual studio has a robust extension system that allows for quick creation of menus and UI. Modern Bluetooth is a surprisingly good way to communicate in medium range. Using Bluetooth, we were able to connect two computers from one corner of the Spark to the other.

What's next for OuiCode

We want to implement more a more user friendly networking UI, seamless diff checking during the connection process, optimizing the network connections, fixing the security flaws, allow connections through a local network, multi-platform hosting, and automatic Bluetooth connections between multiple users.

Share this project:

Updates