Skip to content

Full stack web application (Angular, Web Sockets, Sockets.io, Express.js, Node.js, rethinkdb, PushBullet API) For sending out a text message to play rocket league and tracking the responses.

License

JeffSallans/assemble

Repository files navigation

Assemble

Full stack web application (Angular, Web Sockets, Sockets.io, Express.js, Node.js, rethinkdb, PushBullet API) For sending out a text message to play rocket league and tracking the responses.

Technology

Install

  1. Pull this repository

  2. Download and setup rethinkdb (https://www.rethinkdb.com/)

  3. Install all npm modules

$ npm install
  1. Manually install pushbullet dependent modules (Because the push bullet api on GitHub is more up-to-date than npm; npm doesn't have Ephemerals)
$ npm install pushbullet
  1. Create secret/pushBulletApiToken.js that returns the API key

Deployment

  1. Run rethinkdb.exe

  2. Navigate to project directory

//npm start defined in package.json
//Actual command is node --harmony ./bin/www
//Harmony flag enables staged ES6 features
$ npm start
  1. View application at localhost:3000

Conventions

Take Aways

  • Rethink node module library requires more work than mongodb
    • Creating tables and db if they don't exists is a pain
  • Postman is easy for development testing and you can save your tests in a suite
  • Iron Node is great for debugging node applications
    • Easy to setup and learn
    • Uses chrome debugger
  • Frontend and backend model sharing is not easy. One uses require and the other use html to include files

To Do

  • POST /Poll (Starts the process to poll the users)
  • Push Bullet API send texts (https://docs.pushbullet.com/#send-sms)
  • GET /Rsvp (Returns data about the user's reponse)
  • POST /Rsvp (Updates data about the user's reponse)
  • GET /User (Returns a list of registered users)
  • Frontend - Display user list
  • Frontend - Poll action
  • Frontend - Display rsvp details on load
  • Web Sockets emit messages when Rsvp is updated on the backend
  • Frontend - Web socket rsvp details
  • POST /User (Adds a new user/Updates existing user)
  • DELETE /User/{id} (Removes a user)
  • Frontend - Manage user list
  • Frontend Polish - CSS, Animations
  • Frontend - mobile friendly
  • DELETE /Poll (Resets the polling process)

Contributors

Jeff Sallans

About

Full stack web application (Angular, Web Sockets, Sockets.io, Express.js, Node.js, rethinkdb, PushBullet API) For sending out a text message to play rocket league and tracking the responses.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published