๐Ÿ“„ PDF Mergo - Web Application PDF Mergo is a web-based utility that allows users to merge multiple PDF files in a custom order, accessible directly from their web browser. This application consists of a Flask backend (Python) and a simple HTML/CSS/JavaScript frontend. ๐Ÿš€ Features โœ… User-friendly web interface for file upload and ordering ๐Ÿ”ข Choose custom order for merging via drag-and-drop (simulated reordering) ๐Ÿ“ Name the output merged file โ˜๏ธ Backend handles actual PDF merging using pypdf ๐Ÿ”„ Provides merged PDF for direct download ๐Ÿงน Backend cleans up temporary uploaded files ๐Ÿ“ Project Structure PDF Mergo/ โ”œโ”€โ”€ mergo_back.py # Flask Backend Application โ”œโ”€โ”€ templates/ โ”‚ โ””โ”€โ”€ front.html # Frontend HTML, CSS, and JavaScript โ”œโ”€โ”€ temp_uploads/ # Temporary directory for uploaded PDFs (created by backend) โ”œโ”€โ”€ .gitignore # (Optional) Git ignore file โ””โ”€โ”€ README.md # This documentation โš™๏ธ Requirements Backend (Python) Python 3.6 or higher Flask Flask-Cors pypdf Install backend dependencies with: pip install Flask Flask-Cors pypdf Frontend (Web Browser) A modern web browser (e.g., Chrome, Firefox, Edge, Safari) ๐Ÿง  How It Works Start the Backend Server: Navigate to the PDF Mergo/ directory in your terminal and run the Flask application: python mergo_back.py The backend server will typically start on http://127.0.0.1:5000/. Access the Frontend: Open your web browser and go to the address where your Flask backend is running (e.g., http://127.0.0.1:5000/). The front.html file will be served automatically. Use the Web Interface: Click the "Click to Upload PDFs" area to select one or more PDF files from your computer. The selected PDFs will appear in a list. Use the "up" and "down" arrows to reorder them as desired. You can remove a file using the "X" button. Enter your desired name for the merged PDF in the "Output Merged PDF Name" field. Click the "Merge PDFs" button. Download Merged PDF: The frontend will send your selected files to the backend. The backend will merge them and send the resulting PDF back to your browser, triggering a download. ๐Ÿ›‘ Notes The backend creates a temp_uploads/ directory to temporarily store uploaded files during the merging process. These files are automatically deleted after the merge is complete. Ensure your backend server is running and accessible from your browser. For production deployment, consider using a production-ready WSGI server (like Gunicorn or uWSGI) and a reverse proxy (like Nginx) for better performance and security. ๐Ÿ“ฌ Contributing Have suggestions or want to contribute? Fork the project and submit a pull request, or open an issue! ๐Ÿ“„ License This project is licensed under the MIT License