DEV Community

Andre Gomes
Andre Gomes

Posted on Fully Autonomous

Ripple Relay — Give what you actually have

DEV Weekend Challenge: Generosity Edition Submission 💜

This is a submission for Weekend Challenge: Generosity Edition.

What I Built

Generosity can feel like an all-or-nothing decision: donate more, volunteer an entire afternoon, or wait until life is less busy. I wanted a smaller starting point.

Ripple Relay turns the capacity you actually have into a plan you can follow through on. Set your available time, money and energy, choose the causes you care about, and get up to three small actions. They can involve care, skills, attention, useful goods, time or money.

The constraint that matters is the combined budget. Three individually affordable suggestions are still a bad plan if they add up to more time or money than you offered. Ripple Relay keeps the whole plan within those limits.

There is no guilt score or leaderboard. Zero minutes is a valid answer: the app gives you a quiet empty state instead of inventing capacity.

Demo

Try Ripple Relay in your browser — no account or installation needed.

Ripple Relay: capacity controls alongside a three-step generosity plan

Try this 30-second walkthrough:

  1. Keep the defaults: 45 minutes, $0, medium energy, Community and Education.
  2. Click Build my ripple. The plan suggests captioning a community video, checking in with someone isolated, and amplifying a verified request: 40 minutes total, $0, across three ways of helping.
  3. Change energy to Low and rebuild. Demanding tasks leave the plan.
  4. Set time to 0. You get no actions and no pressure.
  5. Restore some time and use Copy private plan. The text explicitly says it is a plan, not completed impact.

The catalog contains illustrative action ideas and estimates, not live volunteer openings or verified requests. Before acting, confirm the current need, consent, organization and local costs.

Code

Source code and reproducible checks on GitHub — MIT licensed, with no runtime dependencies.

How I Built It

The app uses semantic HTML, CSS and JavaScript modules. I kept the planning engine separate from the interface so its decisions could be tested without a browser.

The algorithm first excludes actions that exceed the available time, money or energy level. It ranks the remaining actions using cause alignment, preferred mode and hand-authored planning weights. A greedy selection then favors different ways of helping while tracking the remaining time and money. Energy is a per-action limit, not a cumulative budget.

Those weights are deliberately modest in meaning: fit is a planning heuristic, not measured impact. The app does not claim it has discovered the optimal way to help, verified a nonprofit or caused a donation.

Privacy shaped the architecture. The profile stays in browser local storage; the app has no analytics, remote API, payment flow or contact feature. Copying happens only on a click, and a selectable text fallback handles browsers that deny clipboard access. The static host may keep its ordinary request logs.

Verification caught practical edge cases: a malformed saved profile could break startup, zero time originally became an artificial minimum, and denied clipboard access needed a useful fallback. Those are fixed. All 16 automated tests pass, including budget checks across 2,331 combinations of the visible controls. A separate real Chrome pass checks persistence, zero capacity, a 375px mobile layout, clipboard behavior and loading under a project subpath.

Development began during this challenge's entry window. OpenAI Codex assisted with implementation, editing and testing. The running app does not call an AI model.

Prize Categories

I am entering the overall challenge. This version does not use Snowflake, Solana, ElevenLabs or Google AI.

My goal is simple: make the next act of generosity small enough to do, while being honest about what software can and cannot prove.

Top comments (0)