Danso

2025 · Front end only

MediSpace

A student-friendly web app for tracking campus medication and dosage, with an AI chatbot for health questions.

  • TypeScript
  • React
  • Next.js
  • Vercel
The MediSpace medication schedule, showing a day of doses

Context

Students on campus manage their own medication without the routines a clinic provides. Doses get skipped, courses get abandoned halfway, and the questions that would normally go to a pharmacist go unasked.

MediSpace addresses both halves of that: a schedule that tracks what to take and when, and an AI chatbot for the questions students would otherwise search for or simply ignore.

My role

I built the full front end in TypeScript: the medication schedule, dosage tracking and the AI chat interface, along with the state handling and the integration against the team's API. I did not write the backend services.

I had already worked on a large team project before this one, and that experience helped me keep the front-end work on track alongside the backend developers, the project manager and the QA engineer.

Key decisions

TypeScript throughout. Medication data is the kind where a wrong field rendering silently as undefined is a real problem, not a cosmetic one. Typed models meant a mismatch failed at compile time rather than in front of a student reading their dose.

Streaming the chatbot's replies. We first planned to wait for the full answer from the AI API before showing it, because that kept the state simpler. We dropped that plan: in a chat, a few seconds of blank screen looks broken. Showing the reply as it arrives makes the same answer feel immediate, even though it takes just as long.

The hard part

The problem that cost us the most time was not a bug in the code. When we first put the front end on Vercel, the live site was missing features we had just built and tested. We assumed Vercel was serving an old build, or failing to build the new components.

We spent a while going through the Vercel settings before finding the real cause. I had finished the work on my machine but never pushed the last commits to GitHub, so Vercel was building an older version of the code. We caught it in a group debugging session, when we compared the GitHub repository with what I had locally. One git push fixed it.

Outcome, and what I would do differently

MediSpace is deployed on Vercel and students can use it today. The structure we chose held up well, and I am proud of what the team built.

If I built it again, I would change the chatbot's interface. The streaming worked, but the chat screen around it is where I would put my time on a second pass.