Point a camera at an object and get back a structured archaeological reading of it: a specific name, estimated age, likely civilization, material, purpose, probable origin, and why it matters — generated by GPT-4o vision and presented as a field-notes dossier.
Built as a full-stack TypeScript app: React 19 + Vite front end, Express API, Drizzle ORM for persistence, and the OpenAI API for artifact analysis. Themed as a digital excavation tool, originally an FLL "Code-Linker" project.
- Scan an artifact — upload or capture an image;
POST /api/analyzesends it to GPT-4o with an expert-archaeologist system prompt. - Structured results — the model returns typed JSON:
name,age,material,purpose,location,civilization,civilizationPeriod,whyItMatters, and a confidence score. - Excavation pipeline UI — a staged "dig" interface (
RobotExcavationPipeline,Scanner) walks the analysis from capture to report. - Language insights — supporting analysis surfaced alongside each find (
LanguageInsights).
| Layer | Tech |
|---|---|
| Front end | React 19, Vite, Tailwind CSS, Radix UI |
| Server | Express, TypeScript (tsx) |
| Data | Drizzle ORM (shared/schema.ts) |
| AI | OpenAI gpt-4o (vision) |
client/ React app (components, pages, assets)
server/ Express API — routes.ts holds /api/analyze
shared/ Drizzle schema shared by client and server
script/ build pipeline
npm install
export OPENAI_API_KEY=sk-...
npm run dev # tsx server + Vite, http://localhost:5000npm run build produces a production bundle via script/build.ts.