Full-Stack Web Development · /book-it-quick
Book-it-quick
Enterprise-Grade Personal Bookkeeping System with High-Precision Ledger
A full-stack, enterprise-grade personal bookkeeping and financial analytics platform developed during an intensive 2-week Software Production Internship at Shandong University of Science and Technology. Engineered from the ground up to eliminate floating-point arithmetic drift, the system integrates high-precision monetary ledgers, automated recurring billing, real-time analytics dashboards, and robust stateless authentication.
- Spring Boot
- Java 25
- Vue 3
- MyBatis
- MySQL
- Vite
- Element Plus
- ECharts
- JWT & Spring Security
- Pinia
- i18n

Overview
A full-stack, enterprise-grade personal bookkeeping and financial analytics platform developed during an intensive 2-week Software Production Internship at Shandong University of Science and Technology. Engineered from the ground up to eliminate floating-point arithmetic drift, the system integrates high-precision monetary ledgers, automated recurring billing, real-time analytics dashboards, and robust stateless authentication.
Problem
Personal finance tools often suffer from floating-point calculation drift, rigid single-currency setups, and vulnerable session management. The challenge was building an end-to-end production-ready financial platform from scratch in just 10 working days, enforcing strict monetary precision (BigDecimal/DECIMAL(15,2)), enterprise auth hygiene, and automated background jobs.
Solution
High-Precision Financial Core: End-to-end BigDecimal in Java and DECIMAL(15,2) in MySQL, completely preventing floating-point calculation drift across all monetary operations. Enterprise Security Architecture: Stateless JWT authentication with rotating SHA-256 refresh tokens, auto-pruning token denylist, login rate limiting, and RBAC (USER/ADMIN). Automated Cron Operations: Spring @Scheduled background workers for daily currency exchange sync, recurring monthly bill generation, recycle bin pruning, and token cleanup. Interactive Dashboard & 5-Locale i18n: Vue 3 + Element Plus UI with Apache ECharts visualization, persistent dark mode, and runtime switching across 5 languages (English, Indonesian, Japanese, Simplified Chinese, Traditional Chinese).
Architecture & Core Systems
Layered Backend Architecture: Strict separation across Security Filters -> Controllers -> Services -> MyBatis Mappers -> MySQL with idempotent migration scripts. Multi-Currency Pipeline: Automated daily cron syncing live exchange rates via external API, dynamically recalculating dashboard totals across currencies. Soft-Delete & Audit Pattern: Non-destructive deletion flags with user-facing Recycle Bin recovery and automated retention cleanup.
Technical Implementation
Security Layer: BCrypt password hashing, HS256 JWT with RBAC claims, token rotation chaining via replaced_by, and denylist middleware. Query Optimization: Composite index on (user_id, bill_date) ensuring fast paginated transaction queries. Data Visualization: Real-time category distribution pie charts and 7-day cash-flow trends powered by Apache ECharts.
Challenges
Enforcing strict arithmetic precision across all API serialization, database queries, and client-side aggregations. Transitioning from Game Technology to full-stack enterprise Java/Vue architecture under an intensive 10-day deadline.
Results
Successfully engineered and delivered within the 10-day deadline at Shandong University of Science and Technology. Open-source on GitHub with comprehensive test endpoints and architecture documentation.
Lessons Learned
Financial software demands strict data integrity (BigDecimal over float/double) and atomic transactions. Core software engineering patterns—such as modular REST layering, stateless auth hygiene, and automated cron jobs—translate seamlessly across both game engines and web platforms.
Screenshots & Gameplay
Visual assets and in-game captures from Book-it-quick. Click any image to open the full-resolution preview.