Inspiration 🌟

Girls face persistent stereotypes and subtle messaging from an early age suggesting they are “bad at math” or not suited for technical fields. Research shows that by age six, children already perceive boys as better at STEM, especially in fields like computer science and engineering (Frontiers in Psychology). Even when performance is equivalent to peers, these messages erode confidence, increase anxiety around problem-solving, and contribute to disengagement from STEM. Chronic self-doubt can lead to burnout, with girls’ engagement in computer science dropping from 44% in middle school to 33% in high school (Frontiers in Psychology).

Research on learning interventions shows that structured reflection improves academic outcomes and learning strategies, helping students regulate their learning and deepen understanding (Child Development, Oxford Academic).

Our project, GirlMath ✨, reclaims the term often used humorously to suggest girls are “illogical” in math. Instead, we highlight that what is labeled as “girl math” reflects hidden emotional labor and cognitive strain. By tracking and supporting this mental load and encouraging reflection on learning experiences, we aim to help girls build confidence and resilience in STEM on their own terms.

The inspiration came from the Girl Guides speaker who shared her experience during this hackathon, growing up being told that “girls aren’t good at math” and how that shaped her confidence for years. She spoke about how mentorship later in her career helped her unlearn those beliefs and regain confidence in her abilities.

What Our App Does 🚀

GirlMath empowers girls in STEM subjects through personalized tracking, journaling, and AI-powered insights. Daily journal entries, reflecting on progress, and developing meta-cognition to improve confidence, motivation. The app combines four key elements:

  1. Daily Questionnaires 📝: Short self-checks track confidence (1–5), motivation, perceived difficulty, emotional state, and learning goals. These help users reflect on patterns and make progress more visible over time.

  2. Progress Visualizations ✨: Constellation mind-maps and trend graphs provide clear visual feedback, helping users see growth at a glance.

  3. AI Chatbot 💬: Optional AI analyzes journals and responses to generate weekly reflections and suggest strategies for overcoming challenges.

  4. Journaling 📓: Users write reflections on goals, progress, and setbacks. Optional prompts guide deeper thinking about what and how they learned.

By combining these elements, GirlMath addresses both cognitive and emotional barriers, helping girls build confidence and a sense of belonging in math and technical fields.

How We Built It 🛠️

GirlMath was developed as a mobile-first application optimized for middle school to early high school users.

Stack

React Native (JavaScript / TypeScript) + Expo — used to build the entire mobile interface, including login, journaling, sliders for confidence tracking, and interactive constellation views. Expo allowed rapid iteration and cross-platform support.

Figma — used to design the UI/UX system, including layout, colour palette, and the constellation-themed night mode.

Python FastAPI — served as the main backend, handling authentication, data processing, and all API endpoints between the app and the database.

MongoDB — used to store user accounts, journal entries, questionnaire responses, and historical learning data.

Gemini API — used to generate personalized guidance and summaries by analysing patterns across a user’s past reflections and check-ins.

DigitalOcean — hosted the backend and database, making the system device-independent and scalable for future web expansion.

Architecture Overview

  • We split our codebase into two separate GitHub repositories — one dedicated to the frontend React Native app (user interface, mobile experience) and one dedicated to the backend Python API (server logic and data operations). This separation lets us independently evolve user interface features and backend logic over time.
  • Frontend: Built in React Native in the repo at nomix21/ellehacks26, this handles all user interaction and mobile UI.
  • Backend API: Built in Python in the repo at emtato/girlmath, this provides REST endpoints and handles cloud server and database operations, including advanced functionality not yet surfaced in the frontend.

What We Accomplished in 24 Hours ⏱️

  1. Designed the user experience in Figma and implemented a mobile-first interface using React Native with Expo.
  2. Built a modern full-stack architecture with a Python FastAPI backend, MongoDB for persistence, and Gemini for personalized AI guidance, all deployed on DigitalOcean.
  3. Connected everything end-to-end to deliver a fully functioning app, including authentication, data storage, and AI-powered insights.

Challenges We Ran Into ⚡

  • Due to this being our first project using a modern frontend framework, we weren’t able to implement every planned visualization within the hackathon timeframe. Still, we successfully built a fully functional end-to-end system, and backend for a lot of the planned features is already functional!
  • Balancing privacy and functionality: ensuring AI could provide meaningful insights without compromising user data.
  • Mapping complex emotional and cognitive patterns from questionnaires and journals into actionable AI guidance.

Accomplishments We're Proud Of 🏆

  • Creating a tool that reframes struggle as a normal, valuable part of learning for a demographic that is often underrepresented and overlooked.
  • Building a visually engaging, night-themed interface 🌙 that aligns with the journaling habit and target audience.
  • Learning and integrating multiple new backend technologies for the first time, including cloud deployment, databases, and custom API endpoints.

What We Learned 🤓

  • Visualization of progress can dramatically improve self-perception and meta-cogn ition.
  • Balancing engagement, privacy, and meaningful feedback requires careful design decisions, particularly for younger audiences.
  • Your head tends to hurt if you stay up too late ☹️

What's Next for GirlMath ✨

Future development will expand on personalized support and community features:

  • Finalizing MVP features, including constellation maps, AI-generated summaries for progress at a glance, and richer data visualizations.
  • implement auth properly in FastAPI; hash passwords, store only the hash in MongoDB
  • Connecting users to specialized mentors and teachers 🤝.
  • Implementing thoughtful feedback and engagement loops to encourage long-term use without relying on shallow gamification.

Sponsor Prizes 🤑

Best Use of Gemini API

  • Used Gemini to generate deeply personalized and contextual guidance based on users’ past quiz responses and journal entries, rather than isolated prompts.
  • Designed prompts to summarize long-term learning patterns, emotional themes, and confidence trends, positioning AI as an additional tool rather than the core focus of the app.
  • Implemented user-controlled data access, allowing Gemini to operate only on the information the user explicitly shares.

Best Use of MongoDB

  • Used MongoDB to store structured user data, including authentication info, journal entries, questionnaire results, and historical learning records.
  • Designed flexible schemas to support evolving features such as constellation maps, weekly summaries, and AI-generated insights, and custom items in user's logs.

Best Use of DigitalOcean

  • Deployed the full backend on DigitalOcean, including FastAPI services and database connections.
  • DigitalOcean hosting enabled a clean separation between UI and application logic: React Native handles the experience, while FastAPI centralizes business rules and gemini/database orchestration, keeping the client lightweight and secure.
  • Designed the infrastructure so that the same backend can support multiple clients (mobile and future web), allowing features to be extended without rewriting core logic.

Although not publicly released, GirlMath is a fully functioning product with most core MVP features implemented end-to-end.

Share this project:

Updates