AI / LLM

AI Document Processing Pipeline

Learning project in the AI Learning Tracker series.

An async document pipeline: upload or webhook, Temporal extract/analyze/summarize, then Trigger.dev email — without blocking the request.

Overview

The AI Document Processing Pipeline is Project 3-A in the learning series. A file upload returns immediately. Temporal owns the durable processing lifecycle (extract text, analyze metadata, AI summary). Trigger.dev owns the notification after results exist. v1 supports PDF and plain text, with no OCR.

Problem

Long AI work cannot sit inside a request/response. I needed to feel jobs, events, durable workflows, and background tasks as separate pieces before stacking them.

What I built

POST /documents stores the file, starts DocumentProcessingWorkflow, and returns 202. Activities extract, analyze, and summarize (LLM or mock). A later step enqueues a Trigger.dev notification task that emails via Resend or logs to the console. GET /documents/:id reports status.

My contribution

  • Separated upload (HTTP) from processing (Temporal) from notification (Trigger.dev).
  • Implemented extract → analyze → AI summary as retried Temporal activities.
  • Wired async email completion without blocking the upload.

Technologies

  • Temporal
  • Trigger.dev
  • TypeScript
  • Webhooks
  • LLM

More ai / llm

AI / LLM

LEPA Support Agent

A LangGraph support workflow for LEPA: typed state, conditional routing, tools, memory, and a multi-agent split behind FastAPI.

  • Python
  • LangGraph
  • FastAPI
  • SQLite
  • OpenRouter

AI / LLM

AI Learning Tracker

A public repo of small AI engineering projects — terminal agents, MCP, LangGraph, and async document workflows — built while learning in public.

  • Python
  • TypeScript
  • OpenRouter
  • MCP
  • AI SDK

Related writing