Skip to content

ChapaMchivi/apollonia-employee-app

Repository files navigation

README.md — Apollonia Employee App

# Apollonia Employee App

A modular CRUD web application built with Node.js, Express, and MongoDB to manage medical staff and departments for Apollonia Dental Practice.

##  Project Overview

Apollonia Dental Practice requires an internal employee management system to track medical staff by department. This project scaffolds the backend API for managing employees and departments, forming the foundation for a future full-stack employee and customer relationship management (CRM) platform.

##  Features Implemented

-  **GET All Employees** — Retrieve a list of all medical staff
-  **POST New Employee** — Create employee records with first name, last name, email, and department
-  **GET All Departments** — Retrieve a list of clinic departments
-  **POST New Department** — Create new department entries
-  **PUT Department by ID** — Update department details with validation and duplicate protection

##  Business Context

Apollonia Dental Practice currently has:

- **10 Employees**:
  - Lisa Harris, Alfred Christensen, John Dudley, Danny Perez, Sarah Alvarez, Constance Smith, Travis Combs, Francisco Willard, Janet Doe, Leslie Roche
- **5 Departments**:
  - General Dentistry, Pediatric Dentistry, Restorative Dentistry, Surgery, Orthodontics

### Staff by Department

| Department            | Staff Members                          |
|-----------------------|----------------------------------------|
| General Dentistry     | Alfred Christensen, John Dudley, Janet Doe |
| Pediatric Dentistry   | Francisco Willard, Sarah Alvarez       |
| Restorative Dentistry | Lisa Harris, Danny Perez               |
| Surgery               | Constance Smith                        |
| Orthodontics          | Leslie Roche, Lisa Harris              |

## 🛠️ Tech Stack

- **Backend**: Node.js, Express
- **Database**: MongoDB Atlas
- **Containerization**: Docker, docker-compose
- **API Testing**: Postman

##  Folder Structure

├── models/ │ └── Employee.js │ └── Department.js ├── routes/ │ └── employeeRoutes.js │ └── departmentRoutes.js ├── server.js ├── docker-compose.yml └── README.md


## 📈 Future Roadmap

Apollonia plans to expand this system into a full CRM platform with:

- Training and specialization tracking
- Patient assignment and project management
- Revenue analytics per patient and staff member
- Integrated customer relationship workflows

##  Local Setup

```bash
git clone https://github.com/your-username/apollonia-employee-app.git
cd apollonia-employee-app
docker-compose up --build

Access the API at http://localhost:3001/api/employees and http://localhost:3001/api/departments.

Contributing

This project is part of a modular build pipeline toward a full-stack healthcare CRM. Contributions welcome as new features are scoped.

License

MIT


---


Releases

No releases published

Packages

 
 
 

Contributors