Project Info
Inspiration
Ever since high school, I've been passionate about expanding contraceptive options, particularly for men. I was driven by the belief that everyone, regardless of their sex or gender, should have the power to make informed decisions about family planning and reproductive autonomy. This led me to dive into the development of a non-hormonal male birth control pill. While working in a lab focused on creating a pill that could impact sperm motility, I stumbled upon a sobering realization: the reverse of contraceptive development is infertility. This revelation hit me hard when I learned that 15% of couples in the U.S. today are facing infertility issues—and more than half of these cases are due to male infertility. What's even more troubling is the fact that sperm counts have halved in the last 40 years, yet the conversation around male infertility remains largely under the radar. We wanted to create a fun and engaging way for males to stay proactive about their sperm health. If so far everything that we've tried to get males to track their fertility has failed, then if the one thing that will get them to do so is the male ego, then so be it.
What it does
Stream is an AI agent that empowers males to improve their sperm health. Users upload a video of their sperm, which undergoes a YOLO model to identify sperm in different frames and gather their average sperm count and sperm motility score. The AI agent then users their sperm metrics to provide personalized recommendations and award them with NFTs (bronze, silver, gold) based on their sperm health. Users strive to earn the Gold NFT to wear as a badge of honour of their health.
How we built it
Our approach involved leveraging a YOLO (You Only Look Once) pre-trained deep learning model to analyze microscopic video footage of sperm, which had been captured and developed by researchers at the Simula Metropolitan Center for Digital Engineering in Oslo in 2023. By using this model, we could identify sperm counts and score sperm motility, a key aspect of male fertility. We used the EigenLayer AI agent kit to create our AI agent and verify off-chain data (sperm metrics) and bring on-chain. We used React to build the frontend, so that users can upload their sperm videos, track their history, and see how they compete with others on a leaderboard.
Challenges we ran into
We encountered a lot of challenges with setting up the EigenLayer AI agent kit since the packages were only built for Mac (not Windows or WSL), and there was limited documentation on how to further customize the agent. None of the members on the team have experience with Yolo algorithm and EigenLayer so it was challenging for us to figure out in 10 hours. We didn't have React experience either on frontend, but we managed to build an app overnight!
Accomplishments we're proud of
As a beginner hacker team, we're proud of being able to run the deep learning CV model YOLO on the sperm videos to accurately track sperm metrics, successfully run the EigenLayer AI agent kit, and create a frontend successfully connected with the backend so users can connect their own wallet and upload their own sperm videos.
What we learned
While these obstacles were tough, they also provided invaluable learning opportunities. We discovered how to integrate deep learning computer vision models with Large Language Models (LLMs), creating a seamless fusion of artificial intelligence that could track sperm motility while also interacting with users in a meaningful way. We also learned how to work with EigenLayer to create our own AI agents.
What's next
We plan on making the AI agent even more powerful by being able to bring off-chain health data on-chain to get a richer health history and make more informed recommendations, integrating wearable tech to consistently monitor biometrics and other health markers, booking telehealth consultations or fertility appointments, and placing orders for sperm health supplements.
sperm
note: run these commands in their respective folders
- start frontend:
npm run dev - start eigen agent:
npm run dev - start backend:
python3 sperm.py
Analysis
View
Metric
- 22
- 7
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
- FastAPIIn code
- HTMLIn code
- JavaScriptIn code
- PythonIn code
- PyTorchIn code
- ReactIn code
- SolidityIn code
- TypeScriptIn code
10 of 10 appear in the indexed code.
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
131 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
friendly304010/stream
93 files · 91.7 MB · @ 657cf38
Structure
Interface
1 file · 1%Screens, components and styles rendered to the user.
Application logic
44 files · 47%Domain rules, services and shared utilities.
+1 more
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
- YAML53%
- JavaScript12%
- Markdown11%
- TypeScript10%
- Python7%
- CSS6%
- Other (2)1%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
eigen-agent/package.json
npm · 18- @layr-labs/agentkit
- @layr-labs/agentkit-eigenda
- @layr-labs/agentkit-opacity
- @layr-labs/agentkit-witnesschain
- cors
- dotenv
- eigenda-sdk
- express
- +10 more
frontend/package.json
npm · 14- axios
- react
- react-dom
- recharts
- +10 more
backend/requirements.txt
pypi · 10- fastapi
- gitpython
- huggingface-hub
- numpy
- opencv-python
- python-multipart
- setuptools
- torch
- ultralytics
- uvicorn
hardhat/package.json
npm · 44 development-only dependencies.
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.