# Koode AI (കൂടെ)
Koode AI is a Malayalam-first accessibility prototype that helps people
understand an uploaded notice and complete an uploaded application form with
voice, keyboard, and confirmation-first interactions.
It is a hackathon prototype, not an official government service. Koode never
submits an application to a government portal.
## Latest Updates
* **Production-Grade Text Normalization Pipeline** (`backend/app/utils/speech_formatter.py`): A highly modular NLP pipeline explicitly designed for Malayalam TTS. It strips OCR artifacts, normalizes punctuation BEFORE removing URLs/emails (to fix spacing without mangling domains), and expands currency, time, percentages, acronyms, and dates.
* **Provider Factory Architecture** (`backend/app/services.py`): The backend now relies on a scalable `services.py` factory pattern. The document engine effortlessly switches between Gemini and OpenAI, while TTS/STT dynamically routes between AI4Bharat, Google Cloud, Azure, or Fallback depending on environment variables.
* **Richer Data Extraction** (`backend/app/schemas/simplify.py`): The core Pydantic models have been completely overhauled to support structured `Sections`, `QuickFacts` (with AI confidence indicators), and `DocumentInfo`.
* **Accessible UI/UX Overhaul** (`app/page.tsx`):
* **Notices**: Refactored the UI to use a high-contrast `status-grid` for rendering quick facts. Dynamic sections now visually indicate their importance.
* **Forms**: Replaced the cumbersome button-stack list with a focused "Active Field Card" at the top of the screen. Users can traverse through form fields using "Previous/Next" buttons, or open a compact expandable accordion to view all fields, ensuring maximum screen-reader and low-vision accessibility.
For the complete architecture, user flows, API reference, configuration,
deployment, privacy rules, testing, and troubleshooting guide, see
docs/SYSTEM_GUIDE.md.
## What it does
1. Upload a JPG, PNG, WebP, or PDF (up to 10 MB).
2. …