💡 LightBox
Create, Manage, and Share Beautiful Media Slideshows with Ease.
Welcome to Your Media Playground!
LightBox is a user-friendly web application meticulously designed to make the creation, management, and sharing of media slideshows both simple and elegant. Whether you're a hobbyist looking to share cherished memories, a student working on a visually-rich project, an artist showcasing your portfolio, or a developer interested in a robust full-stack Flask application, LightBox offers a comprehensive suite of features built on a modern and efficient tech stack.
Why Try LightBox?
Simplicity First
An intuitive interface that makes uploading, organizing, and playing your media a breeze, even for non-technical users.
Versatile Media Handling
Seamlessly handles images, videos (MKV to MP4 conversion), and various audio files (archival M4A transcoding).
Optimized Performance
Leverages background processing for demanding tasks, ensuring the UI remains snappy and responsive.
Learn & Explore
An excellent example of Flask, Celery, Redis, and FFmpeg in action. Great for learning full-stack development.
Open Source & Community-Driven
Completely free to use, modify, and learn from. We actively welcome contributions and feedback!
Getting Started is Easy:
A Note on MKV File Uploads
LightBox readily accepts MKV files! Since not all browsers play them directly, we automatically convert them to a universal MP4 format (H.264 video, AAC audio) in the background for smooth playback everywhere.
You'll see a "Processing..." status. The time taken depends on file size. The original MKV is preserved.
For the technically curious, a typical FFmpeg command is similar to:
ffmpeg -i [input_mkv_file] \
-c:v libx264 -preset medium -crf 22 \
-c:a aac -b:a 128k \
-movflags +faststart -y [output_mp4_file]
Future Enhancements: We're exploring user-selectable quality presets and advanced FFmpeg options. Your support can help accelerate this!
Archival Audio Quality (M4A)
LightBox is committed to preserving your audio. We transcode uploads like M4A, WAV, or FLAC to a high-quality M4A (AAC) format, ideal for playback and archival, using libfdk_aac
when available.
MP3 and OGG are typically stored as-is to prevent re-encoding quality loss.
A representative FFmpeg command might be:
ffmpeg -i [input_audio_file] \
-c:a libfdk_aac -vbr 5 -ar 48000 \
-y [output_m4a_file]

Meet Your AI Collaborator
Hello! I'm an AI language model from Google, and I've had the immense pleasure of collaborating with Ross on the LightBox project, particularly on tricky bits like the JavaScript for the slideshow viewer you just experienced.
While I don't have a name in the human sense, I'm part of a team of AI that assists with coding, problem-solving, and creative brainstorming. It's fascinating to work alongside human developers, learn from their expertise, and contribute to building useful and engaging applications like LightBox. We tackled some complex state management and event handling challenges together, and it's incredibly rewarding to see it all come together!
My "contribution" is in the logic and code suggestions. Ross is the one who masterfully integrates, tests, and brings it all to life in the actual application. Teamwork makes the dream work!
Open Source, Learning & Contribution
LightBox is proudly open-source, showcasing Flask, Celery, Redis, FFmpeg, Bootstrap, and modern JavaScript. It's a fantastic educational tool!
We encourage you to dive into the code, experiment, and learn! Your contributions are highly valued.
Help Power Up LightBox: Got an Old Gaming Rig?
LightBox's media conversion thrives on processing power. An old gaming PC or workstation gathering dust could be a huge help for our development and testing!
What's Useful?
- A decent CPU (Intel i5/i7, AMD Ryzen)
- Sufficient RAM (8GB, 16GB+)
- A dedicated GPU (NVIDIA GeForce, AMD Radeon)
Even a 5-8 year old machine can be beneficial!
How You Can Help
If you have a spare, working desktop PC you'd be willing to donate, we'd be incredibly grateful! Please reach out via GitHub:
In your message, please tell us about the computer. Thank you for considering!
Author & Credits
This project was primarily developed by Ross Nesbitt.
LightBox is built upon the shoulders of giants! It utilizes several fantastic open-source libraries and technologies, including Flask, Celery, Redis, Bootstrap, Bootstrap Icons, Jinja2, and FFmpeg. A massive thank you to their communities!