EnjoyPDF

EnjoyPDF

8 devlogs
8h 19m
•  Ship certified
Created by Tobias

Inspired by iLovePDF, bur for desktop.
EnjoyPDF is a desktop application inspired by iLovePDF that provides essential PDF tools such as merging files, extracting images, generating PDFs from images, and browsing directories—all without requiring an internet connection. Built with React.js and Ant Design, it offers a smooth, user-friendly interface for managing PDF workflows locally.
## Features
- Upload and process files
- Join PDF files
- Extract images from PDF
- Generate a PDF file by uploading a set of images
- Navigate between paths
## TechStack
- React.js
- AntDesign
- Electron

Timeline

Fixed some bugs and update readme file

Update attachment

Ship 1

1 payout of shell 154.0 shells

Tobias

about 1 month ago

Tobias Covers 7 devlogs and 8h 2m

I have completed the configuration of the functionality to generate PDF from an image.
It was a little more difficult than I thought, as I was not able to get the image dimensions before adding them to a PDF page.
In the end I was able to figure out how to get it all to work and did the deployment at https://enjoypdf.netlify.app/.

Update attachment

I have completed the development of the functionality to extract images from PDF. You are prompted to upload a file and then you can download the images individually or all together as a .zip file. It's a job where I had to do a lot of research to choose and implement the right libraries without asking an AI to generate the code for me.

PDF merge design and functionality. The field to load multiple PDF files was added, type validations are made, the merge is performed with the “pdf-merger-js” library and then displayed as an iframe on the page.

Update attachment

I have completed the design and structure of the home page with cards that allow navigation between the sub-pages of my application tools.

Update attachment

I've created the basic layout for my app, including route navigation.
I decided to use Ant as my CSS library because of its customization and large number of components, and because I wanted to use something different than Material UI this time.

Update attachment

I have completed the Electron setup for my app. It was a bit difficult at first because I had to install other packages on my Linux operating system, but after some reading and browsing through several tutorials, I was able to run my app in web and desktop mode and perform the builds.

Update attachment

I just create my react app using Vite and setup react router

Update attachment