Stirling-PDF/README.md
Anthony Stirling 5275866f09
PDF security features (#26)
- Support for adding and removing passwords
- Support for watermarks
- Dedicated page remover
- Support for PDF permissions
- Removed endpoint /home and replaced with /
- Code cleanups
- Fixed page titles
2023-02-03 20:26:35 +00:00

69 lines
1.8 KiB
Markdown

# 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](https://discord.gg/Cn8pWhQRxZ)
![stirling-home](images/stirling-home.png)
## 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