locally hosted web application that allows you to perform various operations on PDF files
Go to file
Anthony Stirling aa9f8329d5
Merge pull request #43 from Sf298/localisationAndIcons
Manually added combined changes that wouldn't merge
2023-02-07 20:19:18 +00:00
.github Update push-docker.yml 2023-02-06 12:39:26 +00:00
docs
gradle/wrapper
images
src/main Combined changes that wouldn't merge 2023-02-07 23:14:03 +03:00
.gitignore Combined changes that wouldn't merge 2023-02-07 23:14:03 +03:00
build.gradle Update push-docker.yml (#38) 2023-02-05 23:35:49 +00:00
Dockerfile
gradlew
gradlew.bat
HowToAddNewLanguage.md Update HowToAddNewLanguage.md 2023-02-05 21:40:25 +00:00
Jenkinsfile
LICENSE
README.md Improve readability and Google indexing (#36) 2023-02-05 21:12:03 +00:00
settings.gradle


Stirling-PDF

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.
  • Rotating PDFs in 90 degree increments.
  • Compressing PDFs to decrease their filesize.
  • Add and remove passwords
  • Set PDF Permissions
  • Add watermark(s)
  • 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