test9 / README.md
simikkk's picture
Upload 82 files
35420f5 verified
|
Raw
History Blame Contribute Delete
2.25 kB
metadata
title: OmniParse AI
emoji: 📄
sdk: docker
colorFrom: blue
colorTo: blue
license: mit
tags:
  - invoice
  - ocr
  - ai
  - api
  - saas
  - automation
  - finance
  - billing
  - nextjs

Overview

AI-powered invoice processing SaaS. Upload PDFs or images and extract vendor details, amounts, dates, and line items as structured data. Export to CSV, JSON, or Excel — or integrate via REST API.

Features

  • Smart OCR Extraction — AI-powered data extraction with high accuracy
  • Duplicate Detection — Automatic flagging of potential duplicate invoices
  • AI Chat Assistant — Ask questions about your invoices (Pro+)
  • Dashboard — Upload, invoices, analytics, chat, export, profile, settings
  • Bank-Level Security — Bcrypt passwords, HttpOnly cookies, rate limiting, activity logging
  • REST API — Integrate with ERP systems (Pro+)
  • Multi-format Export — CSV, JSON, Excel
  • Dark/Light Theme — Smooth animated transition
  • Forgot Password — Reset flow for logged-out users
  • Responsive — Works on mobile and desktop

Demo Account

  • Email: demo@omniparse.ai
  • Password: demo1234
  • Plan: Pro (20 seeded invoices)

Tech Stack

  • Framework: Next.js 16 (App Router)
  • Language: TypeScript
  • Styling: Tailwind CSS 4 + shadcn/ui
  • Database: SQLite via Prisma ORM
  • Auth: Custom session-based (cookies)
  • Runtime: Node.js 20 Alpine (Docker)

Deployment

This Space uses a 3-stage Docker build:

  1. deps — Install npm dependencies
  2. builder — Generate Prisma client + next build
  3. runner — Production standalone server on port 7860

The database is automatically initialized on first startup via prisma db push.

API Endpoints

Method Path Description
POST /api/auth/login Login
POST /api/auth/signup Create account
POST /api/auth/logout Logout
GET /api/auth/me Current user
GET /api/invoices List invoices
DELETE /api/invoices Delete invoice
POST /api/auth/forgot-password Request reset code
POST /api/auth/reset-password Reset password with code
GET /api/health Health check