Your Name f347022924 feat: add SEO configuration and pages for programmatic tools and collections
- Introduced seoPages.ts to manage SEO-related configurations and types for programmatic tools and collection pages.
- Created SeoCollectionPage and SeoProgrammaticPage components to render SEO content dynamically based on the new configuration.
- Enhanced API service to ensure CSRF token handling for secure requests.
- Added generateHowTo utility function for structured data generation.
- Updated sitemap generation script to include SEO tool and collection pages.
- Configured TypeScript to resolve JSON modules for easier integration of SEO data.   ستراتيجية التنفيذ

لم أغير أي core logic في أدوات التحويل أو الضغط أو التحرير
استخدمت architecture إضافية فوق النظام الحالي بدل استبداله
جعلت الـ SEO pages تعتمد على source of truth واحد حتى يسهل التوسع
ربطت التوليد مع build حتى لا تبقى sitemap وrobots ثابتة أو منسية
دعمت العربية والإنجليزية داخل نفس config الجديد
عززت internal linking من:
صفحات SEO إلى tool pages
صفحات SEO إلى collection pages
footer إلى collection pages
Suggested tools داخل صفحات الأدوات
التحقق
2026-03-21 01:19:32 +02:00

Dociva — 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.

Live at: https://dociva.io

🛠 Tools (Current)

  1. PDF Conversion — PDF↔Word
  2. PDF Optimization — Compress PDF
  3. PDF Utilities — Merge, split, rotate, page numbers, watermark
  4. PDF Security — Protect and unlock PDF
  5. PDF/Image Tools — PDF→Images, Images→PDF
  6. Image Tools — Convert and resize images
  7. Video Tools — Video→GIF
  8. Text Tools — Word counter and text cleaner
  9. Flowchart Tools — Extract procedures from PDF and generate flowcharts (+ sample mode)
  10. 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

# For AI tools like Chat with PDF, set your OpenRouter credentials in .env
# OPENROUTER_API_KEY=your-openrouter-key

# 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 to backend/data/dociva.db locally)

📈 Analytics & Ads Env

  • VITE_GA_MEASUREMENT_ID
  • VITE_ADSENSE_CLIENT_ID
  • VITE_ADSENSE_SLOT_HOME_TOP
  • VITE_ADSENSE_SLOT_HOME_BOTTOM
  • VITE_ADSENSE_SLOT_TOP_BANNER
  • VITE_ADSENSE_SLOT_BOTTOM_BANNER
  • DATABASE_PATH

📁 Project Structure

Dociva/
├── 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
No description provided
Readme 3.3 MiB
Languages
TypeScript 48.9%
Python 47.7%
JavaScript 1.7%
Shell 0.8%
CSS 0.5%
Other 0.4%