7,409
stars
+0+8+131
750
forks
44
watchers
1,760
prs
72
issues
618
releases
–
discussions
README
Unstract
Turn Unstructured Documents into Structured Data
Documentation |
Enterprise
What is Unstract?
Unstract uses LLMs to extract structured JSON from documents — PDFs, images, scans, you name it. Define what you want to extract using natural language prompts, and deploy as an API or ETL pipeline.
Built for teams in finance, insurance, healthcare, KYC/compliance, and much more.
Current State vs. Unstract
| Task | Without Unstract | With Unstract |
|------|------------------|---------------|
| Schema definition | Write regex, build templates per vendor | Write a prompt once, handles variations |
| New document type | Days of development | Minutes in Prompt Studio |
| LLM integration | Build your own pipeline | Plug in any provider (OpenAI, Anthropic, Bedrock, Ollama) |
| Deployment | Custom infrastructure | ./run-platform.sh or managed cloud |
| Output | Unstructured text blobs | Clean JSON, ready for your database |
⭐ If Unstract helps you, star this repo!
!Star Unstract
✨ Key Features
Prompt Studio — Define document extraction schemas with natural language. Docs →
!Prompt Studio
API Deployment — Send a document over REST API, get JSON back. Docs →
!API Deployment
ETL Pipeline — Pull documents from a folder, process them, load to your warehouse. Docs →
MCP Server — Connect to AI agents (Claude, etc.) via Model Context Protocol. Docs →
n8n Node — Drop into existing automation workflows. Docs →
🚀 Quickstart (~5 mins)
System Requirements & Prerequisites
- Linux or macOS (Intel or M-series)
- Docker & Docker Compose
- 8 GB RAM minimum
- Git
Run Locally
bash
Clone and start
git clone https://github.com/Zipstack/unstract.git
cd unstract
./run-platform.sh
That's it!
- Visit http://frontend.unstract.localhost in your browser
- Login with username: unstract password: unstract
- Start extracting data!
📦 Other Deployment Options
Docker Compose
bash
Pull and run entire Unstract platform with default env config.
./run-platform.sh
Pull and run docker containers with a specific version tag.
./run-platform.sh -v v0.1.0
Upgrade existing Unstract platform setup by pulling the latest available version.
./run-platform.sh -u
Upgrade existing Unstract platform setup by pulling a specific version.
./run-platform.sh -u -v v0.2.0
Build docker images locally as a specific version tag.
./run-platform.sh -b -v v0.1.0
Build docker images locally from working branch as current version tag.
./run-platform.sh -b -v current
Display the help information.
./run-platform.sh -h
Only do setup of environment files.
./run-platform.sh -e
Only do docker images pull with a specific version tag.
./run-platform.sh -p -v v0.1.0
Only do docker images pull by building locally with a specific version tag.
./run-platform.sh -p -b -v v0.1.0
Upgrade existing Unstract platform setup with docker images built locally from working br