Project Info
This project did not submit a demo video on Devpost.
Inspiration
: The inspiration behind SNAPMap came from the need to improve accessibility to essential services for low-income communities who rely on SNAP and EBT benefits. Finding stores that accept these benefits can be challenging, especially in underserved areas with little tech access. SNAPMap aims to make this process easier by providing a simple, user-friendly solution for these communities to quickly locate nearby grocery, convenience, and food stores that accept SNAP and EBT across the U.S.
What it does
: SNAPMap helps users find grocery, convenience, and food stores across the U.S. that accept SNAP and EBT benefits. The app allows users to input a zip code and filter by store type, such as convenience stores, grocery stores, or supermarkets, to find locations near them. The interactive map visualizes the stores, making it easy to see where they can shop using their benefits. By providing this information in a user-friendly format, SNAPMap simplifies the process of locating SNAP/EBT-friendly stores, ensuring that users can easily access the food they need in their community despite economic and time hardships.
How we built it
: We built SNAPMap using a combination of Python for backend development and data handling, and JavaScript for the interactive map. We sourced the dataset of SNAP and EBT-accepting locations from the United States Department of Agriculture (USDA) and used geocoding services to map them accurately. For the frontend, we used a clean, responsive design to ensure easy navigation. The filter functionality allows users to input their zip code and select the type of store they’re looking for, making the experience personalized and efficient.
Challenges we ran into
: One of the main challenges was managing a large dataset and ensuring its accuracy and performance within the app. We also faced challenges in connecting the back-end which was written with JavaScript and the front end which was written with Python. Additionally, implementing a robust filtering system that provides accurate results without overwhelming the user with too many options required careful planning and testing.
Accomplishments we're proud of
: One of our proudest accomplishments is creating an intuitive and accessible tool that has the potential to make a real impact for individuals and families relying on SNAP/EBT benefits. We successfully built an app that is easy to navigate, allowing users to quickly find stores that meet their needs based on location and store type—making sure accessibility is no longer a barrier. We’re also proud of the seamless integration of our interactive map and filtering features, which required handling a large dataset while ensuring a smooth user experience. Despite initial challenges, we were able to implement a user-friendly interface that works well without compromising on functionality or speed. Overall, we’re proud that we turned an idea into a functional, impactful app that addresses a real need in underserved communities.
What we learned
: Throughout this project, we learned a lot about the complexities of mapping large datasets, working with geolocation tools, and managing user input for effective data filtering. We also learned how to ensure that a front end and back end can communicate with each other despite being written in different languages. Additionally, we gained valuable insight into the importance of clean data, usability, and providing a seamless user experience, particularly for audiences that may not be tech-savvy.
What's next
: Looking ahead, we plan to expand SNAPMap’s features by introducing meal planning ideas based on the food available at stores that accept SNAP and EBT. Users will be able to see suggested meal plans tailored to their dietary preferences and the types of stores they’re searching for. By integrating data on available food items, SNAPMap could provide budget-friendly, nutritious meal options that align with SNAP benefits, making the shopping experience even more convenient and empowering users to make informed decisions about their food choices—-and making life easier for communities disadvantaged with economic and time constraints.
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
- HTMLIn code
- JavaScriptIn code
- PythonIn code
- ReactIn code
- FlaskClaimed
5 of 6 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
34 KB
Source files
22
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
pdugar02/SNAPMap
41 files · 1.4 MB · @ 4d28c80
Structure
Application logic
15 files · 37%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
- JavaScript48%
- CSS23%
- Markdown19%
- Python5%
- HTML4%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
frontend/package.json
npm · 7- @testing-library/jest-dom
- @testing-library/react
- @testing-library/user-event
- react
- react-dom
- react-scripts
- web-vitals
react-here-map/package.json
npm · 7- @testing-library/jest-dom
- @testing-library/react
- @testing-library/user-event
- react
- react-dom
- react-scripts
- web-vitals
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.
Feature verification
Flask backend with CORS-enabled APIVerified
Built with Python for backend development and data handling, communicating with a JavaScript frontend
Claimed on Devposthigh confidencebackend/app.py:5— Flask app with flask_cors CORS(app) enabled and a /api/stores route serving JSON to the JS frontend
Interactive map visualization of store locationsVerified
The interactive map visualizes the stores, making it easy to see where they can shop
Claimed on Devposthigh confidencefrontend/src/App.js:16— Initializes a HERE Maps platform/map instance and updateMapMarkers adds a Marker per coordinate returned from the backend
Zip code search for SNAP/EBT storesVerified
Users enter a zip code to find nearby SNAP/EBT-accepting stores
Claimed on Devposthigh confidencebackend/app.py:14— GET /api/stores reads zip_code query param and filters SNAP dataframe by Zip Code columnfrontend/src/App.js:82— handleSearch fetches /api/stores?zip_code=... and populates coordinatesList from the response
README project documentationCode-supported
README describing SNAPMap
Claimed on readmehigh confidenceREADME.md:1— README exists but only contains the title 'SNAPMap' with no further documentation
USDA SNAP/EBT dataset with geocoded locationsCode-supported
Dataset of SNAP/EBT-accepting locations sourced from USDA and geocoded
Claimed on Devpostlow confidencebackend/app.py:9— Loads SNAP.csv into a Pandas DataFrame with Latitude/Longitude/Zip Code columns consistent with a geocoded USDA-style dataset, but the CSV file itself is not present in this clone so its content/provenance can't be confirmed
Filter by store type (grocery, convenience, supermarket)Claimed only
Users select store types such as grocery, convenience stores, or supermarkets to filter results
Claimed on Devposthigh confidenceMeal planning based on available SNAP/EBT store food itemsClaimed only
Future plan to introduce meal planning ideas based on food available at SNAP/EBT stores
Claimed on Devposthigh confidenceReact Native mobile frontendClaimed only
Built with react-native (per Devpost Built With tags)
Claimed on Devposthigh confidenceSQLite databaseClaimed only
Built with sqlite (per Devpost Built With tags)
Claimed on Devposthigh confidence
An AI agent derived these features from the project’s Devpost page and readme, then searched the code for each one. Verified features are backed by cited code; claimed-only features had no supporting code, which is not by itself proof a feature is missing.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.