Files

1 line
38 KiB
JSON

{"repo": "a-w-c-j/pdf-to-image-project", "files": {"README.md": {"e547605a3100c8303db0d7f66b54cc33e07ffb8c": {"t": 1785747266.138694, "n": 9917, "h": "461a99630b06c2a1", "c": "# PDF to Image Converter\n\n<div align=\"center\">\n\n[![Live Demo](https://img.shields.io/badge/🌐_Live_Demo-www.pdf2img.top-blue?style=for-the-badge)](https://www.pdf2img.top)\n[![Deployed on Vercel](https://img.shields.io/badge/Deployed%20on-Vercel-black?style=for-the-badge&logo=vercel)](https://vercel.com/awcjs-projects/v0-pdf-to-image-project)\n[![Built with Next.js](https://img.shields.io/badge/Built%20with-Next.js%2015-black?style=for-the-badge&logo=next.js)](https://nextjs.org/)\n\n**A comprehensive, AI-powered PDF processing platform with advanced OCR, batch conversion, and content generation capabilities**\n\n[🚀 Try Online Tool](https://www.pdf2img.top) • [📖 Documentation](#documentation) • [🤝 Contributing](#contributing)\n\n</div>\n\n## ✨ Features\n\n### 🔄 Core PDF Processing\n- **Batch Conversion**: Convert multiple PDF files and pages simultaneously\n- **Multiple Output Formats**: PNG, JPEG, WebP, and GIF animation support\n- **High-Quality Rendering**: Customizable scale and compression settings\n- **Password Protection**: Handle encrypted PDF files securely\n- **Privacy First**: 100% client-side processing - files never leave your device\n\n### 🤖 AI-Powered Features\n- **OCR Text Extraction**: Advanced text recognition using Tesseract.js\n- **Searchable PDF Generation**: Create searchable PDFs from scanned documents\n- **AI Content Generation**: Integrated WebLLM for intelligent content processing\n- **Smart Watermarking**: AI-assisted watermark positioning and optimization\n\n### 🎨 Advanced Capabilities\n- **GIF Animation Creation**: Convert PDF pages to animated GIFs\n- **Batch File Processing**: Handle multiple files with progress tracking\n- **Custom Watermarks**: Text and image watermarks with opacity control\n- **PDF Manipulation**: Merge, split, and edit PDF documents using PDF-lib\n\n### 🌐 User Experience\n- **Multilingual Support**: Chinese and English interfaces with next-intl\n- **Dark/Light Themes**: Seamless theme switching with next-themes\n- **Mobile Responsive**: Optimized for all device sizes\n- **Real-time Progress**: Live conversion progress with detailed feedback\n- **Error Handling**: Comprehensive error boundary system\n\n### 📝 Content Management\n- **Integrated Blog System**: Technical articles and tutorials\n- **SEO Optimization**: Built-in SEO components and schema markup\n- **Firebase Analytics**: User behavior tracking and insights\n- **Supabase Backend**: Robust data management and storage\n\n## 🚀 Quick Start\n\n### Online Tool\nVisit **[www.pdf2img.top](https://www.pdf2img.top)** to use the converter directly in your browser.\n\n### Local Development\n\n\\`\\`\\`bash\n# Clone the repository\ngit clone https://github.com/A-W-C-J/pdf-to-image-project.git\n\n# Navigate to project directory\ncd pdf-to-image-project\n\n# Install dependencies\nnpm install\n\n# Configure environment variables\ncp .env.example .env.local\n# Edit .env.local and add your Supabase credentials\n\n# Start development server\nnpm run dev\n\\`\\`\\`\n\n#### Environment Setup\n\n1. **Supabase Configuration**: \n - Visit [Supabase Dashboard](https://supabase.com/dashboard/project/_/settings/api)\n - Copy your project URL and anon key\n - Add them to `.env.local`:\n \\`\\`\\`\n NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url\n NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key\n \\`\\`\\`\n\n2. **Database Setup**:\n - Execute the SQL script in `scripts/001_create_blog_tables.sql` in your Supabase SQL Editor\n - This creates the necessary tables for the blog feature\n - See [SUPABASE_SETUP.md](./SUPABASE_SETUP.md) for detailed instructions\n\n3. **Optional - Blog Feature**:\n - Add DeepSeek API key for AI blog generation:\n \\`\\`\\`\n DEEPSEEK_API_KEY=your_deepseek_api_key\n \\`\\`\\` run dev\n\\`\\`\\`\n\nOpen [http://localhost:3000](http://localhost:3000) to view the application.\n\n## 🛠️ Technology Stack\n\n### Frontend Framework\n- **Next.js 15**: React framework with App Router and Server Components\n- **React 19**: Latest React with concurrent features\n- **TypeScript**: Full type safety and enhanced developer experience\n\n### Styling & UI\n- **Tailwind CSS v4**: Utility-first CSS framework with PostCSS\n- **Stylus**: CSS preprocessor for component-specific styling\n- **shadcn/ui**: Beautiful and accessible UI components\n- **Radix UI**: Headless UI primitives for complex components\n- **next-themes**: Theme switching with system preference support\n\n### PDF & Document Processing\n- **PDF.js (pdfjs-dist)**: Mozilla's PDF rendering engine\n- **PDF-lib**: PDF creation and manipulation\n- **Tesseract.js**: OCR text extraction and recognition\n- **GIF.js**: Animated GIF generation from PDF pages\n\n### AI & Machine Learning\n- **@mlc-ai/web-llm**: Client-side large language model integration\n- **WebLLM**: Browser-based AI content generation\n\n### Backend & Database\n- **Supabase**: Backend-as-a-Service with PostgreSQL\n- **Firebase**: Analytics and performance monitoring\n- **next-intl**: Internationalization with server-side rendering\n\n### Development & Testing\n- **Jest**: Unit testing framework with React Testing Library\n- **ESLint**: Code linting with Next.js configuration\n- **Webpack**: Custom loaders for Stylus and CSS modules\n\n### Deployment & Analytics\n- **Vercel**: Serverless deployment platform\n- **Firebase Analytics**: User behavior tracking\n- **SEO Optimization**: Built-in meta tags and schema markup\n\n## 📖 Documentation\n\n### Architecture Overview\n\nThe application follows a modern Next.js 15 architecture with:\n- **Server Components**: For SEO-optimized static content\n- **Client Components**: For interactive PDF processing\n- **Hybrid Styling**: Tailwind CSS + Stylus modules\n- **Error Boundaries**: Comprehensive error handling system\n\n### Core Features\n\n#### PDF Processing Engine\n- **PDF.js Integration**: Renders PDF pages as high-quality canvas elements\n- **Multi-format Export**: PNG, JPEG, WebP with customizable quality\n- **Batch Processing**: Concurrent file processing with progress tracking\n- **Memory Management**: Efficient handling of large files and multiple pages\n\n#### OCR & Text Extraction\n- **Tesseract.js**: Advanced optical character recognition\n- **Searchable PDFs**: Generate PDFs with embedded text layers\n- **Multi-language Support**: OCR for various languages\n- **Word-level Coordinates**: Precise text positioning data\n\n#### AI-Powered Features\n- **WebLLM Integration**: Client-side language model processing\n- **Content Generation**: AI-assisted text and content creation\n- **Smart Processing**: Intelligent document analysis and optimization\n\n#### Advanced Capabilities\n- **GIF Animation**: Convert PDF sequences to animated GIFs\n- **PDF Manipulation**: Merge, split, and edit documents with PDF-lib\n- **Custom Watermarking**: Text and image overlays with positioning control\n- **Batch Operations**: Process multiple files simultaneously\n\n#### Security & Privacy\n- **Client-side Processing**: All operations performed locally\n- **File Validation**: Comprehensive input validation and sanitization\n- **Error Handling**: Robust error boundaries and user feedback\n- **Rate Limiting**: Built-in abuse prevention mechanisms\n\n### Key Modules\n\n- `app/page.tsx` - Main PDF converter interface with all features\n- `components/error-boundary.tsx` - Application-wide error handling\n- `lib/i18n.tsx` - Internationalization with next-intl\n- `lib/validation.ts` - File and input validation system\n- `lib/error-handler.ts` - Centralized error management\n- `components/ui/` - Reusable UI components with Stylus styling\n- `app/blog/` - Integrated blog system with Supabase backend\n\n## 🤝 Contributing\n\nWe welcome contributions! Here's how you can help:\n\n1. **Fork the repository**\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n3. **Commit your changes**: `git commit -m 'Add amazing feature'`\n4. **Push to the branch**: `git push origin feature/amazing-feature`\n5. **Open a Pull Request**\n\n### Development Guidelines\n\n- **TypeScript**: Maintain strict type safety and use proper interfaces\n- **Styling**: Use Tailwind CSS for utilities and Stylus modules for component-specific styles\n- **Components**: Follow React best practices with proper error boundaries\n- **Testing**: Write unit tests with Jest and React Testing Library\n- **Performance**: Optimize for Web Vitals and minimize client-side JavaScript\n- **Accessibility**: Ensure WCAG compliance and keyboard navigation\n- **Internationalization**: Use next-intl for all user-facing text\n- **Error Handling**: Implement comprehensive error boundaries and validation\n\n## 📄 License\n\nThis project is open source and available under the [MIT License](LICENSE).\n\n## 🔗 Links\n\n- **Live Application**: [www.pdf2img.top](https://www.pdf2img.top)\n- **Blog**: [www.pdf2img.top/blog](https://www.pdf2img.top/blog)\n- **Issues**: [GitHub Issues](https://github.com/A-W-C-J/pdf-to-image-project/issues)\n\n## 🙏 Acknowledgments\n\n- [PDF.js](https://mozilla.github.io/pdf.js/) - Mozilla's PDF rendering library\n- [Next.js](https://nextjs.org/) - React framework with App Router\n- [Tailwind CSS](https://tailwindcss.com/) - Utility-first CSS framework\n- [shadcn/ui](https://ui.shadcn.com/) - Beautiful and accessible UI components\n- [Radix UI](https://www.radix-ui.com/) - Headless UI primitives\n- [Tesseract.js](https://tesseract.projectnaptha.com/) - OCR engine for JavaScript\n- [PDF-lib](https://pdf-lib.js.org/) - PDF creation and manipulation\n- [WebLLM](https://webllm.mlc.ai/) - Client-side large language models\n- [Supabase](https://supabase.com/) - Backend-as-a-Service platform\n- [Stylus](https://stylus-lang.com/) - Expressive CSS preprocessor\n- [next-intl](https://next-intl-docs.vercel.app/) - Internationalization for Next.js\n- [next-themes](https://github.com/pacocoursey/next-themes) - Theme switching library\n\n---\n\n<div align=\"center\">\n\n**[⭐ Star this repository](https://github.com/A-W-C-J/pdf-to-image-project) if you find it helpful!**\n\nMade with ❤️ by [A-W-C-J](https://github.com/A-W-C-J)\n\n</div>\n"}, "e09f69eb71e87a7be09e82d58a3d2399b8084634": {"t": 1785772029.755723, "n": 9917, "h": "461a99630b06c2a1", "c": "# PDF to Image Converter\n\n<div align=\"center\">\n\n[![Live Demo](https://img.shields.io/badge/🌐_Live_Demo-www.pdf2img.top-blue?style=for-the-badge)](https://www.pdf2img.top)\n[![Deployed on Vercel](https://img.shields.io/badge/Deployed%20on-Vercel-black?style=for-the-badge&logo=vercel)](https://vercel.com/awcjs-projects/v0-pdf-to-image-project)\n[![Built with Next.js](https://img.shields.io/badge/Built%20with-Next.js%2015-black?style=for-the-badge&logo=next.js)](https://nextjs.org/)\n\n**A comprehensive, AI-powered PDF processing platform with advanced OCR, batch conversion, and content generation capabilities**\n\n[🚀 Try Online Tool](https://www.pdf2img.top) • [📖 Documentation](#documentation) • [🤝 Contributing](#contributing)\n\n</div>\n\n## ✨ Features\n\n### 🔄 Core PDF Processing\n- **Batch Conversion**: Convert multiple PDF files and pages simultaneously\n- **Multiple Output Formats**: PNG, JPEG, WebP, and GIF animation support\n- **High-Quality Rendering**: Customizable scale and compression settings\n- **Password Protection**: Handle encrypted PDF files securely\n- **Privacy First**: 100% client-side processing - files never leave your device\n\n### 🤖 AI-Powered Features\n- **OCR Text Extraction**: Advanced text recognition using Tesseract.js\n- **Searchable PDF Generation**: Create searchable PDFs from scanned documents\n- **AI Content Generation**: Integrated WebLLM for intelligent content processing\n- **Smart Watermarking**: AI-assisted watermark positioning and optimization\n\n### 🎨 Advanced Capabilities\n- **GIF Animation Creation**: Convert PDF pages to animated GIFs\n- **Batch File Processing**: Handle multiple files with progress tracking\n- **Custom Watermarks**: Text and image watermarks with opacity control\n- **PDF Manipulation**: Merge, split, and edit PDF documents using PDF-lib\n\n### 🌐 User Experience\n- **Multilingual Support**: Chinese and English interfaces with next-intl\n- **Dark/Light Themes**: Seamless theme switching with next-themes\n- **Mobile Responsive**: Optimized for all device sizes\n- **Real-time Progress**: Live conversion progress with detailed feedback\n- **Error Handling**: Comprehensive error boundary system\n\n### 📝 Content Management\n- **Integrated Blog System**: Technical articles and tutorials\n- **SEO Optimization**: Built-in SEO components and schema markup\n- **Firebase Analytics**: User behavior tracking and insights\n- **Supabase Backend**: Robust data management and storage\n\n## 🚀 Quick Start\n\n### Online Tool\nVisit **[www.pdf2img.top](https://www.pdf2img.top)** to use the converter directly in your browser.\n\n### Local Development\n\n\\`\\`\\`bash\n# Clone the repository\ngit clone https://github.com/A-W-C-J/pdf-to-image-project.git\n\n# Navigate to project directory\ncd pdf-to-image-project\n\n# Install dependencies\nnpm install\n\n# Configure environment variables\ncp .env.example .env.local\n# Edit .env.local and add your Supabase credentials\n\n# Start development server\nnpm run dev\n\\`\\`\\`\n\n#### Environment Setup\n\n1. **Supabase Configuration**: \n - Visit [Supabase Dashboard](https://supabase.com/dashboard/project/_/settings/api)\n - Copy your project URL and anon key\n - Add them to `.env.local`:\n \\`\\`\\`\n NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url\n NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key\n \\`\\`\\`\n\n2. **Database Setup**:\n - Execute the SQL script in `scripts/001_create_blog_tables.sql` in your Supabase SQL Editor\n - This creates the necessary tables for the blog feature\n - See [SUPABASE_SETUP.md](./SUPABASE_SETUP.md) for detailed instructions\n\n3. **Optional - Blog Feature**:\n - Add DeepSeek API key for AI blog generation:\n \\`\\`\\`\n DEEPSEEK_API_KEY=your_deepseek_api_key\n \\`\\`\\` run dev\n\\`\\`\\`\n\nOpen [http://localhost:3000](http://localhost:3000) to view the application.\n\n## 🛠️ Technology Stack\n\n### Frontend Framework\n- **Next.js 15**: React framework with App Router and Server Components\n- **React 19**: Latest React with concurrent features\n- **TypeScript**: Full type safety and enhanced developer experience\n\n### Styling & UI\n- **Tailwind CSS v4**: Utility-first CSS framework with PostCSS\n- **Stylus**: CSS preprocessor for component-specific styling\n- **shadcn/ui**: Beautiful and accessible UI components\n- **Radix UI**: Headless UI primitives for complex components\n- **next-themes**: Theme switching with system preference support\n\n### PDF & Document Processing\n- **PDF.js (pdfjs-dist)**: Mozilla's PDF rendering engine\n- **PDF-lib**: PDF creation and manipulation\n- **Tesseract.js**: OCR text extraction and recognition\n- **GIF.js**: Animated GIF generation from PDF pages\n\n### AI & Machine Learning\n- **@mlc-ai/web-llm**: Client-side large language model integration\n- **WebLLM**: Browser-based AI content generation\n\n### Backend & Database\n- **Supabase**: Backend-as-a-Service with PostgreSQL\n- **Firebase**: Analytics and performance monitoring\n- **next-intl**: Internationalization with server-side rendering\n\n### Development & Testing\n- **Jest**: Unit testing framework with React Testing Library\n- **ESLint**: Code linting with Next.js configuration\n- **Webpack**: Custom loaders for Stylus and CSS modules\n\n### Deployment & Analytics\n- **Vercel**: Serverless deployment platform\n- **Firebase Analytics**: User behavior tracking\n- **SEO Optimization**: Built-in meta tags and schema markup\n\n## 📖 Documentation\n\n### Architecture Overview\n\nThe application follows a modern Next.js 15 architecture with:\n- **Server Components**: For SEO-optimized static content\n- **Client Components**: For interactive PDF processing\n- **Hybrid Styling**: Tailwind CSS + Stylus modules\n- **Error Boundaries**: Comprehensive error handling system\n\n### Core Features\n\n#### PDF Processing Engine\n- **PDF.js Integration**: Renders PDF pages as high-quality canvas elements\n- **Multi-format Export**: PNG, JPEG, WebP with customizable quality\n- **Batch Processing**: Concurrent file processing with progress tracking\n- **Memory Management**: Efficient handling of large files and multiple pages\n\n#### OCR & Text Extraction\n- **Tesseract.js**: Advanced optical character recognition\n- **Searchable PDFs**: Generate PDFs with embedded text layers\n- **Multi-language Support**: OCR for various languages\n- **Word-level Coordinates**: Precise text positioning data\n\n#### AI-Powered Features\n- **WebLLM Integration**: Client-side language model processing\n- **Content Generation**: AI-assisted text and content creation\n- **Smart Processing**: Intelligent document analysis and optimization\n\n#### Advanced Capabilities\n- **GIF Animation**: Convert PDF sequences to animated GIFs\n- **PDF Manipulation**: Merge, split, and edit documents with PDF-lib\n- **Custom Watermarking**: Text and image overlays with positioning control\n- **Batch Operations**: Process multiple files simultaneously\n\n#### Security & Privacy\n- **Client-side Processing**: All operations performed locally\n- **File Validation**: Comprehensive input validation and sanitization\n- **Error Handling**: Robust error boundaries and user feedback\n- **Rate Limiting**: Built-in abuse prevention mechanisms\n\n### Key Modules\n\n- `app/page.tsx` - Main PDF converter interface with all features\n- `components/error-boundary.tsx` - Application-wide error handling\n- `lib/i18n.tsx` - Internationalization with next-intl\n- `lib/validation.ts` - File and input validation system\n- `lib/error-handler.ts` - Centralized error management\n- `components/ui/` - Reusable UI components with Stylus styling\n- `app/blog/` - Integrated blog system with Supabase backend\n\n## 🤝 Contributing\n\nWe welcome contributions! Here's how you can help:\n\n1. **Fork the repository**\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n3. **Commit your changes**: `git commit -m 'Add amazing feature'`\n4. **Push to the branch**: `git push origin feature/amazing-feature`\n5. **Open a Pull Request**\n\n### Development Guidelines\n\n- **TypeScript**: Maintain strict type safety and use proper interfaces\n- **Styling**: Use Tailwind CSS for utilities and Stylus modules for component-specific styles\n- **Components**: Follow React best practices with proper error boundaries\n- **Testing**: Write unit tests with Jest and React Testing Library\n- **Performance**: Optimize for Web Vitals and minimize client-side JavaScript\n- **Accessibility**: Ensure WCAG compliance and keyboard navigation\n- **Internationalization**: Use next-intl for all user-facing text\n- **Error Handling**: Implement comprehensive error boundaries and validation\n\n## 📄 License\n\nThis project is open source and available under the [MIT License](LICENSE).\n\n## 🔗 Links\n\n- **Live Application**: [www.pdf2img.top](https://www.pdf2img.top)\n- **Blog**: [www.pdf2img.top/blog](https://www.pdf2img.top/blog)\n- **Issues**: [GitHub Issues](https://github.com/A-W-C-J/pdf-to-image-project/issues)\n\n## 🙏 Acknowledgments\n\n- [PDF.js](https://mozilla.github.io/pdf.js/) - Mozilla's PDF rendering library\n- [Next.js](https://nextjs.org/) - React framework with App Router\n- [Tailwind CSS](https://tailwindcss.com/) - Utility-first CSS framework\n- [shadcn/ui](https://ui.shadcn.com/) - Beautiful and accessible UI components\n- [Radix UI](https://www.radix-ui.com/) - Headless UI primitives\n- [Tesseract.js](https://tesseract.projectnaptha.com/) - OCR engine for JavaScript\n- [PDF-lib](https://pdf-lib.js.org/) - PDF creation and manipulation\n- [WebLLM](https://webllm.mlc.ai/) - Client-side large language models\n- [Supabase](https://supabase.com/) - Backend-as-a-Service platform\n- [Stylus](https://stylus-lang.com/) - Expressive CSS preprocessor\n- [next-intl](https://next-intl-docs.vercel.app/) - Internationalization for Next.js\n- [next-themes](https://github.com/pacocoursey/next-themes) - Theme switching library\n\n---\n\n<div align=\"center\">\n\n**[⭐ Star this repository](https://github.com/A-W-C-J/pdf-to-image-project) if you find it helpful!**\n\nMade with ❤️ by [A-W-C-J](https://github.com/A-W-C-J)\n\n</div>\n"}, "af1870d0c9852aa055d468b38cbaa10b322f460c": {"t": 1785772031.2137077, "n": 5258, "h": "2c8bf9f8f252ffec", "c": "# PDF to Image Converter\n\n<div align=\"center\">\n\n[![Live Demo](https://img.shields.io/badge/🌐_Live_Demo-www.pdf2img.top-blue?style=for-the-badge)](https://www.pdf2img.top)\n[![Deployed on Vercel](https://img.shields.io/badge/Deployed%20on-Vercel-black?style=for-the-badge&logo=vercel)](https://vercel.com/awcjs-projects/v0-pdf-to-image-project)\n[![Built with v0](https://img.shields.io/badge/Built%20with-v0.app-black?style=for-the-badge)](https://v0.app/chat/projects/VdIUBldKFpS)\n\n**A high-performance, client-side PDF to image converter built with Next.js and PDF.js**\n\n[🚀 Try Online Tool](https://www.pdf2img.top) • [📖 Documentation](#documentation) • [🤝 Contributing](#contributing)\n\n</div>\n\n## ✨ Features\n\n- **🔄 Batch Conversion**: Convert multiple PDF pages to images simultaneously\n- **🎨 Multiple Formats**: Support for PNG, JPEG, and WebP output formats\n- **⚙️ Customizable Quality**: Adjustable scale and compression settings\n- **🔒 Privacy First**: 100% client-side processing - your files never leave your device\n- **💧 Watermark Support**: Add custom watermarks with configurable opacity and positioning\n- **🔐 Password Protection**: Handle password-protected PDF files\n- **📱 Mobile Responsive**: Works seamlessly on desktop and mobile devices\n- **🌍 Multilingual**: Support for Chinese and English interfaces\n- **🌙 Dark Mode**: Built-in theme switching\n- **📝 SEO Blog**: Integrated blog system for technical articles\n\n## 🚀 Quick Start\n\n### Online Tool\nVisit **[www.pdf2img.top](https://www.pdf2img.top)** to use the converter directly in your browser.\n\n### Local Development\n\n\\`\\`\\`bash\n# Clone the repository\ngit clone https://github.com/A-W-C-J/pdf-to-image-project.git\n\n# Navigate to project directory\ncd pdf-to-image-project\n\n# Install dependencies\nnpm install\n\n# Configure environment variables\ncp .env.example .env.local\n# Edit .env.local and add your Supabase credentials\n\n# Start development server\nnpm run dev\n\\`\\`\\`\n\n#### Environment Setup\n\n1. **Supabase Configuration**: \n - Visit [Supabase Dashboard](https://supabase.com/dashboard/project/_/settings/api)\n - Copy your project URL and anon key\n - Add them to `.env.local`:\n \\`\\`\\`\n NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url\n NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key\n \\`\\`\\`\n\n2. **Database Setup**:\n - Execute the SQL script in `scripts/001_create_blog_tables.sql` in your Supabase SQL Editor\n - This creates the necessary tables for the blog feature\n - See [SUPABASE_SETUP.md](./SUPABASE_SETUP.md) for detailed instructions\n\n3. **Optional - Blog Feature**:\n - Add DeepSeek API key for AI blog generation:\n \\`\\`\\`\n DEEPSEEK_API_KEY=your_deepseek_api_key\n \\`\\`\\` run dev\n\\`\\`\\`\n\nOpen [http://localhost:3000](http://localhost:3000) to view the application.\n\n## 🛠️ Technology Stack\n\n- **Framework**: Next.js 14 with App Router\n- **Styling**: Tailwind CSS v4\n- **UI Components**: shadcn/ui\n- **PDF Processing**: PDF.js\n- **Language**: TypeScript\n- **Deployment**: Vercel\n\n## 📖 Documentation\n\n### Core Features\n\n#### PDF Processing\nThe application uses PDF.js to render PDF pages as canvas elements, which are then converted to images. This approach ensures high-quality output while maintaining fast processing speeds.\n\n#### Watermark System\nCustom watermark functionality allows users to:\n- Add text watermarks with custom content\n- Position watermarks in different locations (center, corners)\n- Adjust opacity levels\n- Apply watermarks during the conversion process\n\n#### Abuse Prevention\nBuilt-in rate limiting and file validation:\n- Maximum file size: 50MB\n- Maximum pages per PDF: 50\n- Hourly limits: 10 conversions, 100 pages\n- Client-side usage tracking\n\n### API Reference\n\nThe application is entirely client-side, but includes several key modules:\n\n- `lib/i18n.tsx` - Internationalization system\n- `lib/abuse-prevention.ts` - Rate limiting and validation\n- `components/` - Reusable UI components\n\n## 🤝 Contributing\n\nWe welcome contributions! Here's how you can help:\n\n1. **Fork the repository**\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n3. **Commit your changes**: `git commit -m 'Add amazing feature'`\n4. **Push to the branch**: `git push origin feature/amazing-feature`\n5. **Open a Pull Request**\n\n### Development Guidelines\n\n- Follow TypeScript best practices\n- Use Tailwind CSS for styling\n- Ensure mobile responsiveness\n- Add proper error handling\n- Include appropriate comments\n\n## 📄 License\n\nThis project is open source and available under the [MIT License](LICENSE).\n\n## 🔗 Links\n\n- **Live Application**: [www.pdf2img.top](https://www.pdf2img.top)\n- **Blog**: [www.pdf2img.top/blog](https://www.pdf2img.top/blog)\n- **Issues**: [GitHub Issues](https://github.com/A-W-C-J/pdf-to-image-project/issues)\n\n## 🙏 Acknowledgments\n\n- [PDF.js](https://mozilla.github.io/pdf.js/) - Mozilla's PDF rendering library\n- [Next.js](https://nextjs.org/) - React framework\n- [Tailwind CSS](https://tailwindcss.com/) - Utility-first CSS framework\n- [shadcn/ui](https://ui.shadcn.com/) - Beautiful UI components\n\n---\n\n<div align=\"center\">\n\n**[⭐ Star this repository](https://github.com/A-W-C-J/pdf-to-image-project) if you find it helpful!**\n\nMade with ❤️ by [A-W-C-J](https://github.com/A-W-C-J)\n\n</div>\n"}, "2109865d6864114f15090bfc53c4c7bf5a423a93": {"t": 1785772032.3820035, "n": 5240, "h": "2682ebbf17f617b4", "c": "# PDF to Image Converter\n\n<div align=\"center\">\n\n[![Live Demo](https://img.shields.io/badge/🌐_Live_Demo-www.pdf2img.top-blue?style=for-the-badge)](https://www.pdf2img.top)\n[![Deployed on Vercel](https://img.shields.io/badge/Deployed%20on-Vercel-black?style=for-the-badge&logo=vercel)](https://vercel.com/awcjs-projects/v0-pdf-to-image-project)\n[![Built with v0](https://img.shields.io/badge/Built%20with-v0.app-black?style=for-the-badge)](https://v0.app/chat/projects/VdIUBldKFpS)\n\n**A high-performance, client-side PDF to image converter built with Next.js and PDF.js**\n\n[🚀 Try Online Tool](https://www.pdf2img.top) • [📖 Documentation](#documentation) • [🤝 Contributing](#contributing)\n\n</div>\n\n## ✨ Features\n\n- **🔄 Batch Conversion**: Convert multiple PDF pages to images simultaneously\n- **🎨 Multiple Formats**: Support for PNG, JPEG, and WebP output formats\n- **⚙️ Customizable Quality**: Adjustable scale and compression settings\n- **🔒 Privacy First**: 100% client-side processing - your files never leave your device\n- **💧 Watermark Support**: Add custom watermarks with configurable opacity and positioning\n- **🔐 Password Protection**: Handle password-protected PDF files\n- **📱 Mobile Responsive**: Works seamlessly on desktop and mobile devices\n- **🌍 Multilingual**: Support for Chinese and English interfaces\n- **🌙 Dark Mode**: Built-in theme switching\n- **📝 SEO Blog**: Integrated blog system for technical articles\n\n## 🚀 Quick Start\n\n### Online Tool\nVisit **[www.pdf2img.top](https://www.pdf2img.top)** to use the converter directly in your browser.\n\n### Local Development\n\n```bash\n# Clone the repository\ngit clone https://github.com/A-W-C-J/pdf-to-image-project.git\n\n# Navigate to project directory\ncd pdf-to-image-project\n\n# Install dependencies\nnpm install\n\n# Configure environment variables\ncp .env.example .env.local\n# Edit .env.local and add your Supabase credentials\n\n# Start development server\nnpm run dev\n```\n\n#### Environment Setup\n\n1. **Supabase Configuration**: \n - Visit [Supabase Dashboard](https://supabase.com/dashboard/project/_/settings/api)\n - Copy your project URL and anon key\n - Add them to `.env.local`:\n ```\n NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url\n NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key\n ```\n\n2. **Database Setup**:\n - Execute the SQL script in `scripts/001_create_blog_tables.sql` in your Supabase SQL Editor\n - This creates the necessary tables for the blog feature\n - See [SUPABASE_SETUP.md](./SUPABASE_SETUP.md) for detailed instructions\n\n3. **Optional - Blog Feature**:\n - Add DeepSeek API key for AI blog generation:\n ```\n DEEPSEEK_API_KEY=your_deepseek_api_key\n ``` run dev\n\\`\\`\\`\n\nOpen [http://localhost:3000](http://localhost:3000) to view the application.\n\n## 🛠️ Technology Stack\n\n- **Framework**: Next.js 14 with App Router\n- **Styling**: Tailwind CSS v4\n- **UI Components**: shadcn/ui\n- **PDF Processing**: PDF.js\n- **Language**: TypeScript\n- **Deployment**: Vercel\n\n## 📖 Documentation\n\n### Core Features\n\n#### PDF Processing\nThe application uses PDF.js to render PDF pages as canvas elements, which are then converted to images. This approach ensures high-quality output while maintaining fast processing speeds.\n\n#### Watermark System\nCustom watermark functionality allows users to:\n- Add text watermarks with custom content\n- Position watermarks in different locations (center, corners)\n- Adjust opacity levels\n- Apply watermarks during the conversion process\n\n#### Abuse Prevention\nBuilt-in rate limiting and file validation:\n- Maximum file size: 50MB\n- Maximum pages per PDF: 50\n- Hourly limits: 10 conversions, 100 pages\n- Client-side usage tracking\n\n### API Reference\n\nThe application is entirely client-side, but includes several key modules:\n\n- `lib/i18n.tsx` - Internationalization system\n- `lib/abuse-prevention.ts` - Rate limiting and validation\n- `components/` - Reusable UI components\n\n## 🤝 Contributing\n\nWe welcome contributions! Here's how you can help:\n\n1. **Fork the repository**\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n3. **Commit your changes**: `git commit -m 'Add amazing feature'`\n4. **Push to the branch**: `git push origin feature/amazing-feature`\n5. **Open a Pull Request**\n\n### Development Guidelines\n\n- Follow TypeScript best practices\n- Use Tailwind CSS for styling\n- Ensure mobile responsiveness\n- Add proper error handling\n- Include appropriate comments\n\n## 📄 License\n\nThis project is open source and available under the [MIT License](LICENSE).\n\n## 🔗 Links\n\n- **Live Application**: [www.pdf2img.top](https://www.pdf2img.top)\n- **Blog**: [www.pdf2img.top/blog](https://www.pdf2img.top/blog)\n- **Issues**: [GitHub Issues](https://github.com/A-W-C-J/pdf-to-image-project/issues)\n\n## 🙏 Acknowledgments\n\n- [PDF.js](https://mozilla.github.io/pdf.js/) - Mozilla's PDF rendering library\n- [Next.js](https://nextjs.org/) - React framework\n- [Tailwind CSS](https://tailwindcss.com/) - Utility-first CSS framework\n- [shadcn/ui](https://ui.shadcn.com/) - Beautiful UI components\n\n---\n\n<div align=\"center\">\n\n**[⭐ Star this repository](https://github.com/A-W-C-J/pdf-to-image-project) if you find it helpful!**\n\nMade with ❤️ by [A-W-C-J](https://github.com/A-W-C-J)\n\n</div>\n"}, "fa881b01c6467b306fb7f861938b2acf959b4524": {"t": 1785772034.454561, "n": 4369, "h": "48bdc092e5ff1d61", "c": "# PDF to Image Converter\n\n<div align=\"center\">\n\n[![Live Demo](https://img.shields.io/badge/🌐_Live_Demo-www.pdf2img.top-blue?style=for-the-badge)](https://www.pdf2img.top)\n[![Deployed on Vercel](https://img.shields.io/badge/Deployed%20on-Vercel-black?style=for-the-badge&logo=vercel)](https://vercel.com/awcjs-projects/v0-pdf-to-image-project)\n[![Built with v0](https://img.shields.io/badge/Built%20with-v0.app-black?style=for-the-badge)](https://v0.app/chat/projects/VdIUBldKFpS)\n\n**A high-performance, client-side PDF to image converter built with Next.js and PDF.js**\n\n[🚀 Try Online Tool](https://www.pdf2img.top) • [📖 Documentation](#documentation) • [🤝 Contributing](#contributing)\n\n</div>\n\n## ✨ Features\n\n- **🔄 Batch Conversion**: Convert multiple PDF pages to images simultaneously\n- **🎨 Multiple Formats**: Support for PNG, JPEG, and WebP output formats\n- **⚙️ Customizable Quality**: Adjustable scale and compression settings\n- **🔒 Privacy First**: 100% client-side processing - your files never leave your device\n- **💧 Watermark Support**: Add custom watermarks with configurable opacity and positioning\n- **🔐 Password Protection**: Handle password-protected PDF files\n- **📱 Mobile Responsive**: Works seamlessly on desktop and mobile devices\n- **🌍 Multilingual**: Support for Chinese and English interfaces\n- **🌙 Dark Mode**: Built-in theme switching\n- **📝 SEO Blog**: Integrated blog system for technical articles\n\n## 🚀 Quick Start\n\n### Online Tool\nVisit **[www.pdf2img.top](https://www.pdf2img.top)** to use the converter directly in your browser.\n\n### Local Development\n\n\\`\\`\\`bash\n# Clone the repository\ngit clone https://github.com/A-W-C-J/pdf-to-image-project.git\n\n# Navigate to project directory\ncd pdf-to-image-project\n\n# Install dependencies\nnpm install\n\n# Start development server\nnpm run dev\n\\`\\`\\`\n\nOpen [http://localhost:3000](http://localhost:3000) to view the application.\n\n## 🛠️ Technology Stack\n\n- **Framework**: Next.js 14 with App Router\n- **Styling**: Tailwind CSS v4\n- **UI Components**: shadcn/ui\n- **PDF Processing**: PDF.js\n- **Language**: TypeScript\n- **Deployment**: Vercel\n\n## 📖 Documentation\n\n### Core Features\n\n#### PDF Processing\nThe application uses PDF.js to render PDF pages as canvas elements, which are then converted to images. This approach ensures high-quality output while maintaining fast processing speeds.\n\n#### Watermark System\nCustom watermark functionality allows users to:\n- Add text watermarks with custom content\n- Position watermarks in different locations (center, corners)\n- Adjust opacity levels\n- Apply watermarks during the conversion process\n\n#### Abuse Prevention\nBuilt-in rate limiting and file validation:\n- Maximum file size: 50MB\n- Maximum pages per PDF: 50\n- Hourly limits: 10 conversions, 100 pages\n- Client-side usage tracking\n\n### API Reference\n\nThe application is entirely client-side, but includes several key modules:\n\n- `lib/i18n.tsx` - Internationalization system\n- `lib/abuse-prevention.ts` - Rate limiting and validation\n- `components/` - Reusable UI components\n\n## 🤝 Contributing\n\nWe welcome contributions! Here's how you can help:\n\n1. **Fork the repository**\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n3. **Commit your changes**: `git commit -m 'Add amazing feature'`\n4. **Push to the branch**: `git push origin feature/amazing-feature`\n5. **Open a Pull Request**\n\n### Development Guidelines\n\n- Follow TypeScript best practices\n- Use Tailwind CSS for styling\n- Ensure mobile responsiveness\n- Add proper error handling\n- Include appropriate comments\n\n## 📄 License\n\nThis project is open source and available under the [MIT License](LICENSE).\n\n## 🔗 Links\n\n- **Live Application**: [www.pdf2img.top](https://www.pdf2img.top)\n- **Blog**: [www.pdf2img.top/blog](https://www.pdf2img.top/blog)\n- **Issues**: [GitHub Issues](https://github.com/A-W-C-J/pdf-to-image-project/issues)\n\n## 🙏 Acknowledgments\n\n- [PDF.js](https://mozilla.github.io/pdf.js/) - Mozilla's PDF rendering library\n- [Next.js](https://nextjs.org/) - React framework\n- [Tailwind CSS](https://tailwindcss.com/) - Utility-first CSS framework\n- [shadcn/ui](https://ui.shadcn.com/) - Beautiful UI components\n\n---\n\n<div align=\"center\">\n\n**[⭐ Star this repository](https://github.com/A-W-C-J/pdf-to-image-project) if you find it helpful!**\n\nMade with ❤️ by [A-W-C-J](https://github.com/A-W-C-J)\n\n</div>\n"}, "557ade893c89c0d84eb05f9d44641aa2370a7d7d": {"t": 1785772037.8761992, "n": 1172, "h": "9273529a16c49fe0", "c": "# PDF to image project\n\n*Automatically synced with your [v0.app](https://v0.app) deployments*\n\n[![Deployed on Vercel](https://img.shields.io/badge/Deployed%20on-Vercel-black?style=for-the-badge&logo=vercel)](https://vercel.com/awcjs-projects/v0-pdf-to-image-project)\n[![Built with v0](https://img.shields.io/badge/Built%20with-v0.app-black?style=for-the-badge)](https://v0.app/chat/projects/VdIUBldKFpS)\n\n## Overview\n\nThis repository will stay in sync with your deployed chats on [v0.app](https://v0.app).\nAny changes you make to your deployed app will be automatically pushed to this repository from [v0.app](https://v0.app).\n\n## Deployment\n\nYour project is live at:\n\n**[https://vercel.com/awcjs-projects/v0-pdf-to-image-project](https://vercel.com/awcjs-projects/v0-pdf-to-image-project)**\n\n## Build your app\n\nContinue building your app on:\n\n**[https://v0.app/chat/projects/VdIUBldKFpS](https://v0.app/chat/projects/VdIUBldKFpS)**\n\n## How It Works\n\n1. Create and modify your project using [v0.app](https://v0.app)\n2. Deploy your chats from the v0 interface\n3. Changes are automatically pushed to this repository\n4. Vercel deploys the latest version from this repository\n"}, "6f1acb7006833e398c9c23dadcb7211da147e053": {"t": 1785772040.1046631, "n": 1171, "h": "b071206c3ab41362", "c": "# PDF to image project\n\n*Automatically synced with your [v0.app](https://v0.app) deployments*\n\n[![Deployed on Vercel](https://img.shields.io/badge/Deployed%20on-Vercel-black?style=for-the-badge&logo=vercel)](https://vercel.com/awcjs-projects/v0-pdf-to-image-project)\n[![Built with v0](https://img.shields.io/badge/Built%20with-v0.app-black?style=for-the-badge)](https://v0.app/chat/projects/VdIUBldKFpS)\n\n## Overview\n\nThis repository will stay in sync with your deployed chats on [v0.app](https://v0.app).\nAny changes you make to your deployed app will be automatically pushed to this repository from [v0.app](https://v0.app).\n\n## Deployment\n\nYour project is live at:\n\n**[https://vercel.com/awcjs-projects/v0-pdf-to-image-project](https://vercel.com/awcjs-projects/v0-pdf-to-image-project)**\n\n## Build your app\n\nContinue building your app on:\n\n**[https://v0.app/chat/projects/VdIUBldKFpS](https://v0.app/chat/projects/VdIUBldKFpS)**\n\n## How It Works\n\n1. Create and modify your project using [v0.app](https://v0.app)\n2. Deploy your chats from the v0 interface\n3. Changes are automatically pushed to this repository\n4. Vercel deploys the latest version from this repository"}}}}