Back to projects
mobileFeatured

Heart 2 Help

Heart2Help is a community assistance platform designed to connect people who need help with volunteers willing to offer support. I contributed to building this Flutter-based application to enable real-time assistance requests, volunteer matching, and community-driven support in a structured and scalable way.

Heart 2 Help

Heart2Help App

Overview

Heart2Help is a community assistance platform designed to connect people who need help with volunteers willing to offer support. I contributed to building this Flutter-based application to enable real-time assistance requests, volunteer matching, and community-driven support in a structured and scalable way.

The Problem

In real-world communities, people who need help—whether it’s emotional support, physical assistance, or basic needs—often struggle to find reliable and immediate support. Existing systems are fragmented, unstructured, and lack real-time coordination between helpers and those in need.

What I Built

Help Request System

Implemented a system where users can create detailed help requests with descriptions, categories, location, and images, allowing clear communication of needs.

Volunteer Matching Flow

Built a matching system where volunteers can browse nearby requests and offer help directly based on availability and category.

Community Interaction

Enabled interaction between users and volunteers through structured communication flows to ensure smooth coordination.

Organization Support

Integrated support for organizations to participate, provide assistance, and collaborate with users within the platform ecosystem.

Real-time Communication

Added in-app communication features to connect users and volunteers for faster coordination and response handling.

Technical Highlights

  • Flutter-based cross-platform app ensuring consistent UI and performance

  • GetX state management for reactive UI updates, dependency injection, and navigation handling

  • REST API integration for managing requests, users, and volunteer interactions

  • Real-time data flow architecture for dynamic request updates

  • Location services integration for nearby request matching

  • Modular architecture for scalability across community and organizational features

Key Decisions

I chose Flutter to maintain a single codebase while ensuring fast UI rendering and smooth interactions, which is critical for real-time community applications where users expect instant updates and responsiveness.

For state management, I used GetX because it provides a lightweight yet powerful structure for handling reactive states, navigation, and dependency injection. In an app with frequent updates like incoming help requests and volunteer responses, GetX helped keep the architecture simple and efficient without unnecessary boilerplate.

A key architectural decision was to design the system around event-driven interactions. Instead of static data loading, the app continuously reacts to new requests, volunteer actions, and status changes. This ensures the platform remains responsive and scalable as user activity grows.