Inspiration

The endless pile of PDFs, receipts, warranties, and reminders in our lives inspired us to create a single, intelligent hub. We wanted a premium‑looking assistant that could understand natural language, fetch the right document, and suggest actions—all without the user manually digging through folders.

What it does

Folio is an AI‑powered personal‑admin agent that:

  • Authenticates users via Supabase and stores personal documents securely.
  • Lets users ask natural‑language questions (e.g., “What warranties expire this month?”).
  • Retrieves documents, calculates analytics, and surfaces actionable insights using Amazon Bedrock for LLM inference.
  • Provides a sleek glass‑morphic dashboard with tabs for Dashboard, Documents, Chat, Reminders, Activity, and Settings.

How we built it

  1. Monorepo – pnpm workspaces manage the front‑end (apps/web) and back‑end (apps/mcp-server).
  2. Front‑end – Vite + React (TS) with a custom design system (Inter font, gradients, micro‑animations).
  3. Back‑end – Express server implementing the MCP protocol, streaming responses from Bedrock via SSE on port 8787.
  4. Auth & Data – Supabase provides JWT‑based auth and a PostgreSQL store for user documents.
  5. AI Integration – Calls to Bedrock’s InvokeModel endpoint; results are streamed back to the UI in real‑time.

Challenges we ran into

  • JWT verification – missing SUPABASE_JWT_SECRET caused token errors; resolved by proper env‑var handling.
  • Bedrock streaming – handling chunked responses required a robust SSE wrapper to keep the chat UI fluid.
  • Dependency approvals – pnpm flagged esbuild as an ignored build script; fixed with pnpm approve-builds --all.
  • Design consistency – balancing premium aesthetics with accessibility required careful contrast and focus‑state styling.

Accomplishments that we're proud of

  • A single‑page premium UI with glass‑morphism, smooth hover effects, and responsive layout.
  • Seamless AI integration using Amazon Bedrock, delivering real‑time, context‑aware answers.
  • Fully type‑safe monorepo with shared utilities (@folio/shared) and consistent linting across packages.
  • Zero‑trust auth: JWTs never touch the server’s file system; all verification happens in‑memory.

What we learned

  • Practical usage of Amazon Bedrock for streaming LLM responses.
  • Best practices for stateless JWT authentication with Supabase.
  • Managing a pnpm workspace at scale, including handling ignored build scripts.
  • The importance of micro‑animations and visual hierarchy in creating a premium user experience.

What's next for Folio‑Personal‑Life‑Admin‑Agent

  • Add voice interaction using Amazon Polly for spoken responses.
  • Integrate additional Bedrock models (Claude, Anthropic) for comparative performance.
  • Expand document types (e.g., tax forms, health records) with automated OCR via Amazon Textract.
  • Introduce collaborative features – shared folders and joint reminders for families or teams.
  • Deploy a serverless version on AWS Lambda + API Gateway for effortless scaling.

Built With

Share this project:

Updates

Submission history