Named after the messenger of the gods, Hermes is a high-performance URL shortener and analytics engine. This project demonstrates a modern Full Stack architecture with high scalability and internationalization (i18n).
- Backend: Java 17, Spring Boot 3, Spring Data JPA, Hibernate.
- Frontend: React, TypeScript, Vite, Tailwind CSS v4, i18next.
- Database: PostgreSQL (Neon.tech).
- Icons: Lucide React.
- Base62 Custom Encoding: Advanced algorithm to transform database IDs into unique, compact short codes.
- Root-Level Redirection: Optimized URL structure for the shortest possible paths (e.g.,
host/b). - Global Reach (i18n): Full support for English, Portuguese, and Spanish with automatic language detection.
- Live Analytics: Real-time click tracking and "Most Traveled Paths" dashboard.
- Resilient UI: Custom error handling and 404 "Path Lost" redirection for non-existent codes.
The system follows a clean separation of concerns:
- API Layer: REST Controllers handling HTTP requests and redirections.
- Service Layer: Business logic and encoding algorithms.
- Data Layer: PostgreSQL persistence with optimized JPA queries.
- Client Layer: Reactive UI with state management and context-aware translations.
- Clone the repository
git clone [https://github.com/engguga/hermes-project.git](https://github.com/engguga/hermes-project.git)
