Skip to content

A modern client SPA for scheduling interviews, built using React, Node and PostgreSQL; fully tested using Jest, Testing Library and Cypress.

Notifications You must be signed in to change notification settings

DPinto-dev/interview-scheduler

Repository files navigation

Interview Scheduler

A modern client single page application (SPA) for scheduling interviews, built using React and Storybook, and fully tested using Jest, Testing-Library and Cypress. Accompanied by the Scheduler API built in Node with Express and PostgreSQL.

Table of contents


Functionality

The app's main functionality is to allow for a student to book and manage an interview with a mentor. The user experience is very smooth with no page refreshes, thanks to the SPA characteristic and the usage of simple indicators to inform the user when asynchronous operations take place. The state client-side is synchronized and persisted with the server via an API that communicates with the Express server and a PostgreSQL database.

Full List of Features

For a full list of features, please check the list of Functional and Behavioral Features of this application.

Screenshots

Interview Scheduler Overview Interview Scheduler Adding new appointment Interview Scheduler Confirm Deletion Interview Scheduler Deleting an appointment


Technical Stack

Tested and CI done With

Backend/API Stack

Deployed to


Setup

  • Install dependencies with npm install for both the application and the API
  • Interview Scheduler requires both the Webpack server (this application) and API server to be running at the same time.
  • The API requires additional setup with creating and seeding the database. A short guide is provided in README of that repo.

Running Webpack Development Server

npm start

Running the Tests

Running Storybook Visual Testbed

npm run storybook

Running Jest Test Framework - for Unit and Integration Tests

npm test

Running End-to-End Tests with Cypress

npm run cypress

Contributing

If you would like to contribute in any way with this project, or if you find any bug and want to attempt a fix, please follow these steps:

  1. Fork it (https://github.com/DPintoLL/scheduler-v2/fork)
  2. Create your feature branch (git checkout -b feature/fooBar) or issue branch (git checkout -b issue/issue)
  3. Commit your changes (git commit -m 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new PR

Planned Features

  • No additional planned features currently.

About

A modern client SPA for scheduling interviews, built using React, Node and PostgreSQL; fully tested using Jest, Testing Library and Cypress.

Topics

Resources

Stars

Watchers

Forks