Skip to content

LoPaul/Briteboard

Repository files navigation

Briteboard - Final Project

https://briteboard.herokuapp.com/

Main contributors: Aaron Ford, Paul Lo, Taylour Kroeker

Overview

An online collaborative whiteboard application for creative sketching, diagramming, and planning, built as our final group project at Lighthouse Labs. Users are able to create new boards (no registration required) using provided starter templates, and then share the link to their board with friends and colleagues. Users are able to collaborate by freehand drawing, adding shapes, text and images, and communicating via voice and video chat. Boards and their current state are saved in a database so they can be revisited at any time, or deleted when no longer needed.

Getting Started

  1. Make sure you have installed Node.js & npm
  2. Fork and clone this repository
  3. Install all dependencies in the root folder by running npm install
  4. In db/config, rename keys_example.js to keys.js and add your mongoURI to connect your database
  5. Then start the server with npm run server
  6. Run open http://localhost:3000 OR navigate to http://localhost:3000/ in your browser to see the app running

Final Product

"Landing page" "Demo board"

Tech Stack

  • Node.js
  • Express
  • EJS
  • jQuery
  • Bootstrap
  • Socket.IO
  • Fabric.js
  • FileSaver
  • SimpleWebRTC
  • MongoDB
  • Mongoose
  • Heroku

Next Steps

  • Prevent stacking of error dialog boxes on socket disconnect
  • Improve error handling for socket disconnection (graceful reconnection instead of error dialog boxes)
  • Minimize socket disconnections by reducing information transfer
  • Allow users to pause remote video streams
  • Add 'clear' and 'fill' functions

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published