InsureTrack India is a production-oriented native Android application with a real, integrated Python backend. It helps Indian individuals and businesses manage insurance policies, securely store policy and compliance documents, track expiry dates, receive renewal reminders, analyze insurance documents using AI, and monitor vendor insurance compliance.
The product serves two primary working audiences — Indian individuals managing personal insurance, and business operators managing vendor and subcontractor insurance compliance — plus any registered account user who maintains their own account, security, notification, privacy, and help settings. The application must be a working system with real frontend-to-backend integration, not a UI prototype, static dashboard, or pseudocode. Implementation proceeds incrementally, with complete source files, and implemented features are clearly distinguished from unfinished features.
InsureTrack India is delivered as a native Android client (Kotlin, Jetpack Compose, Material 3, MVVM) communicating over REST with a Python 3.12+ FastAPI backend backed by PostgreSQL, Redis, and Celery, with private S3-compatible object storage for documents and LiteLLM for configurable LLM providers. OCR is performed with PaddleOCR or Tesseract. Push notifications are delivered through Firebase Cloud Messaging. Local development runs under Docker and Docker Compose with secrets in environment variables and a complete .env.example.
Actors. The accepted active human personas are the Individual Policyholder, the Business Compliance Manager, and the Registered Account User. The backend, Celery workers, Redis, PostgreSQL, S3-compatible object storage, the OCR engine, the LiteLLM-configured LLM providers, and Firebase Cloud Messaging are typed non-persona actors and system processes.
Accepted behavior. Policy lifecycle management (add, edit, view, archive, delete) with search, sorting, and filters; document intake via camera, gallery, and PDF picker; a secure document vault with previews, downloads, and version history; OCR extraction review with manual correction; AI document analysis with confidence indicators and evidence; an expiry calendar with reminders and notification history; an AI assistant answering questions only about authorized documents; business vendor and subcontractor management; a project compliance dashboard with downloadable reports; and account, security, notification, privacy, and help settings.
Ownership. All accepted human-facing work is owned by first-party application surfaces. The backend, Celery, Redis, PostgreSQL, object storage, OCR, LLM providers, and FCM perform supporting system work; they never replace a human interaction that the source requires.
Narrow exclusions. No stock photography, no gradient-blob or glassmorphism decoration, no blue-indigo palette family, no non-Fira typefaces, no tiled hover-lift card grids, no red used as a brand or button colour, no decorative looping animation, parallax, or particle fields, and no emoji or playful illustration. These are presentation and register constraints, not product-capability exclusions.
InsureTrack India is a first-party Android application with a first-party backend. The application owns identity: a person establishes an account through self-service registration, verifies identity on return, and can restore account continuity through password reset. Protected policy, document, vendor, project, and compliance state is available only after identity is established. The anonymous Landing surface explains the product and its intended individual and business users before any protected state is reachable.
Document storage is private S3-compatible object storage with a local development option; the backend enforces authorized access to every stored document. AI assistant questions are constrained to documents authorized for the requesting user. Renewal reminders and notification history depend on durable scheduled backend processing. Business compliance workflows require authenticated business authorization before vendor, subcontractor, or report data is accessible.
Current delivery covers the full accepted scope above. No future-horizon capabilities are accepted in this document; anything not listed here is out of current scope.
FR-1 — Working integrated application (explicit) As a user, I should use a complete, production-oriented native Android application named InsureTrack India with real frontend-to-backend integration, so that the product is a working system rather than a UI prototype, static dashboard, or pseudocode.
FR-2 — Insurance and document management scope (explicit) As an Indian individual or business user, I should manage insurance policies, securely store documents, track expiry dates, receive renewal reminders, analyze insurance documents using AI, and monitor vendor insurance compliance, so that my obligations and coverage are under control.
FR-3 — Self-service account registration (required_inference) As a Registered Account User, I should register an account through self-service, so that I can independently start using InsureTrack India.
FR-4 — Returning identity verification (required_inference) As a Registered Account User, I should verify my identity on return, so that protected records are available only to me.
FR-5 — Logout (explicit) As a Registered Account User, I should log out, so that my session ends and protected state is no longer accessible on the device.
FR-6 — Password reset (required_inference) As a Registered Account User, I should reset my password, so that I can restore account continuity without exposing protected documents or policy data.
FR-7 — Home dashboard statistics and renewal alerts (explicit) As an Individual Policyholder, I should see policy statistics and renewal alerts on the Home dashboard, so that I know what is expiring and when.
FR-8 — Policy list search, sorting, and filters (explicit) As an Individual Policyholder, I should search, sort, and filter my insurance policy list, so that I can find a specific policy quickly.
FR-9 — Add policy (explicit) As an Individual Policyholder, I should add a policy, so that a new insurance obligation is tracked.
FR-10 — Edit policy (explicit) As an Individual Policyholder, I should edit a policy, so that its details stay accurate.
FR-11 — View policy (explicit) As an Individual Policyholder, I should view a policy, so that I can read its full details.
FR-12 — Archive policy (explicit) As an Individual Policyholder, I should archive a policy, so that inactive policies leave the active working set without being destroyed.
FR-13 — Delete policy (explicit) As an Individual Policyholder, I should delete a policy, so that a policy I no longer need is removed.
FR-14 — Document upload via camera, gallery, and PDF picker (explicit) As an Individual Policyholder, I should upload a document using the camera, the gallery, or a PDF picker, so that my policy documents are stored in the application.
FR-15 — Secure document vault with previews, downloads, and version history (explicit) As an Individual Policyholder, I should preview, download, and review the version history of my documents in a secure vault, so that I can retrieve the right document version when I need it.
FR-16 — OCR extraction review and manual correction (explicit) As an Individual Policyholder, I should review OCR extraction and manually correct it, so that extracted policy data is accurate.
FR-17 — AI document analysis with confidence indicators and evidence (explicit) As an Individual Policyholder, I should run AI document analysis and see confidence indicators and evidence, so that I can judge how much to trust the result.
FR-18 — Expiry calendar, reminders, and notification history (explicit) As an Individual Policyholder, I should view an expiry calendar, receive renewal reminders, and review notification history, so that renewals are not missed.
FR-19 — AI assistant for authorized documents (explicit) As an Individual Policyholder, I should ask the AI assistant questions about my authorized documents, so that I can get answers grounded in my own records.
FR-20 — Business vendor and subcontractor management (explicit) As a Business Compliance Manager, I should manage vendors and subcontractors, so that the business's counterparties and their insurance coverage are recorded.
FR-21 — Project compliance dashboard and downloadable reports (explicit) As a Business Compliance Manager, I should monitor project insurance compliance and download compliance reports, so that vendor coverage can be verified and reported.
FR-22 — Profile, security settings, notification preferences, privacy, and help (explicit) As a Registered Account User, I should manage my profile, security settings, notification preferences, privacy, and help, so that my account and preferences are maintained securely.
FR-23 — Bottom navigation bar (explicit) As an authenticated user, I should navigate using a bottom navigation bar containing Home, Policies, Documents, AI Assistant, and Profile, so that the main working areas are always reachable.
FR-24 — Material 3 components, adaptive layouts, and states (explicit) As a user, I should use Material 3 components and adaptive layouts with light and dark themes, accessible touch targets, empty states, loading indicators, error messages, confirmation dialogs, and subtle animations, so that the application is usable and accessible.
FR-25 — Incremental implementation with clear feature status (explicit) As a developer or reviewer, I should receive the project implemented incrementally with complete source files and a clear distinction between implemented and unfinished features, so that progress is verifiable.
An Indian individual who manages personal insurance policies. Their working context is personal risk and family security: health, motor, life, fire, and marine policies with real expiry dates that carry financial consequences if missed. They typically work one-handed on a mid-range Android device, often in daylight, checking whether a policy lapses next week.
A business user responsible for counterparty insurance compliance. Their working context is contractual risk: vendors and subcontractors must carry valid insurance, and the business must be able to demonstrate that coverage.
Any authenticated user of InsureTrack India. Their working context is account continuity and control over how the application behaves for them.
The creative direction is authoritative for this section: Typographic infrastructure for Indian insurance — wayfinding clarity in teal and ink, after the muse Erik Spiekermann. The headline idea is typography as infrastructure: a transit map for obligations, where colour-coded lines and ruled data rows make policies, vendors, projects, and expiry states legible at a glance on a mid-range Android device in daylight.
| Role | Hex | Usage |
|---|---|---|
| Background | #F1FAEE | Cream ground carrying ~70% of every screen |
| Surface | #FFFFFF | Reserved for document and policy cards so paper-like records sit on the cream field |
| Text | #1D3557 | The only text colour (17.6:1 on cream) |
| Primary | #2A9D8F | The "active/in force" line colour and the primary action fill |
| Secondary | #457B9D | Secondary line colour for vendor/project categories and metadata rules |
| Expiry alert | #E63946 | Used ONLY for expiry and lapse — never for buttons or brand flourish |
| Light teal | #A8DADC | Tint for selected rows and status chips |
| Warning | #F4A261 | Fifth line colour for "expiring soon", used as chip fill with ink text |
| Role | Hex | Usage |
|---|---|---|
| Background | #0F172A | Dark ground |
| Surface | #1E293B | Card and container surface with #334155 hairline stroke |
| Text | #F8FAFC | Primary text |
| Muted text | #94A3B8 | Secondary and metadata text |
| Primary | #2A9D8F | Active/in-force line colour and primary action fill |
| Secondary | #457B9D | Vendor/project line colour |
| Expiry alert | #E63946 | Expiry and lapse only |
| Warning | #F4A261 | Expiring soon |
Rectilinear and honest. 8dp radius on cards and inputs, 4dp on chips and status tags, 0dp on the coloured line-bars and section rules that run edge to edge. No blobs, no pill buttons except status chips, no floating soft shadows — separation comes from 1dp hairline rules in #1D3557 at 12% opacity and from the cream/white ground change. Circular gauges are permitted only for the compliance ring on the vendor dashboard.
A strict 4-column mobile grid (8 columns tablet, 12 desktop) with 16dp gutters at 375px, 24dp at 768px, 32dp at 1280px. Every screen opens with a coloured line-bar plus an ALL-CAPS tracked label — the same gesture as a transit line header — then content. Cards are full-width and stacked, never a grid of equal tiles. The dashboard reads top-to-bottom as a departure board. Bottom navigation is a 5-item bar (Home, Policies, Documents, AI Assistant, Profile) where the active item gets a 3dp teal line above the icon and its label switches from muted to ink at 600 weight.
No stock photography. Imagery is diagrammatic and informational: a compact expiry timeline drawn as a horizontal line with colour-coded policy ticks, a compliance ring gauge for vendors, schematic document thumbnails rendered as ruled page outlines with the file type set in mono-ish caps. Pictograms for policy categories (health, motor, life, fire, marine) drawn as 24dp single-weight line icons in the line-colour system, never filled illustration.
The public entry is the Landing surface, and the signature concept is a transit-map title board for obligations.
#F1FAEE. The surface opens with a 4dp teal #2A9D8F line-bar running 64% of the viewport width, with an ALL-CAPS tracked ink label beneath it — the same gesture used on every screen in the application, so the anonymous entry already teaches the wayfinding grammar.#1D3557.#2A9D8F leading to registration, and a secondary text action leading to login. Red #E63946 is not used on this surface, because red means expiry only.This concept only recomposes accepted content and controls; it introduces no new behavior, page, or destination.
Interaction Model: Static Motion Tempo: restrained Hero Dimensionality: flat
prefers-reduced-motion, the line-bar renders at full width immediately, the capability rows render in place with no sequence, and no wipe or count-up occurs. The surface remains fully readable and both actions remain reachable.Dashboard count-up: The oversized tabular day-count numeral on the Home dashboard counts up once on entry over 400ms with linear easing, then holds. Under reduced motion it renders at its final value immediately.
.env.example must be provided. Rationale: explicit source constraint..env.example.env.example.#2563EB / #4F46E5 / #6366F1 family) anywhere; the only blues are the mandated #457B9D and #A8DADC..env.example — The complete example environment file documenting required secrets and configuration.
INSURETRACK INDIA
InsureTrack India classifies every obligation you carry. The five lines below map what the app keeps track of, each one coded by the same colour system used throughout your records.
Track health, motor, life, fire and marine policies for a household or a business in one register — insurer, policy number, sum insured and cover period held as ruled records rather than scattered paperwork.
Keep the policy schedule, endorsements and receipts in one place with previews, downloads and version history, so the paper that proves cover is findable when a claim or an audit needs it.
See which cover lapses next on an expiry calendar, with colour-coded states for in force, expiring soon and lapsed, and a reminder history so a renewal date never arrives unannounced.
Read extracted fields from uploaded documents with a visible confidence code, correct anything the extraction misread, and ask questions that are answered only from the documents you are authorised to see.
Monitor vendors and subcontractors against project requirements, watch certificate validity on a compliance dashboard, and export the reports a contract or a client review asks for.
InsureTrack India is built for Indian individuals managing personal insurance policies — health, motor, life, fire and marine — who need to know at a glance when cover lapses and what to renew next.
It is also built for business operators who track vendor and subcontractor insurance compliance across projects, keeping every certificate, expiry date and renewal obligation in one place.
Set up InsureTrack India to keep policies, documents, expiry dates and vendor compliance on one legible page.
Registration and login share the same access screen.

