Quick reviewer path for the TP Malaysia AI Intern assessment.
- Open the live app: https://tp-intern-malaysia.vercel.app/.
- Upload one to five receipt images.
- Select the files to process and click Extract.
- Open the preview modal to inspect the uploaded image.
- Expand a completed or needs-review row.
- For
Needs review, compare the inline receipt preview with the editable fields and fix missing values. - Confirm complete rows show a download icon.
- Download one result or selected complete results as JSON.
npm install
npm run devnpm run ci
npm run test:e2e
npm run test:e2e:liveGEMINI_API_KEY=your_gemini_api_key_here
GEMINI_MODEL=gemini-2.5-flashGEMINI_API_KEY is required for real extraction. GEMINI_MODEL is optional.
- Uses a server-side API route so the Gemini key is not exposed to the browser.
- Handles file type and file size validation on the client and API boundary.
- Supports batch queue behavior without adding unnecessary backend complexity.
- Treats AI extraction as a draft and keeps human review in the loop.
- Distinguishes failed extraction from partial extraction.
- Requires manual correction for incomplete AI fields before download.
- Shows inline receipt preview during review to reduce user friction.
- Validates required receipt fields before a result becomes downloadable.
- Separates deterministic CI tests from live AI validation.
- Documents deployment, testing, and known MVP limits.
The app intentionally keeps queue state in the browser and uses a single extraction API route. Durable persistence, authentication, PDF support, real Google Drive upload, URL upload, and accounting-system integrations are outside this assessment version.