Inspiration
What it does
How we built it
Challenges we ran into
Accomplishments that we're proud of
What we learned## Inspiration
Generative AI rewrote the rules of knowledge work overnight, yet 90 % of Spanish-speaking law firms in Latin America still run on Word macros and shared drives—an untapped blue-ocean market for digitalisation. We saw the chance to leapfrog legacy software and give lawyers an AI-native workspace that turns every new filing, email, or note into structured insight, without adding extra clicks.
How We Built It — Dynamic Context Engine (DCE)
The core is a Context Box that is born and retired with each matter (Track). All Track functions talk only to their own box.
| Layer | Purpose | Tech highlights |
|---|---|---|
| Core Context | Immutable facts—jurisdictions, parties, case IDs | Strongly-typed tables |
| Dynamic Context | Everything that changes—documents, events | JSON-friendly columns for flexible filtering |
| AI Analysis | Key dates, insights, impact scores | Stored as versioned JSON blobs |
| Metadata | Timestamps, users, update history | Auto-filled on every change |
Event-Driven Update Flow
- Single Source of Truth (SST) — an event engine inside our .NET backend; direct DB writes are forbidden.
- Each event type (DocumentAdded, DocumentDeleted, EmailReceived, …) has a dedicated EventHandler.
- Handlers update the Context Box, trigger OCR/LLM pipelines, and append fresh metadata.
- Two endpoints keep the API clean:
GET /contextboxto fetch current statePUT /contextbox/updatewith{ eventType, payload }to queue any update- Heavy work (OCR + AI) runs in a background thread, so the user sees “upload successful” instantly while analysis finishes a few minutes later.
Stack Snapshot
- Backend: .NET 8, PostgreSQL + pgvector
- AI: Azure OpenAI (o3-mini) via Retrieval-Augmented Generation
- Realtime & Auth: Firebase
- CI/CD: GitHub Actions → Azure Container Apps / Vercel
- Frontend: Next.js 14, TypeScript, Tailwind CSS
What We Learned
- AI moves faster than any spec—design thin orchestration layers so models can be swapped without UI rewrites.
- Every lawyer touchpoint is an opportunity to capture context automatically; the less they type, the more they adopt.
Next Steps
- Promote the Context Box to a plug-and-play module for a larger agent framework, where our native mini-tools become callable actions.
- Roll out connectors for additional LATAM jurisdictions to solidify first-mover advantage.
- Expose public webhooks so third-party apps can push events into the Context Box and receive timeline-aware suggestions in return.
Built With
- azure
- cognitive
- node.js
- openai
- react
- typescript

Log in or sign up for Devpost to join the conversation.