Project Info
Inspiration
The healthcare system is facing a critical shortage of skilled professionals, with projected deficits of over 78,000 nurses and 94,000 physicians in 2025, leading to workflow inefficiencies and staff burnout. In evaluation of the process variations, we discovered clinicians spend 2x more time on paperwork than with patients. There needs to be a smarter, faster way to document medical visits.
What it does
Curato is an AI assistant that listens to doctor-patient conversations, then generates a full SOAP note, auto-fills the EHR, and lets both parties review and share the summaries. Key Features: ποΈ One-click voice recording of consultations π§ AI-generated SOAP notes (Subjective, Objective, Assessment, Plan) π Auto-filled EHR forms with edit options π PDF export of the final report π QR-based patient info intake π¬ Patient-side EHR viewer with clean summaries and transcripts
How we built it
We built Curato using: Next.js with React and Tailwind CSS for the frontend Supabase as our backend and authentication provider Gemini for transcription and summarization jsPDF for exporting the final EHR documents html5-qrcode to scan patient QR data into the form Typescript throughout for safer development
Challenges we ran into
Balancing clean UX for both doctors and patients in a single platform Transforming our transcribed EHR data to be stored in our Postgres Database Converting our QR code into a JSON payload to store in our Postgres Database
Accomplishments we're proud of
Seamless voice-to-EHR generation from scratch in < 30 hours Real-time QR scanning to preload patient data Built a multi-step data pipeline involving AI, Supabase, and client rendering with minimal latency Learned how to use and implement new technologies - Supabase & Gemini were new to us!
What we learned
This weekend was a wonderful learning experience for us! We got to use new tools and technologies like Gemini AI and Supabase for the first time. We even got to use Google Cloud to add users into our database. We are proud to say that this weekend at CruzHacks we were able to expand on our skills and gain a deeper understanding of Fullstack development.
What's next
Expanding and refining our database design. Cross-provider communication so patients can share their data with different clinics and/or providers. Improve scalability.
π₯ Curato: AI-Powered Clinical Assistant
Curato is an AI-powered tool designed to alleviate the growing administrative burden on healthcare providers. By combining audio transcription, structured EHR generation, and document sharing, Curato streamlines workflows so clinicians can focus on what matters most: patient care.
π Problem
1. Documentation & Record-Keeping
Clinicians spend 2x more time on paperwork than with patients.
- Manual updates to EHRs are time-consuming and error-prone.
- Example: Paper-based cognitive tests require manual scoring and data entry.
- Impact: Leads to delayed diagnoses, billing mistakes, and patient safety issues.
2. Appointment Scheduling & Communication
24.4% of patients report delays due to inefficient communication.
- Scheduling via phone/email lacks automation and follow-up.
- Example: Missed appointments due to no reminders or confirmations.
- Impact: Strains staff and results in delayed care.
3. Insurance & Billing
30.9% of patients experience care delays due to insurance issues.
- Verifying coverage, resolving denials, and prior authorizations are time-intensive.
- Example: Incorrect billing leads to financial strain and denied claims.
4. Regulatory Compliance
A single 161-bed hospital may spend $7.6 million annually on compliance.
- Requires nearly 59 full-time staff to manage documentation and oversight.
- Example: Post-acute care facilities must comply with 288+ extra regulations.
- Impact: Significant financial and operational burden.
5. Care Coordination
Fragmented systems hinder cross-provider communication.
- Referral and handoff processes are often manual and redundant.
- Impact: Leads to miscommunication, duplicate tests, and disrupted care.
π Sources
- [1] Creyos
- [2] Agiliti Health
- [3] PMC Article
- [6] SLCHC Blog
β Solution: Curato
Curato addresses these challenges through a modular, AI-driven system:
1. Smart Recording & Transcription
Doctors can record patient conversations directly in the platform. Curato transcribes the audio in real time using the Gemini API, generating accurate, editable text.
2. EHR Autofill Assistant
Transcripts are analyzed by an AI model that extracts structured data for Electronic Health Records (EHR), auto-filling critical sections like:
- Chief Complaint
- Allergies & Medications
- SOAP Notes (Subjective, Objective, Assessment, Plan)
- Chaperone documentation, vitals, and more
3. Secure Record Sharing
Patients can selectively share their health information with providers via QR code. This helps reduce repetitive intake questions and improves continuity of care.
4. Patient-Facing Portal
Patients can:
- View upcoming and past appointments
- Chat with the assistant to ask about medications, appointments, summaries, etc.
- Control what data to share with clinicians and when
π οΈ Tech Stack
- Next.js 14 + App Router
- TypeScript
- Tailwind CSS
- Google Gemini API (for transcription & EHR RAG)
- QRCode generation
- Optional Vectara (RAG platform) support for longitudinal health document search
π¦ Future Directions
- π§ Integrate Vectara for document-level semantic search
- π End-to-end encrypted patient-provider messaging
- ποΈ FHIR-compliant health data export
- π Multilingual and accessibility support
π€ Contributors
- Thai An Le β Developer, Designer
- Britney Nguyen - Developer
This is a Next.js project bootstrapped with create-next-app.
Getting Started
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.
Learn More
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
Deploy on Vercel
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.
curato
Analysis
View
Metric
- 50
- 6
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- Google GeminiIn code
- Next.jsIn code
- ReactIn code
- SupabaseIn code
- Tailwind CSSIn code
- TypeScriptIn code
- PostgreSQLClaimed
- SQLClaimed
7 of 9 appear in the indexed code. 2 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
240 KB
Source files
31
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
xntle/curato
44 files Β· 518 KB Β· @ 7b13c49
Structure
Interface
26 files Β· 59%Screens, components and styles rendered to the user.
Application logic
3 files Β· 7%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here β open the file browser to check anything the diagram implies.
Languages
- YAML60%
- TypeScript35%
- Markdown2%
- CSS2%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
package.json
npm Β· 39- @google/genai
- @google/generative-ai
- @radix-ui/react-checkbox
- @radix-ui/react-dialog
- @radix-ui/react-separator
- @radix-ui/react-slot
- @radix-ui/react-tooltip
- @supabase/auth-helpers-nextjs
- @supabase/ssr
- @supabase/supabase-js
- @vectara/react-chatbot
- @vectara/react-search
- class-variance-authority
- clsx
- framer-motion
- html2canvas
- html2pdf.js
- html5-qrcode
- +21 more
Declared in the repositoryβs manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This projectβs features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.