This project is a full-stack Employee Management application built with React (frontend) and a Java REST API (backend). It allows you to create, view, edit, and delete employees, with roles such as Director, Tech, and Product. The UI uses Material-UI (MUI) for a modern look and feel.
- List all employees with their name and role
- Add a new employee
- Edit existing employee details
- Delete employees
- Success and error banners for user actions
- Accessible and tested with React Testing Library and Playwright
- /src: React frontend code (components, services, tests)
- /rest-app: Java REST API (run as a JAR)
- /playwright-tests: End-to-end tests using Playwright
In the project directory, you can run:
Starts the Java REST API backend (rest-app/rest-0.0.1-SNAPSHOT.jar) on http://localhost:8080.
Starts the React frontend on http://localhost:3000.
Starts both the REST API and React frontend in parallel.
Runs the React unit and integration tests using React Testing Library and Jest.
Starts both backend and frontend, then runs Playwright end-to-end tests (see playwright-tests/).
Builds the React app for production to the build folder.
- Unit/Integration: Run
npm testfor React component and service tests. - E2E: Run
npm run test:e2efor Playwright browser-based tests.
Make sure both backend and frontend are not already running, as the script will start them.
- Frontend: React, TypeScript, Material-UI (MUI)
- Backend: Java (Spring Boot REST API)
- Testing: Jest, React Testing Library, Playwright
- Make sure you have Java and Node.js installed.
- Backend JAR already provided in the repo at
rest-app/rest-0.0.1-SNAPSHOT.jar - Install dependencies:
npm install - Start both servers:
npm run start:all - Open http://localhost:3000 in your browser.
MIT
This project was bootstrapped with Create React App.