Skip to content

Simple website to book dentist appointments, washing machines, meeting rooms etc.

Notifications You must be signed in to change notification settings

atopheim/bookathing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Book-a-thing


Table of Contents
  1. About the Project
  2. Built with
  3. Getting started
  4. Prerequisites
  5. Project structure
  6. List of APIs
  7. Contribute

About The Project

This is an web application made a part of a module to make appointment booking between people a lot easier. The usual process is to exchange mails between people till they find a convenient time. But this application can skip this process and book appointment by displaying available slots to users.

Built With

This web application uses the following technology

Getting Started

  1. To preview this application online click here link

  2. To run this application locally 2. Clone the repo

  3. Install yarn packages in client directory and server directory

    cd client
    yarn && yarn start
    cd ../server
    yarn && yarn start
  4. Create a firebase firestore database with collection name event

  5. Add your firebase service account API key in server/serviceAccountKey.json

Prerequisites

You need to have the following Prerequisite to get started

  • NodeJS
  • Firebase Account

Project Structure

Folder Path Description
client This directory contains all the files needed for Client Side Rendering.
client/public This directory contains all static content for the web app
client/src This directory contains all the dynamic content for the web app
client/assets This directory contains CSS and images required for each component of the web app
client/components This directory contains all the components for each web page
client/timezones This file contains all the strings of timezone as per the latest IANA database
server This directory contains all the files needed for server side rendering
server/routes This directory contains all the files to routes to API Calls
server/staticConfig This file contains all the static configuration variables used throughout the backend

List of APIs

API Routes Parameters Description
/freeSlots Date, Timezone Return all the free slots available for a given date converted to whatever timezone we pass.
/createEvent DateTime, Duration All the data passed will create the event and store that into the firestore document, if the event already exists for that time you need to return status code 422 or else just store it and return with status 200.
/getEvents startDate, endDate Return all the events between given StartDate & EndDate

About

Simple website to book dentist appointments, washing machines, meeting rooms etc.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published