Commit Graph
16 Commits
Author SHA1 Message Date
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
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
abdullahalam123 0403a9665f Release 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
dependabot[bot]andGitHub 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
abdullahalam123 3fc873d343 Release v1.0.1 2025-10-21 13:39:27 +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
abdullahalam123 6ad6a7d730 Release v1.0.0 2025-10-20 18:52:28 +05:30
abdullahalam123 59b351eee4 Release v0.0.1 2025-10-20 18:32:20 +05:30
Lalit Sudhir b3ab445538 Added version management sysytem 2025-10-19 02:03:04 -07:00
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
NanditaPatil-dotcom f1d830d81d feat:Setup Prettier for code formatting 2025-10-17 11:37:32 +05:30
abdullahalam123 3f90e5ed8d feat(docker): add docker configuration files and update styles
refactor: convert script tags to link tags for stylesheets in HTML files
fix: update PDF download to use Uint8Array for blob creation
style: reformat CSS file for better readability and organization
2025-10-12 18:23:13 +05:30
abdullahalam123 5e72d7ca2d feat(test): add comprehensive test suite and testing infrastructure
- Add vitest configuration with coverage reporting
- Create test setup file with DOM mocks
- Add tests for state management, helpers, and tool configurations
- Update tsconfig and package.json for testing support
- Clean up unused comments and improve code style
2025-10-12 17:47:08 +05:30
abdullahalam123 3e52545a6c feat: add Code of Conduct, Contribution guidelines, and License files; update HTML files to use module stylesheets 2025-10-12 15:24:29 +05:30
abdullahalam123 671297320e feat: add initial project setup with core PDF tools and utilities
- Implement core PDF manipulation tools (split, merge, convert, etc.)
- Add state management and UI utilities
- Set up build configuration with Vite and TailwindCSS
- Include essential dependencies for PDF processing
- Add gitignore and basic project configuration files
2025-10-12 11:55:45 +05:30