How rebort-hub/fastapiwebadmin works
FastAPI Web Admin is a Vue 3 administration frontend backed by a FastAPI system API and business plugins. The user-facing flow is login or registration, then authenticated navigation through dynamically configured menus and permission-checked administration pages; requests are handled by module controllers and services and return a shared response format. Major documented branches include RBAC, system administration, file handling, project management, and Celery tasks. The README documents architecture and registration conventions; source excerpts verify selected calls. Some runtime wiring and unsampled subsystems are therefore shown only where documented.
Main entry points: controller.py User endpoints · router.py HTTP routing and logs · route.ts Dynamic routing · service.py User service
Components 24
Admin frontend
- Vue application
frontend/src/App.vue - Dynamic routing
frontend/src/router/route.ts - Login interface
frontend/src/views/login/index.vue - Admin pages
frontend/src/views/system/user/index.vue - Auth API client
frontend/src/api/auth/index.ts - System API clients
frontend/src/api/useSystemApi/user.ts
Identity and access
- Authentication endpoints
backend/app/api/v1/system/auth/controller.py - Authentication service
backend/app/api/v1/system/auth/service.py - User endpoints
backend/app/api/v1/system/user/controller.py - User service
backend/app/api/v1/system/user/service.py - User records
backend/app/api/v1/system/user/model.py - Permission checks
backend/app/core/dependencies.py
System administration
- RBAC and system modules
backend/app/api/v1/system - System management views
frontend/src/views/system - File service
backend/app/api/v1/common/file/service.py - Storage providers
backend/app/utils/storage.py
Business plugins
- Project management
backend/app/plugin/fea_project/project/controller.py - Background tasks
backend/app/plugin/fea_celery/worker.py
API platform
- Application startup
backend/main.py - HTTP routing and logs
backend/app/shared/router.py - Unified responses
backend/app/utils/response.py - Application settings
backend/app/config/setting.py - Database and Redis
backend/app/database/database.py
Other components
- Administrator
Connections 29
- Administrator → Login interface: uses
README.md - Login interface → Auth API client: submits credentials
- Auth API client → Authentication endpoints: calls API
- Authentication endpoints → Authentication service: delegates
backend/app/api/v1/system/auth/controller.py - Authentication service → User records: authenticates users
backend/app/api/v1/system/auth/service.py - Administrator → Vue application: uses
README.md - Vue application → Dynamic routing: loads routes
- Dynamic routing → System management views: resolves navigation
- Dynamic routing → User endpoints: fetches menu data
- Administrator → Admin pages: manages system
README.md - Admin pages → System API clients: requests operations
- System API clients → User endpoints: calls API
- User endpoints → User service: delegates
backend/app/api/v1/system/user/controller.py - User endpoints → Permission checks: checks permissions
backend/app/api/v1/system/user/controller.py - Permission checks → User records: loads user
backend/app/core/dependencies.py - User service → User records: updates records
backend/app/api/v1/system/user/service.py - User service → Authentication service: uses authentication
backend/app/api/v1/system/user/service.py - User endpoints → Unified responses: returns response
backend/app/api/v1/system/user/controller.py - RBAC and system modules → User endpoints: includes user API
README.md - RBAC and system modules → System management views: supports administration
README.md - File service → Storage providers: uses storage
backend/app/api/v1/common/file/service.py - Project management → Permission checks: checks permissions
backend/app/plugin/fea_project/project/controller.py - Application startup → Application settings: loads configuration
backend/main.py - Application startup → HTTP routing and logs: registers application
README.md - HTTP routing and logs → RBAC and system modules: routes system APIs
README.md - HTTP routing and logs → Project management: discovers plugin routes
README.md - HTTP routing and logs → Unified responses: wraps responses
- HTTP routing and logs → Database and Redis: records operation logs
backend/app/shared/router.py - Background tasks → Database and Redis: uses task storage