Skip to content
Regi Ellis

Client application

Harvest

I built Harvest to handle document processing that DHN’s applications share. Dyson uses it during intake, and its activity records let staff follow the progress of incoming files.

Built for
DHN Attorneys
Status
Deployed 2025
My role
Design & development

The need

Reading the forms that arrive at the firm.

DHN receives documents from many associations, each with its own forms and details. More than one application needs to identify those documents and read information from them. I built Harvest so those applications can use the same processing rules.

What I built

Dyson uses Harvest during intake.

Dyson uses Harvest’s association profiles to identify documents and its queues to handle intake. As the work moves between steps, Harvest records the activity. The intake dashboard uses those records to show staff the progress.

Harvest also routes attachments and prepares notifications and replies. Those jobs run in the background while staff work in the applications.

Harvest / Shared application services

DocumentsFiles & association profiles
Intake activityMessages & staff actions

Harvest

Document processing, intake routing, and activity records

  • DysonClassification & intake queues
  • Intake dashboardHandoffs & progress
  • Staff emailNotices & reply drafts

Dyson uses Harvest to process incoming files. The dashboard shows the recorded progress.

Implementation

Shared document rules and a record of each job.

Reusable document rules

Each association profile describes how to recognize its documents and which information to extract. An application can use that profile instead of having its own separate reader for the same form.

Recorded handoffs and staff control

Harvest checks whether a message has already been handled and records what happened to it. Staff choose which messages get an acknowledgment or an AI-assisted draft. Substantive replies stay in Gmail for review.

Built with Technical details
  • Python + Click (CLI)
  • Gmail API + service account DWD
  • Pluggable pipeline framework
  • pdfplumber + PyPDF2 text extraction
  • 300+ HOA YAML extraction profiles
  • Claude API + systemd

Have something
you need built?

Tell me what you’re working on. A rough budget and an idea of when you’d like to start will help.

Start a conversation