A modern and responsive web application that converts multiple user-selected images into a single PDF document directly in the browser.
Built with React, Vite, and jsPDF.
🚀 https://image-to-pdf-gold.vercel.app/
- 📂 Upload multiple images
- 📑 Convert all images into one PDF
- 🖱️ Drag & drop image reordering
- ❌ Delete unwanted images
- 📝 Custom PDF filename support
- ⚡ Fast browser-side PDF generation
- 🎨 Animated particle background
- 📱 Fully responsive UI
- React.js
- Vite
- JavaScript
- jsPDF
- CSS3
imageToPdf/
│
├── imageToPdf/
│ ├── public/
│ ├── src/
│ │ ├── App.jsx
│ │ ├── app.css
│ │ └── main.jsx
│ │
│ ├── .gitignore
│ ├── eslint.config.js
│ ├── index.html
│ ├── package.json
│ ├── package-lock.json
│ └── vite.config.js
│
└── README.mdClone the repository:
git clone https://github.com/SACHITH31/imageToPdf.gitMove into the project directory:
cd imageToPdf/imageToPdfInstall dependencies:
npm installRun the development server:
npm run devCreate an optimized production build:
npm run buildPreview the production build:
npm run preview- User selects multiple images
- Images are previewed instantly
- User can rearrange image order
- Images are converted into PDF pages
- PDF gets downloaded automatically
Supports selecting multiple image files at once.
Users can rearrange image order before PDF generation.
Users can remove unnecessary images before converting.
The app dynamically generates PDF pages using jsPDF while preserving:
- Aspect ratio
- Image quality
- Proper page padding
- Center alignment
Users can set their own PDF filename before downloading.
Works smoothly across:
- Desktop
- Tablets
- Mobile devices
All processing happens directly in the browser.
✅ No server uploads
✅ No cloud storage
✅ No tracking
✅ No data collection
Your files never leave your device.
- Dark mode support
- PDF compression
- Custom page sizes
- Image rotation tools
- Watermark support
- Drag & drop upload area
- Multi-language support
Contributions are welcome.
-
Fork the repository
-
Create a feature branch
git checkout -b feature-name- Commit your changes
git commit -m "Added new feature"- Push to GitHub
git push origin feature-name- Open a Pull Request
If you found this project useful, give it a star ⭐ on GitHub.
This project is licensed under the MIT License.
Developed by Sachith
- GitHub: https://github.com/SACHITH31