Skip to content

Qrutz/Dentst-System-Frontend

Repository files navigation

Dentist Booking System frontend

Welcome to our Frontend Dentist Booking System, an innovative and user-friendly application designed for efficient dental appointment management across Sweden. This system streamlines the process of finding and booking dental appointments, ensuring a seamless experience for users.

Description

This is the frontend for dentist appointment booking system which allows users to book appointments with dentists/clinics across sweden. Clinics can be viewed on a map where the user can see availible timeslots, the timeslots are updated in realtime if someone books an appointment, a dentist posts new slot or removes a slot.

Technologies used

  • Vite
  • Vue
  • Typescript
  • Tailwind CSS
  • Pusher-js
  • Tanstack Query
  • Vue-router
  • Shadcn
  • Zod

Interface and features

Mapview Mapview dark
image image
Dashboard Dashboard dark
image image
Edit account Edit account dark
image image
Cancel notification from dentist Cancel notification from dentist dark
image image
Confirm booking Confirm booking dark
image image
Sign in Sign in dark
image image
Sign up Sign up dark
image image

Installation guide

1. Set up each of the microservices and gateways

See information in the README.md files in each of the microservices and gateways.

2. Set up the frontend

git clone 'repo link'
cd 'repo name
npm install
npm run dev

Recommended IDE Setup

Type Support For .vue Imports in TS

TypeScript cannot handle type information for .vue imports by default, so we replace the tsc CLI with vue-tsc for type checking. In editors, we need TypeScript Vue Plugin (Volar) to make the TypeScript language service aware of .vue types.

If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a Take Over Mode that is more performant. You can enable it by the following steps:

  1. Disable the built-in TypeScript Extension
    1. Run Extensions: Show Built-in Extensions from VSCode's command palette
    2. Find TypeScript and JavaScript Language Features, right click and select Disable (Workspace)
  2. Reload the VSCode window by running Developer: Reload Window from the command palette.