INSURETRACK INDIA
InsureTrack India classifies every obligation you carry. The five lines below map what the app keeps track of, each one coded by the same colour system used throughout your records.
Track health, motor, life, fire and marine policies for a household or a business in one register — insurer, policy number, sum insured and cover period held as ruled records rather than scattered paperwork.
Keep the policy schedule, endorsements and receipts in one place with previews, downloads and version history, so the paper that proves cover is findable when a claim or an audit needs it.
See which cover lapses next on an expiry calendar, with colour-coded states for in force, expiring soon and lapsed, and a reminder history so a renewal date never arrives unannounced.
Read extracted fields from uploaded documents with a visible confidence code, correct anything the extraction misread, and ask questions that are answered only from the documents you are authorised to see.
Monitor vendors and subcontractors against project requirements, watch certificate validity on a compliance dashboard, and export the reports a contract or a client review asks for.
InsureTrack India is built for Indian individuals managing personal insurance policies — health, motor, life, fire and marine — who need to know at a glance when cover lapses and what to renew next.
It is also built for business operators who track vendor and subcontractor insurance compliance across projects, keeping every certificate, expiry date and renewal obligation in one place.
Set up InsureTrack India to keep policies, documents, expiry dates and vendor compliance on one legible page.
Registration and login share the same access screen.
No comments yet. Be the first!