gitextract_9h9_xbii/ ├── .dockerignore ├── .github/ │ └── workflows/ │ ├── docker-publish.yml │ └── release.yml ├── .gitignore ├── .npmrc ├── Dockerfile ├── Dockerfile.gha ├── README.md ├── client/ │ ├── .npmrc │ ├── package.json │ ├── public/ │ │ ├── index.html │ │ ├── manifest.json │ │ └── text.md │ └── src/ │ ├── App.js │ ├── components/ │ │ ├── AlbumManager.js │ │ ├── ApiDocs.js │ │ ├── DirectorySelector.js │ │ ├── FloatingToolbar.js │ │ ├── ImageCompressor.js │ │ ├── ImageCropperTool.js │ │ ├── ImageDetailModal.js │ │ ├── ImageEditModal.js │ │ ├── ImageGallery.js │ │ ├── Logo.js │ │ ├── LogoWithText.js │ │ ├── MapPage.js │ │ ├── PasswordOverlay.js │ │ ├── ScrollingBackground.js │ │ ├── ShareView.js │ │ ├── SvgToPngTool.js │ │ ├── SvgToolModal.js │ │ ├── ThemeSwitcher.js │ │ ├── TrafficDashboard.js │ │ └── UploadComponent.js │ ├── index.js │ └── utils/ │ ├── api.js │ └── secureStorage.js ├── config.js ├── docker-compose.yml ├── docker-entrypoint.sh ├── env.example ├── package.json ├── server/ │ ├── db/ │ │ ├── database.js │ │ ├── imageRepository.js │ │ └── shareRepository.js │ ├── index.js │ ├── middleware/ │ │ ├── auth.js │ │ └── upload.js │ ├── routes/ │ │ ├── imageRoutes.js │ │ ├── manageRoutes.js │ │ ├── searchRoutes.js │ │ ├── shareRoutes.js │ │ ├── statsRoutes.js │ │ ├── systemRoutes.js │ │ └── uploadRoutes.js │ ├── services/ │ │ ├── clipService.js │ │ ├── metadataService.js │ │ └── syncService.js │ └── utils/ │ ├── albumUtils.js │ ├── fileUtils.js │ └── urlUtils.js └── start.sh