Commit graph

14 commits

Author SHA1 Message Date
DJP
bc05da3314 Add Naming Convention management and remove L'Oréal branding
Major Features:
- Complete Naming Convention editor in Admin Panel
- Define custom filename patterns for platform detection
- Define custom filename patterns for aspect ratio detection
- Patterns saved to naming_conventions.json (editable)
- Test pattern functionality built-in
- Auto-loads patterns from JSON on server startup
- Factory reset now restores original patterns too

UI Changes:
- Remove L'Oréal references from app (now generic tool)
- Changed title to "Social Media Platform Optimization Tool"
- Renamed "Reload from Server" to "Refresh Display"
- Added "Reset to Factory Defaults" button (red, double-confirm)
- New Naming Conventions section in admin panel
- Pattern editor with add/remove functionality

Backend Enhancements:
- Save/load naming conventions to JSON
- GET /api/admin/naming-conventions (retrieve patterns)
- POST /api/admin/naming-conventions (save patterns)
- Factory defaults for patterns stored at startup
- Patterns persist across server restarts
- Detection logic now uses editable patterns

Naming Convention Features:
- Platform patterns: Map platform key to filename patterns
- Aspect ratio patterns: Map ratio to filename patterns
- Multiple patterns per platform/ratio supported
- Test functionality to verify detection
- Immediate application to main app

Example patterns:
- TikTok: _tiktok_, _tt_
- 16:9: _16x9_, _landscape_
- Meta: _meta_, _fb_, _ig_

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-17 14:32:49 -04:00
DJP
300a67d247 Add Reset to Factory Defaults button with double confirmation
Features:
- Renamed "Reload from Server" to "Refresh Display" for clarity
- Added "Reset to Factory Defaults" button with warning icon
- Red danger button styling (matches warning theme)
- Double confirmation dialog to prevent accidental resets
- Backend endpoint to restore original 8 platforms (21 configurations)
- Deletes custom platform_specs.json file
- Restores L'Oréal documentation specifications

Functionality:
- "Refresh Display" - Reloads current specs from backend (no changes)
- "Reset to Factory Defaults" - Deletes ALL custom platforms and restores original 21 configs
- Custom platforms are saved until factory reset is triggered
- Factory defaults stored at server startup for restoration

Safety features:
- Two confirmation dialogs
- Clear warning messages
- Success feedback showing platform count restored

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 18:40:59 -04:00
DJP
6021b94dbf Add admin panel quick start guide 2025-10-16 18:34:51 -04:00
DJP
5f8bac9ec4 Add comprehensive Admin Panel for platform management
Features:
- Complete admin interface for managing platform specifications
- Metrics dashboard showing total platforms, configurations, codecs, and aspect ratios
- Add new platforms with custom codecs and format configurations
- Edit existing platforms and their aspect ratio settings
- Delete platforms from the system
- Export all specifications to JSON (for backups)
- Import specifications from JSON (bulk updates/restore)
- Real-time platform list with detailed specification tables
- Dark theme (black + yellow) matching main app
- Link to admin panel from main app footer

Backend Enhancements:
- 5 new admin API endpoints (POST, PUT, DELETE, export, import)
- Auto-save to platform_specs.json file
- Auto-load specs from JSON on server startup
- Persistent storage for platform configurations
- CORS enabled for admin endpoints

Admin Panel allows non-technical users to:
- Add new social media platforms as they emerge
- Update bitrate recommendations
- Add new aspect ratio support
- Manage all 21+ platform configurations
- Export/import for version control and backups

Access: frontend/admin.html

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 18:34:12 -04:00
DJP
64f1fd6f80 Update all documentation with latest features and installation methods
Updates:
- Comprehensive README with all new features (mute controls, video specs, warnings)
- Both Standard and MAMP installation methods clearly documented
- Updated QUICKSTART with both setup methods and new features
- Updated START_WITH_MAMP with latest feature descriptions
- Added troubleshooting for both installation methods
- Documented aspect ratio warning system (yellow and red indicators)
- Added video specifications display details
- Production deployment guidance
- Performance expectations and file size reduction targets

All documentation now reflects current v1.0 feature set.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 18:14:13 -04:00
DJP
5e3d921f06 Add red warning and outline for aspect ratio changes on comparison page
Features:
- Red-bordered warning message on comparison page when aspect ratio changed
- Red outline with glow effect around optimized video player
- Visual indicators clearly show when video aspect ratio differs from original
- Warning states: "Aspect Ratio Changed: This video was converted to a different aspect ratio"
- State properly tracked and reset when uploading new files

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 17:11:46 -04:00
DJP
c1b129c797 Add aspect ratio mismatch warning and remove Impact Plus text
Features:
- Add warning message when selected aspect ratio differs from original video
- Alert user about potential distortion, stretching, or cropping
- Yellow-bordered warning box with clear messaging
- Warning automatically shows/hides based on aspect ratio selection
- Remove "Impact Plus - March 2025" from footer

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 17:08:01 -04:00
DJP
4de953fcaa Add Platform field to original video specs for alignment 2025-10-16 17:00:23 -04:00
DJP
e8f37fc989 Add video specifications display and fix sizing
Features:
- Display detailed video specs below each player (original and optimized)
- Show resolution, codec, bitrate, duration, file size, aspect ratio, and platform
- Fix video player sizing to 100% width with proper max-width constraints
- Specs displayed in clean, easy-to-read format with yellow highlights
- Shows conversion details including input and output specifications

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 16:58:31 -04:00
DJP
fad8c1268c Add independent mute controls for video comparison
Features:
- Mute/unmute button for each video player (original and optimized)
- Toggle between muted and unmuted states
- Visual feedback with button text and styling changes
- Allows listening to one video at a time or both together
- Black + yellow theme consistent with app design

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 16:56:53 -04:00
DJP
8604e1fc00 Add project summary documentation 2025-10-16 16:54:18 -04:00
DJP
1690b1caec Merge .gitignore from remote and local 2025-10-16 16:53:10 -04:00
DJP
129ea3ec1e Initial commit: Video Optimizer for L'Oréal
Complete video optimization tool with:
- 21 platform configurations (Meta, TikTok, YouTube, Pinterest, Snapchat, Amazon)
- FFmpeg-powered video conversion with H264, H265, and VP9 codecs
- Python Flask backend with REST API
- HTML/JS frontend with drag-drop interface
- Black + #FFC407 color scheme with Montserrat font
- Side-by-side video comparison player
- Filename auto-detection for platform and aspect ratio
- MAMP-compatible setup

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 16:52:11 -04:00
Dave Porter
c75d212f61 Initial commit 2025-10-16 20:50:15 +00:00