Skip to content

nawalabdi/schedular

Repository files navigation

Interview Scheduler

Project Desrciption

The interview scheduler is an web application that tracks student interviews built with the latest tools to optimize ones user experience! We utilaize React's bult-in and custom hooks that allows user to add, edit, and delete appointments in real time! Data is stored by the API server using PSQL (PostgreSQL. Using JSON the client application is able to communicate with the API server over HTTP in a JSON format. Quality control is important, so this project follows best practicies of TDD (Test Driven Development), where individual components are tested in isloation and End-To-End testing is preformed!

Screenshots

Main appointment form Deletean interview form Edit an interview form

Key Features on the Scheduler App

  • Interviews can be booked between Monday and Friday.
  • A user can switch between weekdays.
  • A user can book an interview in an empty appointment slot.
  • Interviews are booked by typing in a student name and clicking on an interviewer from a list of available interviewers.
  • A user can cancel an existing interview.
  • A user can edit the details of an existing interview.
  • The list of days informs the user how many slots are available for each day.
  • The expected day updates the number of spots available when an interview is booked or canceled.
  • A user is presented with a confirmation when they attempt to cancel an interview.
  • A user is shown an error if an interview cannot be saved or deleted.
  • A user is shown a status indicator while asynchronous operations are in progress.
  • When the user presses the close button of the error they are returned to the Form or Show view (skipping Status and Confirm).
  • The application makes API requests to load and persist data. We do not lose data after a browser refresh.

Technical Specifications

React Webpack, Babel Axios, WebSockets Axios Storybook, Webpack Dev Server, Jest, Testing Library

Setup

Install dependencies with npm install.

API server and Database Setup

  • For full functionality both must run concurrently: the client and the API server applications.
  • Click here to start by forking and cloning the scheduler-api server
  • Follow the steps outlined in README to install and setup the database
  • Fork and clone this repo
  • Navigate to the root directory and install dependencies with npm install
  • Once you have the database setup and the scheduler-api server running, run the following command from the root directory of the project ➜ npm install

Running Webpack Development Server

npm start

Running Jest Test Framework

npm test

Running Storybook Visual Testbed

npm run storybook

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published