Converty is a sleek, user-friendly web application for converting media files between different formats. Built with Flask and powered by FFmpeg and Pillow, it offers a modern dark-themed interface with an intuitive drag-and-drop upload system for both videos and images.
- Versatile Media Conversion:
- Video Formats: Convert videos to popular formats (MP4, AVI, WebM, MKV, MOV, OGV)
- Image Formats: Convert images between common formats (JPG, PNG, GIF, WebP, BMP, TIFF)
- Intelligent Format Detection: Automatically detects file type and offers appropriate conversion options
- Multilingual Support: Available in English and French
- Modern Interface: Dark-themed UI with intuitive controls
- Drag-and-Drop Uploads: Easy file selection
- Responsive Design: Works on desktop and mobile devices
- Visual Progress Indication: Progress bar during conversion
Before you start, make sure you have the following installed:
- Python 3.8 or higher
- FFmpeg (required for video processing)
- Clone the repository
git clone https://github.com/Horaciel2009/Converty.git
cd converty
- Install dependencies
pip install -r requirements.txt
- Install FFmpeg (if not already installed)
- Windows: Download from FFmpeg official website and add to your PATH
- macOS:
brew install ffmpeg
- Linux:
sudo apt install ffmpeg
(Ubuntu/Debian) orsudo dnf install ffmpeg
(Fedora)
- Start the Flask server
python app.py
- Access the application
Open your web browser and go to: http://127.0.0.1:5000
The application creates two folders automatically:
uploads/
: Stores uploaded media filesconverted/
: Stores converted media files
You can modify these paths in the app.py
file if needed.
Converty currently supports:
- English (default)
- French
The language can be changed using the language selector in the header.
- Upload your media file (image or video) by dragging and dropping it onto the upload area or clicking to browse
- The application will automatically detect if it's an image or video
- Select your desired output format from the dropdown menu (options will be based on your file type)
- Click the "Convert" button to process the media file
- Once conversion is complete, the file will automatically download
- Added image conversion support:
- Now supports converting between JPG, PNG, GIF, WebP, BMP and TIFF formats
- Uses the Pillow library for high-quality image conversion
- Improved UI/UX:
- Dynamic format selection menu that only appears after file selection
- Intelligent format options that adapt to the selected file type
- Clearer app flow with improved user guidance
- Technical Improvements:
- Replaced deprecated 'imghdr' module with more robust file type detection
- Added server-side verification of image files
- Improved error handling for better user experience
- Enhanced detection of file types through both extension and content analysis
- Added multilingual support (English and French)
- Improved error handling and messaging
- Enhanced mobile responsiveness
- Initial release with video conversion functionality
- Support for MP4, AVI, WebM, MKV, MOV, OGV formats
- Drag and drop interface
- Progress bar for conversion status
- Backend: Python, Flask
- Media Processing: FFmpeg (video), Pillow (images)
- Frontend: HTML, CSS, JavaScript
- Design: Custom CSS inspired by Tailwind design principles
This project is licensed under the MIT License - see the LICENSE file for details.
Created with ❤️
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
Made with Python & Flask