Inspiration
Our inspiration for Nova was to create an accessible way for parents and children to discover STEM opportunities near them, especially families who rely on free, publicly funded programs. Many students miss out on hands-on STEM experiences because they may not know what opportunities are available in their community.
Nova was built to help students and families discover hands-on STEM opportunities, one ZIP code at a time.
What It Does
Nova is a web app that allows users to enter their ZIP code and discover nearby STEM opportunities.
Families can browse real NYC after-school programs, explore programs by subject and grade level, and use a map-based search to find opportunities near them.
Helping NYC families discover hands-on STEM programs, one ZIP code at a time.
This included a multipage webpage, map, and chat bot to assist parents with finding their children a suitable after school program.
How We Built It
We built Nova as a web app using TypeScript, JavaScript, and CSS. We started with a Figma prototype and a ZIP-code-based search experience, then replaced the sample data with real NYC OpenData.
Every program on the site is real: we currently include 565 city-funded K–5 after-school programs from NYC OpenData, along with NYC DOE school location data.
We built program cards with filters for:
- Free programs
- Grade range
- Programs located inside schools
- STEM subjects such as coding, robotics, and science
We also built a Google Maps program finder with ZIP-code search, a “Locate Me” feature, and program filters.
A major part of Nova is our enrichment pipeline. NYC OpenData does not provide many of the details families actually need, such as program websites, activities, or photos. We built a seven-stage pipeline that identifies each provider's website, verifies that it belongs to the correct organization, crawls the site, and extracts relevant subjects and photos. So far, this process covers 95 of 111 providers.
The platform also includes an AI chatbot that users can interact with through text or voice. It can answer questions about Nova, including information about its programs, offerings, and distance-related information. The chatbot supports around 20 different languages, making it accessible to a wider range of users.
We also built an evidence-based system for program information. Subject tags are supported by exact sentences from the provider's own website, while a program is labeled “Free” only when DYCD explicitly identifies it as free.
For photos, we prioritize images from providers' own websites. When stock photos are used, they are clearly labeled and credited. We also manually reviewed images and rejected 138 low-quality or irrelevant images, including logos, flyers, and unrelated events.
Our data pipeline is supported by 138 automated tests to help maintain data quality.
Challenges We Ran Into
One of our biggest challenges was finding accurate and up-to-date information beyond what NYC OpenData provides. Program listings often lack details that are important to families, such as activities, subjects, websites, and photos.
This led us to develop our enrichment pipeline so that we could supplement public data with information directly from program providers while avoiding unsupported assumptions.
Another challenge was finding appropriate photos. We wanted families to get a better sense of what programs offer visually, but many organizations do not provide reusable images. We therefore prioritized provider-owned images and clearly labeled stock photography when necessary.
Accomplishments We're Proud Of
- Designing a clean, parent-first interface that takes users from entering a ZIP code to discovering real programs with minimal friction.
- Building a visual program experience that makes it easier to understand what opportunities are available instead of presenting families with a block of text.
- Creating an enrichment pipeline that transforms basic public datasets into more useful, family-friendly program information.
- Building an evidence-based data system where program information is supported by provider sources rather than guesses.
- Creating a Google Maps-based program finder with ZIP search, location detection, and filters. Building a Grok-powered chatbot with voice capabilities to support users across a wider range of languages. Establishing a visual brand identity, including the Nova logo and teal-and-orange palette, that feels warm and approachable.
- Building a foundation for future partnerships, sponsorships, and program-director participation.
What We Learned
We learned that sourcing and validating real-world program data can be one of the hardest parts of building a product like Nova. Public datasets can provide a strong foundation, but they often do not contain the information users actually need.
We also learned how to design for a non-technical parent audience by using minimal text, clear calls to action, and a visual-first layout.
Working with geospatial data taught us how to use ZIP centroids, distance-based searching, and interactive maps to make location-based discovery more intuitive.
Most importantly, we learned the importance of not guessing when presenting information to users. When data is unavailable, Nova is designed to say so rather than present an assumption as fact.
What's Next for Nova
We hope to expand Nova to reach more students and families across NYC.
Our next steps include expanding our coverage of schools and STEM programs, continuing to enrich program information, allowing program directors to manage and submit their own listings, and expanding our program-matching features.
We also want to further develop Nova's “Ask About Programs” chat experience, making it easier for families to ask questions and find STEM opportunities based on their location, interests, and needs.


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