Plexxis Employees is a React application created using Create React App with TypeScript. It's designed as a CRUD application to manage an employee list through REST API.
- Retrieve employees from a REST API.
- Display employees in a table using React Table and Material UI's table component.
- Create, edit, and delete employees using a pop-up dialog with automatic form validation.
- Search with debounce.
- Cursor-based pagination to avoid potential performance issues with large datasets.
- Add new employees using a pop-up dialog.
- React with TypeScript
- Material UI
- Redux
- React Table
- React Hook Form
- Clone the repository to your local machine.
git clone https://github.com/stevenlyd/plex-employees-front.git
- Navigate to the project folder, install the required dependencies.
npm install
- Create a new
.env
file in the root folder and add the following line to specify the backend API URL.
REACT_APP_BACKEND_API="<backend-url>/employees"
- Run the application (make sure the backend is already running).
npm run start
- The application will run on
http://localhost:3000
- The main page displays the employee list in a table. You can search for specific employees using the search bar. The search functionality includes debounce to improve performance.
- To add a new employee, click the "Add Employee" button. A pop-up dialog will appear, where you can enter the employee information. The form includes automatic validation to ensure the data is entered correctly.
- To edit or delete an existing employee, click on the employee row in the table. A pop-up dialog will appear, allowing you to edit the employee information or delete the employee.
- The application supports cursor-based pagination to efficiently handle large datasets and avoid potential performance issues.
- UI mechanisms to edit/update employee data
- Use React Table