Inspiration

In many industries, managing structured documents is still a manual, repetitive, and error-prone task. We wanted to create a lightweight solution that empowers users to define, organize, and process documents with structure — quickly and at scale. That vision led us to build Estructura.

What it does

Estructura helps users work with documents based on dynamic, reusable schemas. It includes two core modules:

  • documents: to create and manage content
  • structures: to define the structure (schema) that documents should follow

This design makes it easy to enforce consistency, automate processing, and integrate documents into broader workflows.

How we built it

We built Estructura using FastAPI (Python) with PostgreSQL as the database engine. The project follows a modular, domain-driven architecture. We containerized it with Docker and deployed it using AWS Lambda and S3 to keep it scalable and serverless-ready.

Challenges we ran into

  • Designing a system flexible enough to support custom structures while keeping it simple for non-technical users
  • Managing schema-document validation dynamically
  • Ensuring clean integration between modules without introducing unnecessary complexity

Accomplishments that we're proud of

  • Launched a working MVP in under a week
  • Achieved clean separation between data and structure logic
  • Created a foundation ready for extension and customization

What we learned

  • Focusing on just a few powerful modules can make a project faster and more effective
  • Dynamic schema systems don’t have to be complex if the design is clean
  • Serverless tools can significantly accelerate deployment and scaling

What's next for Estructura

  • Enable file uploads and form-based document ingestion
  • Add a structure template library for faster onboarding
  • Improve document tracking with basic analytics and usage logs
  • Support role-based access control (RBAC) to manage who can create, view, or edit specific document types
  • Integrate webhook support for real-time processing and event-driven workflows
  • Add a review and approval flow for documents before final submission
  • Export documents in PDF format using customizable templates

Most of the infrastructure code—such as Terraform modules, Cognito security configurations, and core web/API services—had already been developed and refined across previous projects. For Estructura, the focus was on designing and implementing the /documents and /structures endpoints, along with all the underlying logic and processing layers required to support them.

While Amazon Textract had also been successfully used in several earlier projects, Estructura emerged from the need to abstract and centralize this logic into a reusable system. The goal was to create a foundation that could power multiple applications through a shared document processing and validation engine.

Built With

Share this project:

Updates