Skip to content
All work

Founder · Product, design and engineering

Karma Plus

People log good deeds they did or witnessed, and together they fill an anonymous heatmap. Web and mobile share one design system, and Claude Haiku checks each submission before it goes live.

  • Design thinking
  • Next.js
  • Expo
  • Supabase
  • Claude API
Role
Founder, product, design and engineering
Platforms
App on iOS, Android and web; dashboard for organizations
Stack
Next.js, Expo, Supabase, Vercel, Zod, Claude API
Languages
English and Spanish

Overview

Karma Plus lets people log good deeds they did or saw someone else do. Every deed lands, without names, on a shared heatmap, so anyone can see kindness happening around them.

It also works with organizations. They create events people can join and manage them from their own dashboard.

The Karma Plus Try it page: the live mobile app running inside a phone frame, next to a short description of the product
The live mobile app running in the browser on the Try it page. The app itself is showing in Spanish, one of its two languages.

I started it for my daughter. I want her to grow up in a world where you do not have to guess whether good deeds happen. You can find them, get inspired by them, and build a better community along the way.

Three phone screens from Karma Plus: the Log a Good Deed sheet with deed types, the heatmap over Montevideo, and the Achievements screen with own and witnessed counts and progress to the next badge
The core loop in the app: log a deed in a few taps, see it on the heatmap, and watch your own count grow.

Understanding the problem

I followed a design thinking loop: empathize, define, ideate, prototype and test. The goal was an app people would open for a few seconds, feel good about, and trust with what they share.

I started with the people closest to me and shared the idea with family and friends. The problem fit in one sentence: there are not enough visible good examples in the world for my daughter to grow up with.

Product decisions

The decision: beyond individual deeds

Logging good deeds on its own felt too indie to keep the app alive. I opened it to organizations: they create events people can join, and they manage them from their own dashboard. That gives the community a reason to come back and gives the project real partners.

Trust shaped most of the product. A deed is personal, so the map shows where and what, never who.

Three phone screens from Karma Plus: the heatmap opt-in explaining the location exchange, the witnessed deeds map with no names or profiles, and Settings with a Share on Heat Map switch
Location is opt-in and explained up front. The map shows kindness, not people, and sharing can be turned off at any time.

The decision: not a social network

Social feeds learn that anger keeps people engaged, so they serve more of it, and we get angrier in the process. Karma Plus is not built as a social network. Deeds are anonymous to other users, so the app rewards the good deed, not the person posting it. There are plenty of platforms for sharing your ego.
  • In 2.7 million Facebook and Twitter posts, each word about a political out-group raised the odds of a share by 67%.
  • Each moral-emotional word in a tweet raised its spread by about 20%.
  • People who got likes and retweets for outrage expressed more outrage in later posts.
  • Facebook weighted emoji reactions, angry included, five times more than a like. Its own data scientists later found that posts drawing angry reactions were more likely to carry misinformation and toxic content.

The decision: privacy by design

Organizations that run events see aggregated numbers, not people. Only users who join an event share their email, and they are asked first. Data from people who did not take part is never shared.
  • Bilingual in English and Spanish, including the store listings.
  • Account deletion is simple and public: a bilingual page explains how to request it.
  • A custom UI kit and brand tokens, used all the way to the App Store screenshots.

Where AI fits

In the product

Claude Haiku reviews each deed before it reaches the map, so what shows up on the heatmap stays real and kind.

In the workflow

Claude Code works from one authoritative ruleset shared across tools. I also compared codebase indexing options and kept the native TypeScript language server as the default.

The decision

I decide what the model is allowed to judge and what always needs a person. The rules, the data model and the release calls stay with me.

Engineering

  • Next.js for the dashboard organizations use, and Expo for the app on iOS, Android and the web, with Zod for validation.
  • Supabase for data and auth, with daily database backups running on GitHub Actions.
  • EAS Build for store releases on both platforms.
  • Vercel hosts both the organizations dashboard and the web version of the app.

Where it is today

Karma Plus is live on iOS and on the web, and in closed testing on Android. Organizations can already create private events.

Next case study

AI Toolkit

Sets up Claude Code on any repo: it maps the project, pins what works today as a baseline, and generates the agents, hooks and skills to build new features without breaking old ones.