Project Structure - Domenicko/medical-booking-system GitHub Wiki
Project Structure
The Medical Booking System will use a component-based React structure to keep the code organized, reusable and maintainable.
Main Project Structure
medical-booking-system/
│
├── public/
│
├── src/
│ │
│ ├── assets/
│ │ └── images/
│ │
│ ├── components/
│ │ ├── Navbar/
│ │ ├── DoctorCard/
│ │ ├── BookingForm/
│ │ └── Button/
│ │
│ ├── pages/
│ │ ├── Home/
│ │ ├── Doctors/
│ │ ├── DoctorProfile/
│ │ └── Booking/
│ │
│ ├── data/
│ │ └── doctors
│ │
│ ├── App.jsx
│ ├── main.jsx
│ └── index.css
│
├── .gitignore
├── package.json
├── README.md
└── vite.config.js
Folder Description
public/
Contains static files that can be accessed directly by the application.
src/assets/
Contains project assets such as images and other resources used by the application.
src/components/
Contains reusable React components.
Examples include:
- Navigation bar
- Doctor cards
- Booking form
- Buttons
- Other reusable UI elements
src/pages/
Contains the main pages of the application.
Planned pages include:
- Home
- Doctors
- Doctor Profile
- Booking
src/data/
Contains structured data used by the application, such as doctor information and available specialties.
App.jsx
Contains the main application component and application-level routing or layout.
main.jsx
The entry point of the React application.
index.css
Contains global CSS styles and Tailwind CSS configuration/imports where required.
Component Structure
The application will use reusable components instead of placing all functionality inside a single component.
For example:
Doctors Page
│
├── DoctorCard
├── DoctorCard
├── DoctorCard
└── DoctorCard
This approach makes the application easier to maintain and allows components to be reused across different pages.
Development Approach
The project structure may be adjusted during development if new functionality requires additional components, pages or folders.
The final structure will be documented and kept consistent with the actual project implementation.