The Interview Scheduler is a single page app built with React. It allows users to book, edit and cancel appointments. The data is stored on a PostgreSQL database, and updated in multi-user situations through a WebSocket connection.
Install all the dependencies:
npm i
The Interview Scheduler API needs to be installed as well as a PostgreSQL database.
A test-driven development apporach was adopted to ensure high test coverage and code quality.
Testing frameworks:
- Static testing with the prop-types package.
- Unit testing with Storybook.
- Unit testing and integration testing with Jest and the Testing library.
- End to end testing with Cypress.
Deployed on Netlify and Heroku: https://scheduler-react-websocket.netlify.app/
Note Heroku server instance will shut down after thirty minutes on inactivity. It may take a few extra seconds for it to start up again.
Continuous integration, automatated testing and deployment enabled by CircleCI: