de717d219a85dacd5411c208816e836a2babd806
Introduces useDocumentReady hook to prevent race conditions when PDF operations execute before document is fully loaded. Changes: - New useDocumentReady() hook tracks document lifecycle - Subscribes to onDocumentOpened (sets true) - Subscribes to onDocumentClosed (resets to false) - Synchronous initial check (no debounce needed) - Apply documentReady guards to all viewer bridges: - AnnotationAPIBridge: guard keyboard deletion - AttachmentAPIBridge: guard attachment operations - BookmarkAPIBridge: guard bookmark operations - DocumentPermissionsAPIBridge: guard permission checks - ExportAPIBridge: guard export operations - HistoryAPIBridge: guard undo/redo - PanAPIBridge: guard pan mode - PrintAPIBridge: guard print operations - RedactionAPIBridge: guard redaction operations - RotateAPIBridge: guard rotation - ScrollAPIBridge: guard scroll operations - SearchAPIBridge: guard search functionality - SelectionAPIBridge: guard selection operations - SignatureAPIBridge: guard signature placement - SpreadAPIBridge: guard spread mode - ThumbnailAPIBridge: guard thumbnail operations - ZoomAPIBridge: guard zoom operations Prevents errors and undefined behavior when user interacts with viewer before PDF document has fully initialized. Fixes timing issues with large PDFs and slow network conditions.
build(local): simplify writeVersion task with WriteProperties plugin and enable build caching (#4139)
ci: enhance GitHub Actions workflows with Gradle setup, caching improvements, and Docker image testing (#3956)
Stirling PDF - The Open-Source PDF Platform
Stirling PDF is a powerful, open-source PDF editing platform. Run it as a personal desktop app, in the browser, or deploy it on your own servers with a private API. Edit, sign, redact, convert, and automate PDFs without sending documents to external services.
Key Capabilities
- Everywhere you work - Desktop client, browser UI, and self-hosted server with a private API.
- 50+ PDF tools - Edit, merge, split, sign, redact, convert, OCR, compress, and more.
- Automation & workflows - No-code pipelines direct in UI with APIs to process millions of PDFs.
- Enterprise‑grade - SSO, auditing, and flexible on‑prem deployments.
- Developer platform - REST APIs available for nearly all tools to integrate into your existing systems.
- Global UI - Interface available in 40+ languages.
For a full feature list, see the docs: https://docs.stirlingpdf.com
Quick Start
docker run -p 8080:8080 docker.stirlingpdf.com/stirlingtools/stirling-pdf
Then open: http://localhost:8080
For full installation options (including desktop and Kubernetes), see our Documentation Guide.
Resources
Support
- Community Discord
- Bug Reports: Github issues
Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
For development setup, see the Developer Guide.
For adding translations, see the Translation Guide.
License
Stirling PDF is open-core. See LICENSE for details.
Description
#1 PDF Application on GitHub that lets you edit PDFs on any device anywhere
https://stirling.com
dockerhacktoberfestjavapdfpdf-converterpdf-editorpdf-manipulationpdf-mergerpdf-ocrpdf-toolspdf-web-appspdfmergerself-hosted
Readme
MIT
694 MiB
Languages
Java
49.9%
TypeScript
39.9%
Python
4.3%
CSS
2.7%
Shell
0.9%
Other
2.2%

