A html5 canvas whiteboard to upload image, modify, and download the completed artwork back to your computer.
Interactive mode supports multiple user sharing the same whiteboard, using Server Sent Event in html5.
Tested on Chrome, Firefox, Safari and support desktop and mobile devices. Note that IE is not supported. Click to see example site
MongoDB is used as backend. To setup one, you can do:
mkdir -p db/data
mongod --dbpath db/data
A good thanks to HTML5hacks, providing simple yet complete example for SSE.
The tricky part is the synchronization issue for managing connection and data. Connection has to be fix by having atomic operation using mutex, while data has to be fixed by merging diff data.
Server sent event: http://caniuse.com/eventsource
Web socket: http://caniuse.com/websockets
rake test:full # run all tests (not including integration test)
rake jasmine:ci # run jasmine tests
rake test # run unit test
rake spec # run capybara integration test
rake assets:precompile
Support offline usage and local storage for single user mode
- Translation
- Preserve content switching between single user / multiple user mode
- Develop with websocket and EM
- Login support?
- Package.json to manage js packages?
Feel free to ping me on twitter @imagegospel or github account
Copyright © 2013 Jimmy Wong. See LICENSE for further details.