Skip to content

A powerful file conversion tool built with React and TypeScript that supports multiple file formats and provides high-quality conversions.

License

Notifications You must be signed in to change notification settings

adelelawady/convertopia-manager

Repository files navigation

πŸ”„ Convertopia Manager

A powerful file conversion tool built with React and TypeScript that supports multiple file formats and provides high-quality conversions.

I created this project, Convertopia Manager, to explore client-side file conversion and enhance my skills in Python for web development. Through this project, I aimed to learn how to handle file conversions without relying on a server, while also gaining practical experience with Python and web technologies.

LIVE DEMO

πŸ”„ SCREEN SHOTS

screencapture-adelelawady-github-io-convertopia-manager-2024-11-23-22_21_55

screencapture-adelelawady-github-io-convertopia-manager-image-converter-png-2024-11-23-22_22_18

✨ Features

πŸ–ΌοΈ Image Conversion

  • Convert between PNG, JPEG, WebP, GIF, ICO, and BMP formats
  • Maintain image quality and metadata
  • Support for transparency and animations
  • Batch processing capabilities

πŸ“„ Document Conversion (Coming Soon)

  • Support for PDF, DOC, DOCX, TXT, and RTF
  • Preserve formatting and styles
  • Fast and accurate conversion
  • Multiple file processing

🎡 Audio Conversion

  • Convert between MP3, WAV, OGG, M4A, and FLAC formats
  • High-quality audio preservation
  • Metadata retention
  • Customizable conversion settings

πŸš€ Getting Started

Prerequisites

  • Node.js (v16 or higher)
  • npm or yarn
  • Modern web browser

Installation

git clone https://github.com/adelelawady/convertopia-manager.git
cd convertopia-manager
npm install
npm start

πŸ› οΈ Technology Stack

  • βš›οΈ React 18
  • πŸ“˜ TypeScript
  • 🎨 Tabler
  • πŸ”§ Vite
  • 🎬 FFmpeg.wasm
  • 🐍 Pyodide
  • πŸ“„ PDF.js

πŸ” Security Features

  • Client-side processing
  • No file uploads to servers
  • Secure file handling
  • Cross-Origin isolation support

🎯 Key Features

  1. Batch Processing

    • Convert multiple files simultaneously
    • Progress tracking
    • Bulk download options
  2. Format Support

    • Wide range of supported formats
    • High-quality conversion algorithms
    • Format-specific optimizations
  3. User Interface

    • Clean and intuitive design
    • Responsive layout
    • Dark mode support
    • Progress indicators
  4. Performance

    • Fast conversion speeds
    • Efficient memory usage
    • WebAssembly optimization

πŸ”„ Available Conversions

πŸ–ΌοΈ Image Conversions

PNG Converter

  • PNG to JPEG
  • PNG to WebP
  • PNG to GIF
  • PNG to ICO
  • PNG to BMP

JPEG Converter

  • JPEG to PNG
  • JPEG to WebP
  • JPEG to GIF
  • JPEG to ICO
  • JPEG to BMP

WebP Converter

  • WebP to PNG
  • WebP to JPEG
  • WebP to GIF
  • WebP to ICO
  • WebP to BMP

GIF Converter

  • GIF to PNG
  • GIF to JPEG
  • GIF to WebP
  • GIF to ICO
  • GIF to BMP

ICO Converter

  • ICO to PNG
  • ICO to JPEG
  • ICO to WebP
  • ICO to GIF
  • ICO to BMP

BMP Converter

  • BMP to PNG
  • BMP to JPEG
  • BMP to WebP
  • BMP to GIF
  • BMP to ICO

🎡 Audio Conversions

MP3 Converter

  • MP3 to WAV
  • MP3 to OGG
  • MP3 to M4A
  • MP3 to FLAC

WAV Converter

  • WAV to MP3
  • WAV to OGG
  • WAV to M4A
  • WAV to FLAC

OGG Converter

  • OGG to MP3
  • OGG to WAV
  • OGG to M4A
  • OGG to FLAC

M4A Converter

  • M4A to MP3
  • M4A to WAV
  • M4A to OGG
  • M4A to FLAC

FLAC Converter

  • FLAC to MP3
  • FLAC to WAV
  • FLAC to OGG
  • FLAC to M4A

πŸ” Features by Format

Image Formats

  • PNG: Lossless compression, transparency support
  • JPEG: Optimized for photographs, adjustable quality
  • WebP: Modern format with excellent compression
  • GIF: Animation support, palette optimization
  • ICO: Multi-size favicon support
  • BMP: Basic bitmap format, uncompressed

Audio Formats

  • MP3: Universal compatibility, adjustable bitrate
  • WAV: Lossless quality, professional standard
  • OGG: Open source, efficient compression
  • M4A: AAC encoding, good quality-to-size ratio
  • FLAC: Lossless compression, perfect quality

Document Formats (Coming Soon)

  • PDF: Universal document format
  • DOC/DOCX: Microsoft Word formats
  • TXT: Plain text, universal compatibility
  • RTF: Rich text format with basic formatting

NOTE

''' The file sizes may be larger or smaller than usual. You can update the arguments in FFmpeg to enhance the output quality or adjust the size. '''

πŸ’« Conversion Features

  • ✨ Batch processing support
  • πŸ”’ Client-side conversion (no uploads)
  • πŸ“Š Progress tracking
  • 🎨 Format-specific optimizations
  • πŸ”„ Drag and drop support
  • πŸ“± Mobile-friendly interface
  • πŸƒ Fast processing
  • πŸ’Ύ Automatic download

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • FFmpeg.wasm team
  • Pyodide project
  • React community
  • All contributors

πŸ“ž Support

For support, please open an issue in the GitHub repository or contact the maintainers.


Made with ❀️ by [AdelElawady]

About

A powerful file conversion tool built with React and TypeScript that supports multiple file formats and provides high-quality conversions.

Resources

License

Stars

Watchers

Forks