Skip to content

darksomaX/parsetools.dev

Repository files navigation

ParseTools.dev

Document Intelligence API — Parse any document. Get structured JSON.

15 APIs for invoices, receipts, contracts, resumes, and more. One subscription. Built for developers who ship fast.

Quick Start

# Install dependencies
npm install

# Set up environment
cp .env.example .env.local
# Edit .env.local with your credentials

# Run development server
npm run dev

API Endpoints

All endpoints: POST /api/v1/[endpoint]

Document OCR

  • POST /v1/invoice/extract — Extract structured invoice data
  • POST /v1/receipt/extract — Extract receipt data with items and totals
  • POST /v1/bank-statement/parse — Parse bank statements into transactions
  • POST /v1/document/classify — Classify document type and language
  • POST /v1/business-card/scan — Extract contact info from business cards
  • POST /v1/form/digitize — Extract form fields and values

Text & Intelligence

  • POST /v1/resume/parse — Parse resume into structured candidate data
  • POST /v1/contract/summarize — Summarize contracts with risks and clauses
  • POST /v1/reviews/sentiment — Analyze sentiment of product reviews
  • POST /v1/image/alt-text — Generate alt text and accessibility metadata
  • POST /v1/moderation/classify — Classify text for toxicity and harmful content
  • POST /v1/jobs/analyze — Analyze job descriptions for skills and bias
  • POST /v1/screenshot/to-css — Convert screenshots to HTML/CSS/React code
  • POST /v1/code/review-summary — Review code diffs and summarize changes
  • POST /v1/dev/changelog — Generate changelogs from commit messages

Convert & Jobs

  • POST /v1/upload — Upload file for reuse across calls
  • POST /v1/convert — Convert between 15 format pairs
  • GET /v1/jobs/:id — Poll async job status

Authentication

All API endpoints require an X-API-Key header.

curl -X POST https://api.parsetools.dev/v1/invoice/extract \
  -H "X-API-Key: sk_live_..." \
  -F "file=@invoice.pdf"

Tech Stack

Layer Choice
Framework Next.js 14 App Router, TypeScript strict
Auth Supabase Auth
Database Supabase Postgres + Row Level Security
File uploads Vercel Blob
Rate limiting Upstash Redis
Payments Stripe
Email Resend
Vision/OCR Configurable (GLM-4V default)
Text/NLP Configurable (DeepSeek default)
UI shadcn/ui + Tailwind CSS

Environment Setup

Required environment variables (see .env.example):

  • NEXT_PUBLIC_SUPABASE_URL / SUPABASE_SERVICE_ROLE_KEY — Supabase
  • VISION_API_KEY / VISION_API_BASE / VISION_MODEL — Vision model
  • TEXT_API_KEY / TEXT_API_BASE / TEXT_MODEL — Text model
  • UPSTASH_REDIS_REST_URL / UPSTASH_REDIS_REST_TOKEN — Rate limiting
  • STRIPE_SECRET_KEY — Stripe payments

Database Setup

Run the SQL in supabase/schema.sql against your Supabase project.

Project Structure

app/
  (marketing)/     ← Landing, pricing, status pages
  (auth)/          ← Login, signup
  (dashboard)/     ← Authenticated user app
  (admin-layout)/admin/  ← Admin panel
  api/v1/          ← 15 API endpoints
  api/webhooks/    ← Stripe webhook
  api/health/      ← Health check

lib/
  middleware/auth.ts   ← API key validation + rate limiting
  middleware/admin.ts  ← Admin session validation
  ocr.ts              ← OCR adapter
  models.ts           ← Vision + text model router
  files.ts            ← File upload handler
  stripe.ts           ← Stripe helpers
  resend.ts           ← Email helpers
  supabase.ts         ← Supabase clients

Deployment

Deploy to Vercel:

vercel --prod

Set all environment variables in the Vercel dashboard.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors