Project Info
This project did not submit a demo video on Devpost.
Inspiration
In San Francisco, finding basic help, like a place to sleep, get a meal, or use a clean restroom, is often way harder than it should be. While resources exist, they’re scattered across websites, PDFs, and phone lines, making it confusing or impossible to find help quickly. More than 8,300 people are unhoused on any given night, and over 20,000 seek homeless services each year. But still, more than half sleep outside. Food insecurity is also high, 117,000 residents struggle to get enough to eat. And though the city provides public restrooms and water fountains, they're not always easy to locate. In fact, one restroom program logged 750,000 visits in just 9 months, showing how urgent the need is. That’s why we built CareMap: a tool that brings together real local services like shelters, food banks, and restrooms. You just enter your ZIP code and preferences and get a clean, AI-powered summary of what’s nearby and open now. Because in a moment of crisis, no one should be digging through a dozen websites.
What it does
CareMap helps users: 📍 Find local help fast by entering a ZIP code and choosing preferences (like ID required, walk-ins welcome, multilingual staff, etc.) 🧠 Get an AI-generated summary (via Claude 3) explaining the best matches 🗺️ View results visually on a live interactive map 💬 Chat with an AI to ask questions like “Where can I get food tonight?” We prioritize accessibility, urgency, and clarity to serve those who need help the most.
How we built it
Frontend React + TypeScript TailwindCSS for UI, Lucide for icons Leaflet.js for mapping Backend Node.js and FastAPI hybrid Claude API (Anthropic) to summarize filtered service results Service dataset: shelters, public restrooms, water fountains, food programs — all manually cleaned and annotated Custom preference system: flags for requires_id, lgbtq_friendly, multilingual_staff, and more
Challenges we ran into
Mapping inconsistent real-world data (bad ZIPs, missing lat/lng) Managing geolocation and ZIP code fallbacks in the UI Syncing the hybrid backend setup between Node.js and FastAPI Making the map work smoothly with filtering and user location
Accomplishments we're proud of
🧠 Deployed Claude 3 to generate natural, helpful responses 🗺️ Built a fully working interactive map with real SF data 📊 Created a clean CSV dataset from messy public sources Made the entire experience inclusive, intuitive, and fast
What we learned
How to clean and normalize geospatial datasets How to use Claude effectively for real-time summarization How to build voice-powered apps with Vapi How to design for accessibility and urgency, not just aesthetics That even small filters like “walk-ins welcome” can make a huge impact
What's next
Live data integration: Sync with SF’s city APIs for real-time hours and service status Expand to more cities: Starting with Oakland and LA Mobile-first UX: Focused design for public kiosk or shelter use Multilingual summaries and voice support Partner with local orgs to keep service info verified and current
Inspiration In San Francisco, finding basic help, like a place to sleep, get a meal, or use a clean restroom, is often way harder than it should be. While resources exist, they’re scattered across websites, PDFs, and phone lines, making it confusing or impossible to find help quickly. More than 8,300 people are unhoused on any given night, and over 20,000 seek homeless services each year. But still, more than half sleep outside. Food insecurity is also high, 117,000 residents struggle to get enough to eat. And though the city provides public restrooms and water fountains, they're not always easy to locate. In fact, one restroom program logged 750,000 visits in just 9 months, showing how urgent the need is. That’s why we built CareMap: a tool that brings together real local services like shelters, food banks, and restrooms. You just enter your ZIP code and preferences and get a clean, AI-powered summary of what’s nearby and open now. Because in a moment of crisis, no one should be digging through a dozen websites.
What it does CareMap helps users: 📍 Find local help fast by entering a ZIP code and choosing preferences (like ID required, walk-ins welcome, multilingual staff, etc.) 🧠 Get an AI-generated summary (via Claude 3) explaining the best matches 🗺️ View results visually on a live interactive map 💬 Chat with an AI to ask questions like “Where can I get food tonight?” We prioritize accessibility, urgency, and clarity to serve those who need help the most.
How we built it Frontend React + TypeScript TailwindCSS for UI, Lucide for icons Leaflet.js for mapping Backend Node.js and FastAPI hybrid Claude API (Anthropic) to summarize filtered service results Service dataset: shelters, public restrooms, water fountains, food programs — all manually cleaned and annotated Custom preference system: flags for requires_id, lgbtq_friendly, multilingual_staff, and more
Challenges we ran into Mapping inconsistent real-world data (bad ZIPs, missing lat/lng) Managing geolocation and ZIP code fallbacks in the UI Syncing the hybrid backend setup between Node.js and FastAPI Making the map work smoothly with filtering and user location
Accomplishments that we're proud of 🧠 Deployed Claude 3 to generate natural, helpful responses 🗺️ Built a fully working interactive map with real SF data 📊 Created a clean CSV dataset from messy public sources Made the entire experience inclusive, intuitive, and fast
What we learned How to clean and normalize geospatial datasets How to use Claude effectively for real-time summarization How to build voice-powered apps with Vapi How to design for accessibility and urgency, not just aesthetics That even small filters like “walk-ins welcome” can make a huge impact ** What's next for CareMap Live data integration:** Sync with SF’s city APIs for real-time hours and service status Expand to more cities: Starting with Oakland and LA Mobile-first UX: Focused design for public kiosk or shelter use Multilingual summaries and voice support Partner with local orgs to keep service info verified and current
Analysis
View
Metric
- 3
- 1
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- ExpressIn code
- HTMLIn code
- JavaScriptIn code
- PythonIn code
- ReactIn code
- Tailwind CSSIn code
- TypeScriptIn code
- FastAPIClaimed
8 of 9 appear in the indexed code. 1 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
209 KB
Source files
72
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
AishaErel/final_hack_cal
89 files · 857 KB · @ 434da05
Structure
Interface
56 files · 63%Screens, components and styles rendered to the user.
Application logic
19 files · 21%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- TypeScript92%
- JavaScript3%
- Python2%
- Markdown1%
- CSS1%
- HTML0%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
package.json
npm · 69- @hookform/resolvers
- @radix-ui/react-accordion
- @radix-ui/react-alert-dialog
- @radix-ui/react-aspect-ratio
- @radix-ui/react-avatar
- @radix-ui/react-checkbox
- @radix-ui/react-collapsible
- @radix-ui/react-context-menu
- @radix-ui/react-dialog
- @radix-ui/react-dropdown-menu
- @radix-ui/react-hover-card
- @radix-ui/react-label
- @radix-ui/react-menubar
- @radix-ui/react-navigation-menu
- @radix-ui/react-popover
- @radix-ui/react-progress
- @radix-ui/react-radio-group
- @radix-ui/react-scroll-area
- +51 more
caremap-navigator-backend/package.json
npm · 4- cors
- csv-parser
- express
- fs
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.