Strawpoll Web App
Personal Project
October 2019 - Present
Fastpoll is a responsive web app that allows uers to create and vote on realtime strawpolls. The front end utilizes React, React-Router and Emotion to create a responsive, interactive front-end. The backend utilizes Node.js, Express, Sequelize ORM and MySQL to create a REST API allowing the client to create and respond to strawpolls.
The Fastpoll client utilizes Pusher Channels to allow all users to poll results update in real time without excessive polling of the API.
Fastpoll contains a testing suite allowing the client and API ends of the project to be tested. The client utilizes Jest and React Testing Library to unit test client interactions including creating polls and voting on them, while the server uses Mocha, Chai, Sinon, and Sequelize Test Helpers to test how polls and votes are created on the database and how the API calls are executed. An intergration test testing how the client and API sides interact with each other is currently in development.