Welcome to this exciting project that transforms your browser into a powerful PDF editor! Built purely in JavaScript, it allows you to add some pizzazz into your boring PDFs with text and images, and save them - all directly in your browser. No server-side processing, no problem!
- Edit PDF files in your browser: Why download when you can do it online?
- Add text and images: Make your PDFs more engaging!
- Save edited PDFs: Keep what you love, discard what you don't!
- Pure JavaScript: Because we love JavaScript!
This project shines thanks to several amazing libraries:
- Fabric.js: Our magic wand for working with HTML canvas elements.
- jsPDF: Our partner-in-crime for generating PDF files in JavaScript.
- Tailwind CSS: Our secret sauce for rapidly building custom user interfaces that are as unique as you are!
We believe in the power of Rollup, which bundles our JavaScript code and morphs TypeScript into JavaScript.
To join the fun of building this project, run:
- Clone the repository:
git clone https://github.com/MHMALEK/pdf-editor.git
Navigate into the project directory:
cd pdf-editor
Install the dependencies:
npm install
Start the development server:
npm start
then you can develop and run it on develop env.
Or you can just go and use the deployed version here:
https://pdf-editor-pure-js.netlify.app/
Load a PDF by clicking on the "Load PDF" button and selecting a file. Click on the "Add Text" button to add a text object to the PDF. Select the text to enable the editing options. Use the options at the bottom of the screen to style the text. Click on the "Save PDF" button to download the edited PDF.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
🎁 License
Free to use, free to explore! This project is all yours to play around with, but remember, it's mainly for testing purposes.
🤝 Contribution
We're all about learning and growing together. Contributions are more than welcome. Fork this project, make it your own, and create a pull request with your shiny new changes!
It's a playground for you to learn, test, and have fun. Please use wisely and at your own risk!