Tech Stack
Overall Architecture
yuemutuku adopts a modern frontend-backend separation architecture. The backend is based on the Spring Boot microservices architecture, and the frontend uses the Vue 3 ecosystem to build a Single Page Application (SPA). The system features high availability, high concurrency, and scalability.
Backend Tech Stack
Core Framework
- Spring Boot 2.7.x - Core microservice development framework, providing a robust and efficient infrastructure.
- Spring MVC - Mature Web tier framework, responsible for RESTful routing and request processing.
- Sa-Token 1.39.0 - Core permission authentication framework, replacing traditional Session/Security, supporting distributed authentication and SSO.
Data Access Layer
- MyBatis-Plus 3.5.9 - ORM framework, simplifying database operations.
- MySQL 8.0 - Primary database, storing users, content, and social relationships.
- Redis 7.0 - Caching and session storage to improve system performance.
- Elasticsearch 8.0 - Search engine, providing full-text search capabilities (required component).
Message Queue & Asynchronous Processing
- Netty 4.1.104 - Network programming framework used for WebSocket real-time communication.
- LMAX Disruptor 3.4.2 - High-performance lock-free queue, used for asynchronous processing.
Caching & Session Management
- Redisson 3.21.0 - Redis client, providing features like distributed locks.
- Caffeine 2.9.3 - Local caching, improving hot data access speed.
Authentication & Security
- Sa-Token - Minimalist and powerful permission authentication, supporting WeChat QR code login, stateless Token authentication, and cross-platform login kick-out.
- Redis INCR - Combined with Redis atomic counters for precise API rate limiting and RAG message statistics.
- Spring AOP - Unified handling of logging, rate-limiting interception, and fine-grained permission verification.
Database Scaling
- ShardingSphere JDBC 5.2.0 - Sharding middleware, supporting horizontal scaling.
Object Storage
- Tencent Cloud COS SDK 5.6.227 - Object storage service for storing images and video files (required component).
AI & Intelligent Services (Python)
- LangChain (Python) 0.3.x - Core AI orchestration framework, supporting complex RAG chaining and Intelligent Agents (ReAct).
- FastAPI - Provides ultimate performance asynchronous RESTful API support for AI services, including SSE streaming data transmission.
- YOLOv8 & ONNX Runtime - Used for efficient computer vision detection, providing millisecond-level object recognition.
- OpenCV & rembg & MODNet - Image processing toolset, supporting background removal, face blurring, and smart background replacement.
- Elasticsearch - Vector database and semantic retrieval center, supporting RAG's long-term memory retrieval.
Tools
- Hutool 5.8.26 - Java toolset, simplifying development.
- Apache POI 5.2.2 - Excel document processing.
- Fastjson 2.0.43 - JSON serialization/deserialization.
- Jsoup 1.15.3 - HTML parsing and sanitization.
API Documentation
- Knife4j 4.4.0 - Swagger enhancement tool, providing a beautiful API documentation interface.
Frontend Tech Stack
Core Framework
- Vue 3.5.x - Progressive framework using Composition API, excellent performance.
- TypeScript 5.x - Strong typing system, ensuring high maintainability for large projects.
UI Framework
- Ant Design Vue 4.2.6 - Enterprise-class UI components for PC.
- Vant 4.9.22 - Mobile UI components.
State Management & Routing
- Pinia 2.2.6 - Vue's officially recommended state management library.
- Vue Router 4.4.5 - Vue's official routing manager.
HTTP Client
- Axios 1.10.0 - Promise-based HTTP client.
Data Visualization
- ECharts 5.6.0 - Data visualization charting library.
- ECharts WordCloud 2.1.0 - Word cloud plugin.
