Skip to content

thisIsAnVariableOfACoder/TextAnalyzerProject

Repository files navigation

TextAnalyzer Banner

TextAnalyzer - AI Young Guru Submission (AI Yogu Gym 4)

Status Platform GitHub Issues License


🤖 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.

---

Table of Contents

📂 Project Structure

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

🚀 Features

  • 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

🧐 About

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.

🎥 Demo

  1. Users authenticate and select desired text analysis tools.
  2. Documents and text are processed via FastAPI backend, leveraging integrated APIs (OCR, grammar, paraphrase, translation).
  3. Results are returned to the frontend in real time, with history and analytics stored securely.
  4. Users can export documents, view statistics, and manage their profiles.

🎈 Usage

  • Register an account and log in.
  • Upload images or input text.
  • Select tools: grammar check, paraphrasing, translation.
  • View results, save processing history, export documents.

🏁 Getting Started

Prerequisites

  • Node.js >= 18, npm
  • Python >= 3.11, pip
  • MongoDB Atlas (or local instance)

Installing

Local development (Docker Compose):

docker-compose up -d

Manual setup:

cd frontend && npm install && npm run dev
cd backend && pip install -r requirements.txt && uvicorn app.main:app --reload

🚀 Deployment

Backend: Deploy FastAPI to Render, configure MongoDB Atlas. Frontend: Deploy React to Vercel, set environment variables:

⛏️ Built Using

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

✍️ Authors

thisIsAnVariableOfACoder (Project Owner) See the list of contributors at GitHub Contributors

🎉 Acknowledgements

Based on open-source APIs and libraries Special thanks to the FastAPI, React, and MongoDB communities Reference documentation: LanguageTool, Mistral, Google

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors