Sea Turtle CRM

WEB
SYSTEM
Visit Project

Project Context

  • Nature: Freelance Project.
  • Timeline: October 10, 2025 – March 10, 2026 (5 months).
  • Team Size: 8 members.

System Architecture

The project follows a Multi-application architecture with a centralized backend and decentralized frontends:

  • Backend API: Java Spring Boot 3.2 — A unified RESTful service for both applications.
  • CRM App (Internal): React 18 SPA — Dedicated to internal logistics, HR, and accounting management.
  • Web Client (Public): Next.js 14 — Public-facing site featuring Server-Side Rendering (SSR) for SEO and performance.
  • Database: MySQL 8 with Flyway for version-controlled schema migrations.

Tech Stack

LayerTechnologies
BackendSpring Boot, MySQL, Flyway, JWT, Spring Security
CRM FrontendReact 18, MUI 5, Redux Toolkit, React Hook Form, ApexCharts, ExcelJS, Jodit React
Public WebNext.js 14, TailwindCSS 3, Radix UI, PrimeReact, SWR, Firebase
DevOps & ToolsDocker, Docker Compose, Nginx, GitHub Actions, SSL/HTTPS, Discord Webhook

Key Features

  • Order & Logistics: Full CRUD status lifecycle for shipping, vehicle/driver coordination, and forwarding package management.
  • Customer & CRM: Multi-dimensional management (Bank, Contacts, Types) and quotation version history.
  • Accounting & Finance: Chart of accounts, debt reconciliation, trial balance reports, and professional Excel/PDF exports.
  • HR & Fleet Management: Driver license tracking, employee contracts, and detailed vehicle fleet monitoring.
  • Security: Stateless JWT with Refresh Tokens, Granular RBAC (Method-level @PreAuthorize), and Dynamic Role-based Menus.

Technical Highlights

  • Clean Layered Architecture: Strict Separation of Concerns (Controller → Service → Repository → Entity).
  • Complex Data Model: Over 110 entity classes reflecting high-level real-world business logic.
  • Activity Logging (AOP): Custom @LogActivity annotation to auto-capture user actions, IP addresses, and data snapshots (Old/New values).
  • DTO Pattern: MapStruct implementation to decouple the domain model from the API contract.
  • Infrastructure: Multi-stage Docker builds with Nginx reverse proxy routing and GitHub Actions for CI/CD.

My Contributions

During the development of the system, I contributed to several important components related to accounting operations, system security, access control, and deployment optimization.

  • Development of Accounting and Cost Settlement Modules (Fullstack): I was responsible for designing and implementing the cost settlement and accounting-related functionalities, including both frontend and backend components. These modules support the management of financial records, cost reconciliation processes, and invoice-related data, helping automate accounting workflows and improve operational efficiency.

  • Implementation of a Fine-Grained Authorization System: I designed and implemented a permission-based access control mechanism that allows administrators to manage system access at multiple levels, including user roles, employee positions, and individual user accounts. The system also supports function-level authorization, enabling administrators to precisely control which features or operations each user is allowed to access.

  • System Security Implementation: To enhance system security, I implemented a JWT-based authentication mechanism using Access Tokens and Refresh Tokens. This mechanism allows users to maintain authenticated sessions without requiring repeated logins when access tokens expire. Additionally, Spring Security annotations such as @PreAuthorize were applied to enforce authorization rules at the API level. A Remember Me feature was also implemented to extend refresh token validity, improving the user experience while maintaining system security.

  • Dynamic Navigation and Function Management: I developed a dynamic sidebar navigation system that renders system functions based on the roles and permissions assigned to each user. This ensures that users can only access the features that are authorized for their roles, improving both usability and system security.

  • Financial Reporting and Invoice Management: I contributed to the development of reporting functionalities for input invoices and output invoices, enabling users to monitor and analyze financial transactions. These reports support structured data presentation and assist in financial tracking and reconciliation.

  • External API Integration: I integrated external APIs to generate bank QR codes for payment transactions, enabling support for modern digital payment methods and improving transaction efficiency.

  • Corporate Policy and Terms Management: I implemented a module for managing company policies and operational terms, allowing administrators to create, update, and maintain organizational regulations within the system.

  • DevOps and Deployment Optimization: I also participated in improving the project’s deployment process by optimizing the Docker configuration and build workflow, contributing to a more efficient containerized deployment environment.


Created at: 3/10/2026