Skip to content

Conversation

@Praneeth003
Copy link

Description

Adds consistent cursor affordances for buttons:
Show pointer on interactive buttons (button, .btn, .btn-gradient)
Show not-allowed on disabled buttons (button:disabled, .btn:disabled)

Fixes # (issue)
Not Applicable

Type of change

New feature (non-breaking change which adds functionality)

🧪 How Has This Been Tested?

Manual verification:
Run the app and open any tool (e.g., Merge, Split).
Hover enabled buttons (.btn, .btn-gradient) → pointer cursor appears.
Verify disabled buttons (initial “Process” states) → not-allowed cursor.

Checklist:
Verified output manually

Expected Results:
Enabled buttons: pointer cursor on hover.
Disabled buttons: not-allowed cursor.

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new warnings
  • New and existing unit tests pass locally with my changes

abdullahalam123 and others added 29 commits October 22, 2025 13:15
…aning

Implement a new PDF sanitization tool that allows users to remove various potentially sensitive elements from PDFs including metadata, annotations, JavaScript, embedded files, and more. The tool provides configurable options through checkboxes to selectively remove different types of content while preserving the core document structure.

Extract reusable utility functions from existing tools (remove-metadata, remove-annotations, flatten) to support the new sanitization feature. The tool handles edge cases gracefully and provides feedback when no changes are made.
… files

- Remove JavaScript actions from annotations and form fields
- Remove external links (URI, Launch, GoTo) from annotations
- Remove embedded font files while preserving font descriptors
- Add detailed error logging for each operation
…eanup

- Refactor link annotation removal logic to handle more action types (URI, Launch, GoTo, GoToR)
- Add cleanup of named destinations in catalog and names dictionary
- Improve error handling and logging throughout the sanitization process
- Update FUNDING.yml formatting
- Remove debug log in sanitize-pdf.ts
- Adjust test expectation for tool count
- Standardize dependabot.yml quotes
- Update tool icons in config
- Expand and reorganize README features list
- Fix markdown formatting in README
feat(fonts): replace google fonts with self-hosted fontsource packages

Add fontsource packages for all fonts previously loaded from Google Fonts.
Remove google fonts CDN links and update CSS to use local font imports.
This improves privacy by removing external dependencies and tracking.
- Replace PDFKit with qpdf-wasm for more robust and secure PDF encryption/decryption
- Add support for owner password and granular permission controls
- Improve UI with better security explanations and options
- Replace PDFKit with qpdf-wasm for more reliable encryption and permission handling
- Improve error handling for password-related cases
- Update UI text and styling for better clarity
- Add support for additional permission controls (page extraction)
- Optimize performance by removing page-by-page rendering
Consolidate qpdf initialization code into helpers.ts to avoid duplication
Improve error message for password protected PDFs
Fortify encryption logic by auto-filling owner password when empty
Implement new feature to remove security restrictions from PDFs including password protection and digital signature limitations. The tool allows users to unlock PDFs they have legitimate access to for editing and printing purposes. Includes UI components, error handling, and legal disclaimer about proper usage.
…dition

test(pdf-tools): update expected tool count to 41
Added a link to a video tutorial for Docker setup.
feat: implement non-root user security for Docker container
Update the GitHub repository URL in release.js to point to the correct organization.
Improve formatting in SECURITY.md by adding newlines before code blocks and fixing YAML indentation for better readability.
Implement non root user for running BentoPDF
@Praneeth003
Copy link
Author

Screenshot 2025-11-03 at 5 18 17 PM

@alam00000 alam00000 changed the base branch from main to main-beta November 26, 2025 12:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants