Git Product home page Git Product logo

pair-programming's Introduction

Pair Programming

I created a pair programming app for school because screen sharing isn't pair programming, it's show and tell.

The project is still missing a few things I think are necessary for it to be a fully working app, but for the school project, and the time being, I think the functionality is completed. Still have to make it not quite so ugly.

A few things it still needs to be truly usable:

  • Voice communications
  • Notification of what line is being edited by other person
  • Text highlighting (click & drag)
  • Language specific highlighting (like highlightjs or prismjs)

MVP Implementation:

  • Create useable text editor. ✅

  • Create NodeJS web server. ✅

  • Set up WebSocket server. ✅

    • WebSockets route data to correct session, not general broadcast. ✅
  • Timer to reset after updating stops for set period of time. ✅

    • Allow other user to update text. ✅
    • While not allowed to update, text highlighting prevented. ✅
    • User shown appropriate message when they can and can't edit code. ✅
  • Set up database to track changes. ✅

    • Read & pushes entire document to the Digital Ocean/MongoDB database. ✅
    • Needs to recall entire documents by URL. ✅
  • Scope session to unique key from URL. ✅

  • Generate unique URL and store in database. ✅

  • Redirect root directory visitors to their specific URL. ✅

  • Make it attractive. ✅

Beyond MVP:

  • Add voice communications. ⏸
  • Add shared text highlighting. ⏸
  • Add language specific highlighting. ⏸
  • Change textarea to contenteditable div. ⏸
  • Keep session open for specified amount of time. ⏸

pair-programming's People

Contributors

timbiden avatar mikebranski avatar

Stargazers

code2014account avatar

Watchers

James Cloos avatar  avatar

pair-programming's Issues

Proceed button

Click button to proceed to URL.
This begins pair-programming session.
Session can be joined when other people use same link.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.