🩺 CareChain — Project Story

💡 Inspiration

CareChain was inspired by a simple but pressing reality: in many African communities, patients often show up at clinics without any medical history. Doctors are forced to guess or start from scratch, delaying care and risking lives. I wanted to build something lightweight, secure, and accessible — even offline — to help healthcare workers in these settings deliver faster, safer care.

🛠️ What it does

CareChain is a decentralized, offline-first electronic medical record system that allows healthcare workers to:

  • Sign up and log in securely via role-based access (Admin, Doctor, Nurse).
  • Create, view, and update patient records.
  • Automatically generate unique QR codes for each patient.
  • Access patient records by simply scanning their QR code — even without login (with time-limited tokens).
  • Flag symptoms using a keyword-based dictionary to highlight risky or critical conditions.
  • Sync new records created offline when back online.
  • Log and audit all data access for transparency.

🧱 How we built it

  • Built the backend with FastAPI, PostgreSQL, and SQLAlchemy for secure APIs and user authentication (JWT).
  • Used Next.js and Tailwind CSS to design a clean, responsive frontend.
  • Integrated a browser-based QR code scanner and used the qrcode library to generate codes on the backend.
  • Implemented Zustand for state management and Render + NeonDB for backend and DB hosting.
  • Deployed the frontend on Vercel for fast, global performance.

🚧 Challenges we ran into

The biggest challenge? Time. The hackathon lasted one month, but I only discovered and registered for it on May 3rd — giving me just two weeks to build everything from scratch.

There were also plenty of technical hurdles: deploying with environment variables, handling CORS errors in FastAPI, syncing offline data, and structuring the symptom-flagging logic. Juggling this with school and life pushed me to my limits, but I kept going.

🏆 Accomplishments that we're proud of

  • Built a fully working end-to-end medical record system in under 17 days.
  • Implemented offline-first support, which is a huge win for low-connectivity areas.
  • Added QR-based patient access and a working symptom flagging system.
  • Created a clean, simple, and intuitive UI that anyone can use — even non-tech-savvy health workers.

📚 What we learned

  • FastAPI and PostgreSQL under pressure — especially around auth, performance, and deployment.
  • How to design a system that considers real-world constraints like offline access and non-technical users.
  • The power of planning: wireframing, defining user roles, and managing frontend-backend integration.

Most importantly, I learned how much can be done with a clear goal and limited time.

🔮 What's next for CareChain

This is just the MVP. Next, I plan to:

  • Replace the dictionary-based symptom flagging with a proper AI module for more intelligent diagnosis support.
  • Improve the offline-first sync system to support full caching, editing, and auto-merge.
  • Add multi-language support for better accessibility.
  • Build a proper admin dashboard with password resets and user management tools.
  • Partner with local clinics to pilot test CareChain in real-world scenarios.

CareChain has the potential to transform how healthcare is delivered in underserved areas — and this is just the beginning. 🚀

Built With

  • fastapi
  • github
  • neondb
  • next.js
  • postgresql
  • python
  • qr-code-library-(qrcode)
  • react-icons
  • render
  • tailwind-css
  • vercel
  • vite
  • zustand
Share this project:

Updates