Interview Scheduler is a single page React App which allows you to book appointments.
Built upon an existing back-end provided by LHL during the Web Deb Bootcamp to practice React.
This is deployed at: https://scheduler-ahk.netlify.app/ using a heroku hosted postgres-API and CircleCI.
The deployed app does not integrate websockets but websockets were implemented in another branch (stretch/websockets).
** Note: Please give the app some time to initially load data as heroku will shut off the API after 30 minutes of inactivity. **
Creating a react app with create-react-app and using numerous testing libraries, the major learnings were:
- Creating React components, passing props and hooks (useState, useEffect, useReducer).
- Managing state and using custom hooks to render components and create controlled forms.
- Axios requests and web sockets (not in production -- branch: stretch/websockets).
- Immutable patterns, conditional rendering and managing DOM events.
- Testing with Storybook (components), Jest (unit, integration) and Cypress (End to End).
No Websockets
Adding With Websockets
Editing With Websockets
Deleting With Websockets
Install dependencies with npm install
.
Note: If you are not running the deployed version, you will also need to fork the scheduler-api repo and run the DB server alongside the React app.
npm start
npm test
npm run storybook