Inspiration
Caregiving is not only about responsibility and routine — it is deeply human. Many caregivers and recipients struggle not just with coordination, but with maintaining trust, empathy, and rapport over time. We wanted to build something that supports daily caregiving while also tightening the bond between caregiver and recipient through better shared context and communication.
What it does
CareConnect is a caregiving support platform that connects caregivers and recipients through a request-and-accept workflow.
Key features include:
Care request & acceptance workflow
- Caregivers send care requests and recipients can accept or reject them, ensuring consent and trust from the start before access is granted.
Recipient profiles (likes, dislikes, phobias, pet peeves, condition, age)
- Helps caregivers better understand the recipient’s personality and needs, enabling more thoughtful and personalized care.
Recipient journal entries
- Gives recipients a safe, structured way to express feelings and document daily experiences, improving emotional support and strengthening caregiver-recipient rapport.
Caregiver comments on journal entries
- Enables caregivers to respond, encourage, and communicate directly within the recipient’s updates, fostering connection and reassurance.
Caregiver task management
- Allows caregivers to track and manage care-related responsibilities (with priority and due dates), reducing missed tasks and improving day-to-day coordination.
How we built it
We built the backend in Go, using Gin for routing and GORM for database access, backed by PostgreSQL running in Docker for local development and deployed to Supabase. Our data model is structured around a base User entity with role-specific profiles (Caregiver, Recipient), allowing different signup flows while keeping a shared identity layer.
We implemented REST endpoints for:
- authentication (login)
- recipient/caregiver management
- care requests (send, list, accept/reject)
- todos
- journal entries and comments
On the frontend, we used React with typed API hooks to integrate cleanly with the backend and ensure the UI reflects real-time care request states and assignments.
Challenges we ran into
The toughest challenges were ensuring our data relationships were correct and scalable:
- designing caregiver ↔ recipient relationships and request flows cleanly
- preventing inconsistent states (e.g., duplicate requests, missing relationship links)
- handling nested data loading (preloading user profiles properly)
- debugging environment/network issues while setting up Docker + Postgres during rapid development
Accomplishments that we're proud of
- Delivered a complete end-to-end workflow: request → pending → accepted/rejected → relationship established
- Built a clean, structured backend with reusable handlers and consistent models
- Implemented journaling + commenting and todo planning to support real caregiving use-cases
- Designed the product around strengthening rapport, not just productivity
What we learned
We learned that building for caregiving requires both technical correctness and empathy. Small design decisions (like request states and shared context) can directly affect trust and user experience. Technically, we gained strong experience modeling real relationships in relational databases, handling role-based identity flows, and writing API endpoints that remain consistent as the product grows.
What's next for CareConnect
Next, we want to expand CareConnect into a more complete caregiving companion by adding:
- email notifications for requests, due todos, and journal updates
- richer, more comprehensive profiles and personalization (goals, preferences, routines, reminders)
- access controls so recipients can manage visibility of private data
- analytics and mood trends from journal entries
- in-app messaging to further strengthen communication and trust
Built With
- golang
- postgresql
- react
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.