locally hosted web application that allows you to perform various operations on PDF files
Find a file
Anthony Stirling a9145fe84c
Lots of changes (#70)
Image extraction and conversion to formats 

Multi parallel file execution for all forms so you can input multiple files quickly 

Any file at all pdf using libreoffice, super powerful
Sadly makes docker image larger but worth it 

OCR PDF using ocr my pdf
Works awesomely for adding text to a image

Improved compression using ocr my pdf app

Settings page with custom download options such as 
- open in same window
- open in new window
- download
- download as zip

Update detection in settings page it should show notification if there is a update (very hidden)

UI cleanups

Add other image formats to PDF to Image

Various fies to icons, and pdf.js usage
2023-03-20 21:55:11 +00:00
.github Metadata editting and local only JS and pdf to image change and format pages (#44) 2023-02-11 14:27:15 +00:00
docs Metadata editting and local only JS and pdf to image change and format pages (#44) 2023-02-11 14:27:15 +00:00
gradle/wrapper Add files via upload 2023-01-27 18:23:40 +00:00
images Metadata editting and local only JS and pdf to image change and format pages (#44) 2023-02-11 14:27:15 +00:00
src/main Lots of changes (#70) 2023-03-20 21:55:11 +00:00
.gitattributes Update .gitattributes 2023-02-26 21:49:29 +00:00
.gitignore Combined changes that wouldn't merge 2023-02-07 23:14:03 +03:00
build.gradle Lots of changes (#70) 2023-03-20 21:55:11 +00:00
Dockerfile Lots of changes (#70) 2023-03-20 21:55:11 +00:00
gradlew Add files via upload 2023-01-27 18:23:40 +00:00
gradlew.bat Add files via upload 2023-01-27 18:23:40 +00:00
HowToAddNewLanguage.md Update HowToAddNewLanguage.md 2023-02-05 21:40:25 +00:00
HowToUseOCR.md Lots of changes (#70) 2023-03-20 21:55:11 +00:00
Jenkinsfile Add files via upload 2023-01-28 10:00:32 +00:00
LICENSE Initial commit 2023-01-27 18:22:43 +00:00
README.md Update README.md 2023-02-12 18:24:13 +00:00
settings.gradle Add files via upload 2023-01-27 18:23:40 +00:00


Stirling-PDF

Docker Pulls Discord Docker Image Version (tag latest semver) GitHub Repo stars Paypal Donate

This is a locally hosted web application that allows you to perform various operations on PDF files, such as splitting and adding images.

Started off as a 100% ChatGPT made application, slowly moving away from that as more features are added

I will support and fix/add things to this if there is a demand Discord

stirling-home

Features

  • Split PDFs into multiple files at specified page numbers or extract all pages as individual files.
  • Merge multiple PDFs together into a single resultant file
  • Convert PDFs to and from images
  • Reorganize PDF pages into different orders.
  • Add images to PDFs at specified locations. (WIP)
  • Rotating PDFs in 90 degree increments.
  • Compressing PDFs to decrease their filesize.
  • Add and remove passwords
  • Set PDF Permissions
  • Add watermark(s)
  • Edit metadata
  • Dark mode support.

Technologies used

  • Spring Boot + Thymeleaf
  • PDFBox
  • e-iceblue spire.pdf.free (for PDF compression untill i find a nicer way)
  • HTML, CSS, JavaScript
  • Docker

How to use

Locally

Prerequisites

  • Java 17 or later
  • Gradle 7.0 or later
  1. Clone or download the repository.
  2. Build the project using Gradle by running ./gradlew build
  3. Start the application by running ./gradlew bootRun or by calling the build jar in build/libs with java -jar jarName.jar

Docker

https://hub.docker.com/r/frooodle/s-pdf

Docker Run

docker run -p 8080:8080 frooodle/s-pdf

Docker Compose

version: '3.3'
services:
    s-pdf:
        ports:
            - '8080:8080'
        image: frooodle/s-pdf

How to View

  1. Open a web browser and navigate to http://localhost:8080/
  2. Use the application by following the instructions on the website.

Note

The application is currently not thread-safe