Visit Page Picker at https://page-picker.vercel.app/
After succesfull login , click on the plus icon, a modal will openup to upload the pdf.Only pdf files will be able to upload. Implemented front end and backend validation.
After uploading the pdf, 1st page of the pdf is extracted and a thumbnail image is created. This image will be displayed instead of loading all the pdf files of the user.
When clicking on the thumbnail, another page will be opened and this page displays all pages of the pdf. Here we can extract and rearrange the pdf by ##drag and dropping.
Only selected pages will be extracted and the new pdf will be in the order how it is arranged by drag and dropping. Click on the rearrange or extract button to generate the download link.You have to select atleast one page to generate the downaload link.
When clicking on the download button. The new pdf will be opened in the new tab and it will ask the permission to choose the download location.
- Go to the Clerk website: Clerk. Create an application and copy the two API keys:
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY
CLERK_SECRET_KEY
- Add the following common environment variables:
-
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
-
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
-
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/
-
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/
-
NEXT_PUBLIC_SERVER_BASEURL=http://localhost:8080
(Backend localhost address)Do npm install and npm run dev
-
-
PORT=8080
-
MONGO_URL: //Add your mongodb atlas url
-
SERVER_URL: http://localhost:8080
Do npm install and npm start
- Add debouncing for the backend api's
- Lazy loading
- Uploading the pdf's to other servers like s3 bucket
- Creating a seperate page to view the modified documents
- If not create a cron to delete the modified documents from the server