Omnigraph
Graph engine for context assembly. Object-storage native. Agents work with graph data the way engineers work with code: branched, typed, reviewed, merged, audited, and governed.
Transform chaotic JSON into perfectly structured data with AI
DataTypeScript · CSSGitHub @abaumentOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
🔄 GIGO - Garbage In, Gold Out | AI-powered JSON transformation SaaS
Translation pending
Loading the full README. The saved excerpt is shown below.
The AI-powered universal data adapter. Send any JSON to a webhook, get back a payload that matches your schema — renamed, retyped, restructured — and optionally forwarded straight to its destination.
No field-by-field mapping rules. You show GIGO one example of the output you want; the AI understands the meaning of incoming data and reshapes it accordingly.Read the full README ↗The AI-powered universal data adapter. Send any JSON to a webhook, get back a payload that matches your schema — renamed, retyped, restructured — and optionally forwarded straight to its destination.
No field-by-field mapping rules. You show GIGO one example of the output you want; the AI understands the meaning of incoming data and reshapes it accordingly.
{ "user_first_name": "jean", { "first_name": "Jean",
"user_MAIL": "[email protected]", ──► "email": "[email protected]",
"amount": "49,90 €", "amount_cents": 4990,
"infos": { "ville": "Lyon" } } "city": "Lyon" }
Every service speaks its own dialect: firstName here, first_name there, amounts as strings, nested structures nobody agreed on. Connecting N sources to M destinations means writing and maintaining N×M brittle integrations. GIGO replaces them with a single hub: one webhook per target schema, AI does the translation, full audit trail included.
OPENAI_API_KEY / ANTHROPIC_API_KEY env vars as a server-wide fallbackgit clone <repo-url>
cd universal-data-adapter
bun install
cp .env.example .env # then fill in your values
bun run db:deploy # apply database migrations
bun run db:generate
bun run dev # → http://localhost:3000
ENCRYPTION_KEY(min 16 chars) is required — the app refuses to start without it. It encrypts destination credentials with AES-256-GCM.
docker compose up -d # see docker-compose.yml for configuration
curl -X POST https://your-instance/api/webhook/<ADAPTER_ID> \
-H "Content-Type: application/json" \
-H "X-Webhook-Secret: whsec_..." \
-d '{"any": "json", "shape": "works"}'
Response:
{
"status": "success",
"trace_id": "…",
"data": { "…": "transformed payload" },
"meta": {
"duration_ms": 1250, "transform_duration_ms": 1180,
"provider": "anthropic", "model": "claude-sonnet-5",
"input_tokens": 412, "output_tokens": 96
}
}
Errors are typed: 401 INVALID_SECRET, 413 PAYLOAD_TOO_LARGE, 429 RATE_LIMITED (+ Retry-After), 422 MAX_TOKENS, 504 TIMEOUT — always with a trace_id you can look up in the logs.
Sender ──POST──► /api/webhook/[id]
│ secret check (timing-safe) → rate limit → size cap
▼
shared pipeline (src/lib/pipeline.ts)
│ transform → validate → forward → log → usage
▼
provider layer (src/lib/providers/)
├─ openai.ts GPT-4o, strict structured outputs
└─ anthropic.ts Claude, forced strict tool use + prompt caching
The same pipeline powers the public webhook, the authenticated playground (POST /api/adapters/[id]/test) and log replay — three entry points, one behavior.
| Layer | Tech |
|---|---|
| Framework | Next.js 14 (App Router), TypeScript strict |
| Database | PostgreSQL + Prisma (versioned migrations) |
| Auth | Supabase Auth |
| AI | openai + @anthropic-ai/sdk behind a common TransformProvider interface |
| i18n | next-intl (cookie mode, no URL prefix) |
| Tests | Vitest — bun run test |
| Tooling | Bun |
timingSafeEqual).bun run test # 61 unit/integration tests
bun run test:watch
bunx tsc --noEmit # typecheck
bun run build # production build
bun run db:studio # browse the database
See CONTRIBUTING.md for guidelines.