- React
- TypeScript
- Redux Toolkit is used for state management
- MUI is as component library
- React Router
- React Stomp hooks is used to manage Websockets connection.
- Spring Boot 3
- Spring Data JPA
- Spring Modulith
- String Modulith is used to isolate the event log and elevator modules from each other.
- STOMP Over WebSocket
- PostgreSQL
- Flyway, MapStruct, Lombok, TestContainers, Junit and more
- AWS Cognito
- Spring Security
- AWS CDK
- Up/Down Buttons: Users can request the elevator by pressing up or down buttons on each floor.
- Inside Control Panel: Allows passengers to select their destination floor.
- Floor Request Handling:
- Keeps track of all floor requests and processes them in an optimized order.
- Determines the best order for servicing requests.
- Prioritize requests based on direction, current elevator location, and other factors.
- Admin view
- Allows Admin to view all required info at 1 place
- Event logs
- Floor stops
one_lift.mp4
two_lift.mp4
- Typically, interactions between the front-end and back-end are handled through a RESTful API.
- However, for actions related to the elevator, an asynchronous event-driven approach is employed.
- This approach enables real-time updates on the elevator's status.