Overview

Overview#

DLP3D Web Backend is a web backend service built with FastAPI and MongoDB, designed to provide RESTful APIs for 3D motion data management, user management, character configuration, and motion file access. The service includes comprehensive motion data handling capabilities with support for multiple data sources including filesystem, MinIO object storage, and MySQL/SQLite databases.

The system is specifically designed for DLP3D web application, providing efficient access to motion files, restpose data, mesh files, and metadata through a unified API interface.

Key Features#

  • Multi-Source Data Access: Support for filesystem, MinIO object storage, MySQL, and SQLite data sources

  • User Management: Complete user lifecycle management including creation, authentication, and deletion

  • Character Configuration: Advanced character management with support for TTS, ASR, classification, conversation, reaction, and memory configurations

  • Motion File API: High-performance motion data access with caching and version control

  • RESTful API: Comprehensive REST API with OpenAPI/Swagger documentation

  • MongoDB Integration: Automatic database bootstrap and user provisioning

  • Caching System: Intelligent local caching with automatic maintenance and version checking

  • Log Management: Real-time log access and download capabilities

  • Health Monitoring: Built-in health check endpoints for service monitoring

System Architecture#

The DLP3D Web Backend follows a modular, layered architecture.

Core Components:

  • FastAPIServer: Main HTTP server with CORS support and error handling

  • MotionFileApiV1: Motion data access API with caching and version control

  • LocalCache: Intelligent caching system with automatic maintenance

  • Data Readers: Modular readers for different data sources

  • MongoDB Integration: Automatic database setup and user provisioning