d7f6228d7f82fdc8bdea003b235c017838d4c48a
- تفعيل مكون SummarizePdf لإنشاء ملخصات PDF باستخدام الذكاء الاصطناعي. - تفعيل مكون TranslatePdf لترجمة محتوى PDF إلى لغات متعددة. - تفعيل مكون TableExtractor لاستخراج الجداول من ملفات PDF. - تحديث الصفحة الرئيسية والتوجيه ليشمل الأدوات الجديدة. - إضافة ترجمات للأدوات الجديدة باللغات الإنجليزية والعربية والفرنسية. - توسيع أنواع واجهة برمجة التطبيقات (API) لدعم الميزات الجديدة المتعلقة بمعالجة ملفات PDF. --feat: Initialize frontend with React, Vite, and Tailwind CSS - Set up main entry point for React application. - Create About, Home, NotFound, Privacy, and Terms pages with SEO support. - Implement API service for file uploads and task management. - Add global styles using Tailwind CSS. - Create utility functions for SEO and text processing. - Configure Vite for development and production builds. - Set up Nginx configuration for serving frontend and backend. - Add scripts for cleanup of expired files and sitemap generation. - Implement deployment script for production environment.
SaaS-PDF — Free Online Tools Platform
A free SaaS platform offering PDF, image, video, and text processing tools. Built with Python Flask (backend) and React + Vite (frontend), powered by Celery + Redis for async processing, and deployed on AWS.
🛠 Tools (Current)
- PDF Conversion — PDF↔Word
- PDF Optimization — Compress PDF
- PDF Utilities — Merge, split, rotate, page numbers, watermark
- PDF Security — Protect and unlock PDF
- PDF/Image Tools — PDF→Images, Images→PDF
- Image Tools — Convert and resize images
- Video Tools — Video→GIF
- Text Tools — Word counter and text cleaner
- Flowchart Tools — Extract procedures from PDF and generate flowcharts (+ sample mode)
- Accounts & History — Email/password sign-in with recent generated-file history
🏗 Tech Stack
| Layer | Technology |
|---|---|
| Backend API | Python 3.12 + Flask 3.x |
| Task Queue | Celery 5.x + Redis |
| File Processing | LibreOffice, Ghostscript, Pillow, ffmpeg |
| Frontend | React 18 + Vite 5 + TypeScript |
| Styling | Tailwind CSS (RTL support) |
| i18n | react-i18next (Arabic + English + French) |
| Storage | AWS S3 (temp files with auto-cleanup) |
| CDN | AWS CloudFront |
| Server | AWS EC2 + Nginx |
🚀 Quick Start (Development)
# 1. Clone the repo
git clone https://github.com/aborayan2022/SaaS-PDF.git
cd SaaS-PDF
# 2. Copy environment file
cp .env.example .env
cp frontend/.env.example frontend/.env
# 3. Start all services with Docker
docker-compose up --build
# 4. Access the app
# Frontend: http://localhost:5173
# Backend API: http://localhost:5000/api
# Celery Flower: http://localhost:5555
⚙️ Runtime Limits (Default)
- File retention: 30 minutes (
FILE_EXPIRY_SECONDS=1800) - PDF max size: 20MB
- Word max size: 15MB
- Image max size: 10MB
- Video max size: 50MB
🔐 Accounts & Sessions
- Session-backed authentication via
/api/auth/* - Free account creation with email + password
- Recent generated-file history via
/api/history - Persistent SQLite storage at
DATABASE_PATH(defaults tobackend/data/saas_pdf.dblocally)
📈 Analytics & Ads Env
VITE_GA_MEASUREMENT_IDVITE_ADSENSE_CLIENT_IDVITE_ADSENSE_SLOT_HOME_TOPVITE_ADSENSE_SLOT_HOME_BOTTOMVITE_ADSENSE_SLOT_TOP_BANNERVITE_ADSENSE_SLOT_BOTTOM_BANNERDATABASE_PATH
📁 Project Structure
SaaS-PDF/
├── backend/ # Flask API + Celery Workers
├── frontend/ # React + Vite + TypeScript
├── nginx/ # Reverse proxy configuration
├── scripts/ # Deployment & maintenance scripts
├── docs/ # Project documentation
├── docker-compose.yml
└── docker-compose.prod.yml
💰 Revenue Model
- Google AdSense — Ads on result/download pages
- Freemium (next phase) — Pro features: no ads, higher limits, API access
📄 License
MIT
Description
Languages
TypeScript
48.9%
Python
47.7%
JavaScript
1.7%
Shell
0.8%
CSS
0.5%
Other
0.4%