Skip to content

Latest commit

 

History

History
39 lines (30 loc) · 3.02 KB

File metadata and controls

39 lines (30 loc) · 3.02 KB

This code allows you to create a Reveal.js presentation, controlled by hand motions through a LeapMotion device. Using SendGrid, you can conduct a live voting session where votes are cast via email and updated in real-time using express, socket.io and Highcharts.js. If you have Google Glass, you can get a teleprompter that displays your slide notes as you go through each slide.

View a video demo of the final product to get a feel for the completed project. The video is less than 5 minutes.

There is a companion blog post at SendGrid's blog.

Prerequisites

This software was tested on a Macbook Pro Retina and a Macbook Air, both running Yosemite. If you test on Linux or Windows, please let me know the results.

Usage

  • clone this repository
  • create a local MySQL database, the schema is at DB/votes.sql
  • rename .EXAMPLE.env to .env and update the credentials
  • run npm install in the root directory of the project
  • run grunt
  • run ngrok 3000
  • setup your Incoming Parse API webhook in your SendGrid account
  • go to http://localhost:3000 and try using the leapmotion to navigate to the next page (voting)
    • currently, you can swipe backwards/forwards/up/down and point for a simulated laser pointer.
  • send an email to inbound@the-host-you-setup-for-the-parse-webhook (e.g. mine would be [email protected]) with Python as the subject, the vote should register automatically in a few seconds
  • check your email inbox for an email from [email protected]. Say hi :)
  • check your DB and verify the new entry
  • modify the slides at views/index.html and keep your assets in the /public folder
  • if you have Google Glass, setup an App utilizing the Mirror API on App Engine and update the credentials in your .env file

Info & Help

Please let me know how I can improve this tutorial with a pull request or open an issue. Happy Hacking!