Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,38 @@ yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

# Dependencies
node_modules

# Build output
dist
dist-ssr

# Environment files
.env
.env.*
!.env.example
!.env.sample
!.env.template

# Local overrides
*.local

# Cache and temp files
.cache
.temp
tmp
temp
.eslintcache
.vite
coverage

# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
Thumbs.db
*.suo
*.ntvs*
*.njsproj
Expand Down
Empty file.
Empty file added src/components/ToolCard.jsx
Empty file.
132 changes: 132 additions & 0 deletions src/data/toolsData.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
import {
Contrast,
FileEdit,
Hash,
Image as ImageIcon,
Images,
Layers,
LayoutGrid,
Lock,
Minimize2,
RefreshCw,
SplitSquareHorizontal,
Stamp,
} from "lucide-react";

export const ALL_TOOLS = [
{
id: 1,
name: "Merge PDF",
description:
"Combine multiple PDFs into a single document in milliseconds. Drag, drop, and organize securely.",
icon: Layers,
path: "/merge",
buttonText: "Open Merge Tool",
iconSize: "w-6 h-6",
},
{
id: 2,
name: "Split PDF",
description:
"Extract specific pages or break a massive document down into smaller files instantly.",
icon: SplitSquareHorizontal,
path: "/split",
buttonText: "Open Split Tool",
iconSize: "w-6 h-6",
},
{
id: 3,
name: "Add Watermark",
description:
"Stamp custom text diagonally across your documents. Perfect for sensitive drafts and contracts.",
icon: Stamp,
path: "/watermark",
buttonText: "Open Watermark Tool",
iconSize: "w-6 h-6",
},
{
id: 4,
name: "Image to PDF",
description:
"Convert JPG and PNG images into a high-quality PDF document. Drag to reorder your pages.",
icon: ImageIcon,
path: "/image-to-pdf",
buttonText: "Open Image to PDF",
iconSize: "w-6 h-6",
},
{
id: 5,
name: "Compress PDF",
description: "Reduce file size while maintaining visual quality.",
icon: Minimize2,
path: "/compress",
buttonText: "Open Compress PDF",
iconSize: "w-6 h-6",
},
{
id: 6,
name: "Rotate PDF",
description: "Rotate pages in your PDF document.",
icon: RefreshCw,
path: "/rotate",
buttonText: "Open Rotate PDF",
iconSize: "w-10 h-10",
},
{
id: 7,
name: "Organize PDF",
description: "Organize pages in your PDF document.",
icon: LayoutGrid,
path: "/organize",
buttonText: "Open Organize PDF",
iconSize: "w-10 h-10",
},
{
id: 8,
name: "PDF to Images",
description: "Extract images from your PDF document.",
icon: Images,
path: "/pdf-to-image",
buttonText: "Open PDF to Images",
iconSize: "w-6 h-6",
},
{
id: 9,
name: "Grayscale PDF",
description: "Convert your PDF to grayscale.",
icon: Contrast,
path: "/grayscale",
buttonText: "Open Grayscale PDF",
iconSize: "w-6 h-6",
},
{
id: 10,
name: "Page Numbers",
description:
"Auto-stamp sequential numbers on every page footer. Choose position, prefix, and start number.",
icon: Hash,
path: "/page-numbers",
buttonText: "Open Page Numbers",
iconSize: "w-6 h-6",
},
{
id: 11,
name: "Lock PDF",
description:
"Password-protect your PDF with RC4 encryption. Processed entirely in your browser - nothing is uploaded.",
icon: Lock,
path: "/lock-pdf",
buttonText: "Open Lock PDF",
iconSize: "w-6 h-6",
},
{
id: 12,
name: "Edit PDF",
description:
"Draw, highlight, add text, and annotate your PDF pages directly in the browser.",
icon: FileEdit,
path: "/edit-pdf",
buttonText: "Open PDF Editor",
iconSize: "w-6 h-6",
},
];
Loading