-
Notifications
You must be signed in to change notification settings - Fork 0
Infrastructure #34
Copy link
Copy link
Open
Labels
phase:infrastructureInfrastructure and core classesInfrastructure and core classespriority:mediumMedium priority taskMedium priority task
Description
- Create essential core classes (only when needed by priority tasks)
Tasks
-
engine/core/application.php- Main application bootstrap -
engine/core/config.php- Configuration management -
engine/core/container.php- Simple dependency injection -
engine/core/router.php- URL routing for modern features -
engine/data/client.php- Client/project management -
engine/data/directory.php- Directory scanning and management -
engine/data/file.php- Generic file handling with metadata -
engine/data/playlist.php- File collections and selections -
engine/data/media.php- Parent class for video, images, audio etc. -
engine/data/video.php- Video processing including conversion and thumbnails -
engine/data/image.php- Image processing including thumbnails -
engine/core/file_system.php- File system operations and utilities -
engine/data/directory.php- Directory scanning and pattern matching - Create PHP alternatives for
bin/scripts (batchsync, etc.) - Extract thumbnail generation logic
- Move metadata parsing from
inc/functions.php(parseAtom, etc.) - Extract file variant detection logic (stripVariantSuffix, findVariants)
- Move MIME type handling from global arrays
- Extract file pattern matching logic (matchesPattern, matchesIgnorePattern)
-
engine/auth/user.php- User representation and session handling -
engine/auth/email.php- Email-based authentication with verification codes -
engine/auth/facebook.php- Facebook authentication -
engine/auth/wordpress.php- WordPress authentication integration -
engine/auth/access_control.php- Permissions and rights management -
engine/api/auth.php- Authentication API endpoints - No registration required - authentication via email verification codes
- Temporary access tokens for project-specific access
- No permanent user accounts unless explicitly created
- Admin creates clients (project managers)
- Clients can invite users to their projects via email
- Granular permissions: read-only, upload, favorites/selections, admin
- Project-specific or client-wide access control
- Per-project notification lists (email addresses)
- Automated notifications when daily sessions are complete
- Client-managed notification preferences
- No login required for viewing content (public access)
- Login required only for upload functionality
- Integration with existing wrap-wp WordPress plugin
- Modernize Facebook integration
- Add support for other auth providers
- RESTful API for external integrations
- WebSocket support for real-time updates
- Modern video player integration
- Mobile-first responsive design
- Progressive Web App features
- Implement proper caching strategies
- Optimize media processing pipeline
- Add CDN support
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
phase:infrastructureInfrastructure and core classesInfrastructure and core classespriority:mediumMedium priority taskMedium priority task
Projects
Status
No status