🤖 TextAnalyzer is an enterprise-grade platform for advanced text analysis, grammar checking, paraphrasing, multilingual translation, OCR, export, and processing history management.
This project is submitted for the AI Young Guru contest in AI Yogu Gym 4. The application features a modern, secure, and fully responsive interface.
- About
- Features
- Project Structure
- Demo
- Usage
- Getting Started
- Deployment
- Built Using
- Authors
- Acknowledgements
TextAnalyzerProject/
├── frontend/ # React 18 + Vite application
│ ├── src/
│ │ ├── components/ # 13+ React components (Header, Footer, OCRUploader, TextEditor, ToolPanel, ResultsPanel...)
│ │ ├── pages/ # Pages: Dashboard, Editor, History, UserProfile, Login, Register...
│ │ ├── services/ # API client, OCR, text processing
│ │ ├── stores/ # Zustand state management
│ │ ├── styles/ # Global and component CSS
│ │ └── universal-reader/ # Advanced document reader module
│ ├── public/
│ ├── App.jsx, main.jsx
│ ├── package.json, vite.config.js, Dockerfile, index.html
│ └── vercel.json # Vercel deployment config
├── backend/ # FastAPI + Python
│ ├── app/
│ │ ├── main.py # FastAPI app initialization
│ │ ├── config.py # Configuration
│ │ ├── models.py # Pydantic models
│ │ ├── database.py # MongoDB connection
│ │ ├── auth/ # JWT, password hashing
│ │ ├── routes/ # API endpoints: auth, ocr, text, history, batch
│ │ ├── services/ # Business logic: ocr_service, text_service, export_service
│ ├── requirements.txt, Dockerfile, runtime.txt
├── DEPLOYMENT.md # Deployment guide
├── IMPLEMENTATION_STATUS.md # Feature progress and details
├── PROJECT_SUMMARY.md # Project overview
├── README.md # Quick start & overview
├── docker-compose.yml # Local development
└── vercel.json # Deployment config
- Secure registration and login (JWT, bcrypt)
- Multi-method OCR (file upload, webcam, clipboard, URL)
- Grammar checking, paraphrasing, translation (30+ languages)
- Processing history management, search, analytics
- Export to PDF, DOCX, TXT
- Batch processing for multiple documents
- Responsive, modern UI with corporate navy blue theme
- Real-time notifications, modals, dropdowns, validation
- API integrations: Mistral OCR, LanguageTool, Google Translate
TextAnalyzer is a comprehensive web application designed for professional text processing and document management. The platform enables users to analyze, edit, translate, and export text with a suite of advanced features. Built with a robust React frontend and FastAPI backend, TextAnalyzer integrates industry-leading APIs including Mistral OCR, LanguageTool, and Google Translate. Users benefit from secure authentication, real-time processing, export options (PDF/DOCX/TXT), and detailed history tracking—all within a modern, scalable architecture.
- Users authenticate and select desired text analysis tools.
- Documents and text are processed via FastAPI backend, leveraging integrated APIs (OCR, grammar, paraphrase, translation).
- Results are returned to the frontend in real time, with history and analytics stored securely.
- Users can export documents, view statistics, and manage their profiles.
- Register an account and log in.
- Upload images or input text.
- Select tools: grammar check, paraphrasing, translation.
- View results, save processing history, export documents.
- Node.js >= 18, npm
- Python >= 3.11, pip
- MongoDB Atlas (or local instance)
Local development (Docker Compose):
docker-compose up -dManual setup:
cd frontend && npm install && npm run dev
cd backend && pip install -r requirements.txt && uvicorn app.main:app --reloadBackend: Deploy FastAPI to Render, configure MongoDB Atlas. Frontend: Deploy React to Vercel, set environment variables:
- VITE_API_BASE_URL=https://textanalyzerproject.onrender.com/api
- VITE_APP_NAME=TextAnalyzer See DEPLOYMENT.md for detailed instructions.
React 18, Vite, Zustand, Axios, React Router, React Hot Toast FastAPI, Python 3.11, Uvicorn, MongoDB, Pydantic, JWT, bcrypt Docker, Vercel, Render Mistral OCR API, LanguageTool API, Google Translate
thisIsAnVariableOfACoder (Project Owner) See the list of contributors at GitHub Contributors
Based on open-source APIs and libraries Special thanks to the FastAPI, React, and MongoDB communities Reference documentation: LanguageTool, Mistral, Google