Aniworld/features.md
2025-10-05 22:22:04 +02:00

3.3 KiB

AniWorld Application Features

1. Authentication & Security

  • Master password authentication (JWT-based)
    • POST /auth/login: Login and receive JWT token
    • GET /auth/verify: Verify JWT token validity
    • POST /auth/logout: Logout (stateless)
  • Password hashing (SHA-256 + salt)
  • Configurable session timeout
  • Secure environment variable management

2. Health & System Monitoring

  • Health check endpoints
    • /health: Basic health status
    • /api/health: Load balancer health
    • /api/health/system: System metrics (CPU, memory, disk)
    • /api/health/database: Database connectivity
    • /api/health/dependencies: External dependencies
    • /api/health/performance: Performance metrics
    • /api/health/metrics: Prometheus metrics
    • /api/health/ready: Readiness probe (Kubernetes)

3. Anime & Episode Management

  • Search anime
    • GET /api/anime/search: Search anime by title (pagination)
  • Get anime details
    • GET /api/anime/{anime_id}: Anime details
    • GET /api/anime/{anime_id}/episodes: List episodes
    • GET /api/episodes/{episode_id}: Episode details

4. Database & Storage Management

  • Database info and statistics
    • GET /api/database/info: Database stats
  • Maintenance operations
    • /maintenance/database/vacuum: Vacuum database
    • /maintenance/database/analyze: Analyze database
    • /maintenance/database/integrity-check: Integrity check
    • /maintenance/database/reindex: Reindex database
    • /maintenance/database/optimize: Optimize database
    • /maintenance/database/stats: Get database stats

5. Bulk Operations

  • Bulk download, update, organize, delete, export
    • /api/bulk/download: Start bulk download
    • /api/bulk/update: Bulk update
    • /api/bulk/organize: Organize series
    • /api/bulk/delete: Delete series
    • /api/bulk/export: Export series data

6. Performance Optimization

  • Speed limit management
    • /api/performance/speed-limit: Get/set download speed limit
  • Cache statistics
    • /api/performance/cache/stats: Cache stats
  • Memory management
    • /api/performance/memory/stats: Memory usage stats
    • /api/performance/memory/gc: Force garbage collection
  • Download queue management
    • /api/performance/downloads/tasks: List download tasks
    • /api/performance/downloads/add-task: Add download task
    • /api/performance/resume/tasks: List resumable tasks

7. Diagnostics & Logging

  • Diagnostic report generation
    • /diagnostics/report: Generate diagnostic report
  • Error reporting and stats
  • Logging configuration and log file management

8. Integrations

  • API key management
  • Webhook configuration
  • Third-party API integrations

9. User Preferences & UI

  • Theme management (light/dark/auto)
  • Language selection
  • Accessibility features (screen reader, color contrast, mobile support)
  • Keyboard shortcuts
  • UI density and grid/list view options

10. CLI Tool

  • Series scanning and management
    • Search, download, rescan, display series
    • Progress bar for downloads
    • Retry logic for operations

11. Miscellaneous

  • Environment configuration via .env
  • Modular, extensible architecture (MVC, Clean Architecture)
  • Automated testing (pytest, unittest)
  • Centralized error handling

Note: Each feature is implemented via modular controllers, services, and utilities. See the respective source files for detailed function/class definitions.