Commit Graph

89 Commits

Author SHA1 Message Date
TENSAI 5db93f9fa0 feat: Add Markdown to PDF conversion functionality (#59)
* feat: Add Markdown to PDF conversion functionality

- Implement dual-panel interface with live preview
- Support 3 Markdown flavors: GitHub, CommonMark, Pandoc
- Add file upload support for .md files
- Implement image quality settings (High/Medium/Low)
- Add professional user messaging and error handling
- Support all common Markdown elements (headers, lists, tables, code blocks, etc.)
- Add automatic navigation back to tool after completion

Resolves #37

* fix: improve markdown to PDF conversion with math support and better rendering

- Add KaTeX support for mathematical expressions (inline and block math)
- Fix horizontal separator rendering with improved CSS
- Enhance table rendering with proper borders and cell styling
- Replace CDN dependencies with local KaTeX installation
- Add comprehensive math preprocessing for $...$ and 20112...20112 syntax
- Improve markdown preview with real-time math rendering
- Update UI placeholder text with math examples
- Add fallback rendering for math expressions when KaTeX fails

Resolves issues with:
- Horizontal separators not rendering properly
- Tables missing borders and proper structure
- Mathematical expressions not displaying correctly

---------

Co-authored-by: syazkun <mohamadsyazwan193@gmail.com>
2025-10-23 11:52:04 +05:30
Divy Sangwan a8c3f9ffdd Feat : Allow bulk pdf compress (#67)
* Feat :  Allow bulk pdf compress

* feat(pdf-tools): add sanitize-pdf tool for comprehensive document cleaning

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.

* fix(sanitize-pdf): remove javascript actions, external links and font 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

* fix(sanitize-pdf): improve link removal and add named destinations cleanup

- 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

* chore: update config files, icons and readme

- 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

* Release v1.1.0

---------

Co-authored-by: abdullahalam123 <adullah.alam.tapadar2000@gmail.com>
Co-authored-by: Alam <50314772+alam00000@users.noreply.github.com>
2025-10-22 23:06:59 +05:30
Vivek Gaddam c9c3b33704 Word to pdf (#88)
* feat(pdf-tools): add sanitize-pdf tool for comprehensive document cleaning

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.

* fix(sanitize-pdf): remove javascript actions, external links and font 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

* fix(sanitize-pdf): improve link removal and add named destinations cleanup

- 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

* chore: update config files, icons and readme

- 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

* Release v1.1.0

* without confilt

---------

Co-authored-by: abdullahalam123 <adullah.alam.tapadar2000@gmail.com>
2025-10-22 19:45:04 +05:30
Alam 11ba3fe81b Merge pull request #73 from JAINAM576/fix/watermark-reset-after-download
fix(watermark): clear uploaded PDF and watermark inputs after download
2025-10-21 22:35:49 +05:30
abdullahalam123 05de28d791 docs: add GitHub sponsorship and 2025-10-21 18:14:57 +05:30
abdullahalam123 0403a9665f Release v1.0.2 v1.0.2 2025-10-21 14:45:33 +05:30
abdullahalam123 0ddf54cba3 build: downgrade cropperjs from v2.1.0 to v1.6.1
The newer version introduced breaking changes with additional dependencies that aren't needed for our use case. Reverting to the more stable v1.6.1 which provides the required functionality without the extra complexity.
2025-10-21 14:45:22 +05:30
Alam 25c221f8b9 Merge pull request #77 from alam00000/dependabot/npm_and_yarn/npm-dependencies-ddf38dab47
build(deps): bump the npm-dependencies group with 7 updates
2025-10-21 14:11:07 +05:30
dependabot[bot] d4f1aa30f5 build(deps): bump the npm-dependencies group with 7 updates
Bumps the npm-dependencies group with 7 updates:

| Package | From | To |
| --- | --- | --- |
| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.1.14` | `4.1.15` |
| [cropperjs](https://github.com/fengyuanchen/cropperjs/tree/HEAD/packages/cropperjs) | `1.6.1` | `2.1.0` |
| [lucide](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide) | `0.545.0` | `0.546.0` |
| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.1.14` | `4.1.15` |
| [@types/html2canvas](https://github.com/DefinitelyTyped/DefinitelyTyped) | `0.5.35` | `1.0.0` |
| [jsdom](https://github.com/jsdom/jsdom) | `27.0.0` | `27.0.1` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.1.9` | `7.1.11` |


Updates `@tailwindcss/vite` from 4.1.14 to 4.1.15
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.1.15/packages/@tailwindcss-vite)

Updates `cropperjs` from 1.6.1 to 2.1.0
- [Release notes](https://github.com/fengyuanchen/cropperjs/releases)
- [Changelog](https://github.com/fengyuanchen/cropperjs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fengyuanchen/cropperjs/commits/v2.1.0/packages/cropperjs)

Updates `lucide` from 0.545.0 to 0.546.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/0.546.0/packages/lucide)

Updates `tailwindcss` from 4.1.14 to 4.1.15
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.1.15/packages/tailwindcss)

Updates `@types/html2canvas` from 0.5.35 to 1.0.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Updates `jsdom` from 27.0.0 to 27.0.1
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/main/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/compare/27.0.0...27.0.1)

Updates `vite` from 7.1.9 to 7.1.11
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v7.1.11/packages/vite)

---
updated-dependencies:
- dependency-name: "@tailwindcss/vite"
  dependency-version: 4.1.15
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm-dependencies
- dependency-name: cropperjs
  dependency-version: 2.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: npm-dependencies
- dependency-name: lucide
  dependency-version: 0.546.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm-dependencies
- dependency-name: tailwindcss
  dependency-version: 4.1.15
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm-dependencies
- dependency-name: "@types/html2canvas"
  dependency-version: 1.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: npm-dependencies
- dependency-name: jsdom
  dependency-version: 27.0.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-dependencies
- dependency-name: vite
  dependency-version: 7.1.11
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-21 08:39:33 +00:00
Alam c9faee4fd9 Create dependabot.yml 2025-10-21 14:05:51 +05:30
abdullahalam123 3fc873d343 Release v1.0.1 v1.0.1 2025-10-21 13:39:27 +05:30
abdullahalam123 739dac55ee feat(file-handler): improve metadata display and XMP parsing
- Add new formatIsoDate helper for human-readable dates
- Enhance PDF info dictionary display with better null handling
- Implement structured XMP metadata parsing with formatted output
- Improve error handling for metadata processing
2025-10-21 13:38:54 +05:30
Alam dbc1b8eb7f Merge pull request #72 from AltuisticIsopod/main
Fix Docker Compose build to properly handle SIMPLE_MODE=true
2025-10-21 12:52:00 +05:30
Lalit Sudhir 11c24c1ff1 enhance Simple Mode with logo branding and npm script to serve SIMPLE_MODE 2025-10-21 00:03:23 -07:00
JAINAM576 929aa7e132 style: apply Prettier formatting to project 2025-10-21 12:01:19 +05:30
JAINAM576 2b85a759af fix(watermark): clear uploaded PDF and watermark inputs after download 2025-10-21 11:57:46 +05:30
Lalit Sudhir 9af9c33f74 updated SIMPLE_MODE.md 2025-10-20 18:19:29 -07:00
Lalit Sudhir 835c3c9423 update docker-compose.yml to use Normal Mode by default 2025-10-20 18:11:24 -07:00
Lalit Sudhir a8df98f20d add Simple Mode for internal organizational use 2025-10-20 17:53:09 -07:00
Alam 11c9e14803 Update Discord Link README.md 2025-10-21 01:48:44 +05:30
Lalit Sudhir 4e2d04fb9c optimize Simple Mode with true dead code elimination 2025-10-20 13:01:52 -07:00
Lalit Sudhir edc0f27e0f Adding Docker image for Simple mode 2025-10-20 12:31:04 -07:00
abdullahalam123 bf57f36cb5 docs: add initial changelog file to track project changes 2025-10-20 19:40:10 +05:30
abdullahalam123 6ad6a7d730 Release v1.0.0 v1.0.0 2025-10-20 18:52:28 +05:30
abdullahalam123 0e7c53560a feat(ocr): add whitelist presets and improve UI for OCR tool
refactor: format code and improve mobile menu accessibility
style: fix whitespace and formatting in multiple files
docs: update documentation with better formatting and examples
2025-10-20 18:51:49 +05:30
abdullahalam123 59b351eee4 Release v0.0.1 v0.0.1 2025-10-20 18:32:20 +05:30
Alam 48fe49ac37 Merge pull request #64 from AltuisticIsopod/main
feat: add Simple Mode for internal organizational use
2025-10-20 18:22:31 +05:30
Alam ccb1b119c5 Merge pull request #58 from divy-11/feature/reverse-multi-pdfs
Feature/reverse multi pdfs
2025-10-20 18:14:58 +05:30
Alam 6971c18e5e Merge pull request #65 from lunas-awful-coding-ideas/main
added description to Unraid XML
2025-10-20 18:09:01 +05:30
lunas-coding 8a72063ef7 added description to Unraid XML
added port name to the unraid XML so users know directly what the port is being used for
2025-10-20 13:30:48 +02:00
divy-11 4e6cc77a28 Removed new state pdfDocs
- update reverse-pages function
- updated test-case
2025-10-20 16:39:45 +05:30
Lalit Sudhir f037e27535 feat: add Simple Mode for internal organizational use 2025-10-20 01:42:50 -07:00
Alam 6270080045 Merge pull request #62 from yasirakhlaque/ImprovedNavbarUI
Added hamburger Navbar
2025-10-20 11:24:47 +05:30
Yasir Akhlaque f9a06b54f5 Aligned text centered 2025-10-20 11:12:26 +05:30
Yasir Akhlaque 584f2f09d1 Added hamburger navbar 2025-10-20 10:54:17 +05:30
Alam 8ac4793f9b Merge pull request #52 from AltuisticIsopod/main
feat(versioning): Added version management sysytem
2025-10-20 10:46:26 +05:30
Alam d163bd29e6 Merge pull request #60 from ShirshenduR/Fix#20
Fix#20 : fixed the tesseract issue
2025-10-20 10:32:18 +05:30
Alam 34a00ad74a Merge pull request #49 from Utkarsh-0304/feature/searchbar_shortcut
feat: add search bar keyboard shortcut
2025-10-19 22:29:11 +05:30
Shirshendu R Tripathi 797d8f5b9d Fix#20 OCR pdf text not selectable 2025-10-19 22:13:49 +05:30
Shirshendu R Tripathi ef7b9d0365 Fix#20 OCR pdf text not selectable 2025-10-19 22:12:51 +05:30
Utkarsh Agarwal 6bfcb30592 fix caps on focus and ios/android disabled display 2025-10-19 20:22:45 +05:30
divy-11 a605e56834 test-case added. 2025-10-19 19:50:19 +05:30
divy-11 2e2c634b41 Feat: Reverse-pages for mulit-pdf
- Added new state pdfDocs: [ ]
- Made tweaks for new state in fileHandler.ts
2025-10-19 18:36:57 +05:30
Alam caf23b0ab9 Merge pull request #53 from alam00000/add-attachments
feat(pdf-tools): add attachments feature to embed files in PDFs
2025-10-19 15:06:39 +05:30
abdullahalam123 88e05e6713 feat(pdf-tools): add attachments feature to embed files in PDFs
Implement new functionality to allow embedding attachments into PDF documents. The feature includes:
- UI for selecting PDF and files to attach
- Logic to embed files while preserving metadata
- Display of attached files with size information
- Download of modified PDF with embedded files
2025-10-19 15:02:27 +05:30
Lalit Sudhir b3ab445538 Added version management sysytem 2025-10-19 02:03:04 -07:00
Alam ddeebc8142 Merge pull request #51 from alam00000/linearize
feat(pdf-tools): add linearize pdf tool for web optimization
2025-10-19 14:03:15 +05:30
abdullahalam123 8a494c0a01 feat(pdf-tools): add linearize pdf tool for web optimization
Add new linearize PDF tool that optimizes PDFs for fast web viewing using qpdf-wasm. Includes UI components, logic implementation, and test updates. The tool processes multiple PDFs and downloads them in a ZIP archive.
2025-10-19 13:59:25 +05:30
Utkarsh Agarwal f11efe7278 Add Search bar Keyboard Shortcut 2025-10-18 23:58:41 +05:30
Alam 8e549b7304 Update README.md 2025-10-18 21:30:59 +05:30