Recognition & rewards
Hearts: recognition for work that ships.
Contribute your skills to open-source projects for nonprofits, earn hearts for what you build and how you build it, and move through five tiers of recognition, from Bronze to Diamond.
How it works
Four steps from newcomer to community champion.
- 01
Choose a project
Browse open-source projects for nonprofits and pick one that matches your skills.
- 02
Contribute
Write code, design interfaces, gather requirements, or manage tasks. Every role counts.
- 03
Earn hearts
The more impactful your contribution, the more hearts you earn per category.
- 04
Level up
Advance from Bronze to Diamond, unlocking rewards and recognition along the way.
Tiers & rewards
Five tiers, one path.
Hearts add up across projects and events. Each tier unlocks a reward and community recognition, and you keep everything you earned on the way up.
Types of contributions
Two dimensions: what you build and how you work.
Hearts are awarded per category in each dimension, so a thorough contributor can earn hearts in several places from a single project.
What you build
Outcomes
- Productionalized projectsProjects that have been operationalized.
- Requirements gatheringWorked with nonprofits to capture what they need.
- DocumentationWrote docs for developers and nonprofits.
- Design architectureDiagrams: sequence, deployment, ERD, etc.
- Code quality
- Unit test writing
- Unit test coverage
- ObservabilityAdded monitoring (USE, RED) to software.
- JudgingJudged other people's work.
- MentoringMentored other people.
How you work
Practices
- Standups completedProvided updates and communicated to the team.
- Code reliabilityCode doesn't crash and stays available.
- Customer-driven innovationConversations with customers to drive product decisions.
- Production iterationsIterated on the final product.
Scoring guide
How many hearts a contribution earns
Each contribution is scored on a 0.5–2 heart scale per category. These criteria are flexible guidelines, not rigid rules. Opportunity Hack keeps discretion when awarding hearts: context, creativity, and real-world impact matter more than checking boxes.
Read more about project completion0.5 hearts per categoryPartially met goalCriteria ▾
What: Partial completion — code complete but not in production, partial docs, under 50% architecture or observability coverage, lint warnings or outstanding PRs.
How: At least one standup, code has errors or is slow, spoke to the customer once, pushed code once.
What you build
- Productionalized projectsCode complete, but not pushed to production
- Requirements gatheringRequirements not fully collected
- DocumentationDocumentation not fully completed
- Design architecturePartial architecture — less than 50% of overall system
- Code qualityP0-level lint warnings, errors or security bugs, outstanding PR comments
- Unit tests writtenSome unit tests improved
- Unit test coverageCoverage less than 50%
- ObservabilityLess than 50% of the system instrumented with decent logging
How you work
- Standups completedAttended at least 1 standup
- Code reliabilityCode not consistently reliable — errors, >10s load times, obvious bugs
- Customer-driven innovationSpoke to customer at least once
- Production pushesPushed code to production at least once
1 heart per categoryMet goalCriteria ▾
What: More than 90% completion across all categories.
How: 3+ standups, reliable error-free code, 3+ documented customer interactions, 3+ production pushes.
What you build
- All 0.5-heart criteriaBut with more than 90% completion
How you work
- Standups completedAt least 3 standups
- Code reliabilityWorks without errors, loads under 10 seconds, no obvious bugs
- Customer-driven innovation3+ customer interactions with documentation
- Production pushesPushed code at least 3 times
1.5 hearts per categoryExceeded goalCriteria ▾
What: 100%+ completion, delivered 25% faster than expected.
How: 8 standups, fault-tolerant code reliable over a week, 8 customer interactions, 8 production pushes.
What you build
- 100%+ completionDelivered 25% faster than expected
How you work
- Standups completed8 standups
- Code reliabilityFault tolerance, retries, caching — reliable over 1 week
- Customer-driven innovation8 customer interactions
- Production pushes8 pushes
2 hearts per categoryGreatly exceeded goalCriteria ▾
What: 100%+ completion, delivered 50% faster than expected.
How: 15+ standups, outstanding reliability over two weeks, 15+ customer interactions, 15+ production pushes.
What you build
- 100%+ completionDelivered 50% faster than expected
How you work
- Standups completed15+ standups
- Code reliabilityOutstanding reliability over 2 weeks
- Customer-driven innovation15+ customer interactions
- Production pushes15+ pushes
At events
Earn hearts as a judge or mentor.
Beyond hacking, you can earn 1 heart per 3-hour block by judging or mentoring at an Opportunity Hack event.
Recognition in action
What a heart looks like

Where this came from
Get started
Ready to start earning hearts?
Pick a nonprofit project, ship something real, and our team recognizes the work. Already contributing? Your hearts and tier live on your profile.
