The problem RECONNECT solves The Problem RECONNECT Solves Rehabilitation and reintegration into society are often overwhelming, lonely, and disjointed processes. Individuals leaving the justice system or intensive care programs frequently fall through the cracks due to fragmented resources, lack of accountability, and zero unified support.
RECONNECT acts as a centralized, supportive ecosystem that bridges the gap between individuals seeking a fresh start and the organizations dedicated to helping them.
For Participants (Individuals reintegrating):
Combats Isolation: Provides direct access to peer cohorts, one-on-one mentorship, and support groups so they never feel alone on their journey. Builds Accountability: Features a gamified "Daily Check-in" system (with streaks and heatmaps) that turns daunting long-term goals into manageable, rewarding daily habits. Centralizes Resources: Instead of navigating a maze of scattered websites and agencies, participants get personalized AI-driven recommendations for courses, jobs, and counseling right on their dashboard. For Organizations (Non-profits, halfway houses, rehab centers):
Eliminates Blind Spots: Replaces messy spreadsheets with a powerful analytics dashboard to track participant engagement, milestone completion, and drop-off risks in real-time. Streamlines Program Delivery: Allows orgs to easily host, manage, and even monetize (via Stripe) workshops, cohorts, and resources. Scales Impact: Empowers case managers to support more individuals effectively by automating check-ins and progress tracking. Ultimately, RECONNECT makes the daunting task of starting over manageable, measurable, and deeply supported.
Challenges we ran into Challenges We Ran Into & How We Overcame Them
The Stripe Checkout Loop (State Hydration) Hurdle: After a user paid for a module via Stripe, redirecting them back to the exact spot they left off—while instantly unlocking the Google Meet link without a page refresh—caused state synchronization issues. Solution: We passed a dynamic returnUrl during checkout creation. Post-payment, our backend intercepts the webhook and silently redirects the user back with hidden query parameters. A custom PaymentSuccessHandler then instantly hydrates the global context and auto-opens the module dialog, creating a flawless UX.
- Dual-Actor Architecture & Privacy
Hurdle: Serving two distinct user types (individuals and organizations) without cluttering the UI or leaking sensitive data. Solution: We used a strict Next.js Split-Auth architecture (/(participant) vs /(organization)). We secured data using Supabase Row Level Security (RLS) policies so organizations can only access analytics for their specific enrolled cohorts.
- Vercel Build Crashes with SDKs
Hurdle: Our Vercel deployment repeatedly crashed because Next.js static collection was evaluating our top-level Stripe instantiations before production environment variables were loaded. Solution: We refactored our code to instantiate SDKs lazily inside the API Route Handlers. This bypassed the static build evaluation phase completely and fixed the deployment.
- A "Non-Punishing" Habit Tracker
Hurdle: We wanted a "LeetCode-style" daily check-in heatmap, but standard habit trackers feel punishing if you miss a day—the opposite of what reintegration requires. Solution: We custom-built an SVG heatmap focusing heavily on color psychology. We used soothing sage/forest green gradients and tailored the logic to celebrate "streaks" of positivity, removing any negative visual indicators for missed days.
Built With
- javascript
- nextjs
- postgresql
- react
- supabase
- tailwindcss

Log in or sign up for Devpost to join the conversation.