See it in action
Marco's faucet is leaking. Here's what he does.
A real walk-through of finding a plumber in your neighborhood — without spending a cent, without a marketplace commission.
- 1
Searches for a plumber
What do you want to learn or get done?plumbing|🔧 Plumbing (ESCO 7341)🪛 Home repair🚿 Faucet fixMarco opens SwapHours in Alfama, Lisbon. Types 'plumbing' in the skills he needs.
- 2
AI matches 3 neighbors
Paulo M.Plumbing · 12 y0.4 km★ 4.9wants Python tutoring ← you offer itRita F.Plumbing & home repair0.8 km★ 4.7wants guitar lessonsTiago S.Plumbing · 6 y1.1 km★ 4.8wants Portuguese historyWithin seconds, Claude suggests 3 people nearby who offer plumbing skills and want something Marco offers in exchange.
- 3
Reads the grounded 'why'
Paulo M.demo.scenes.3.explanation
✓ Verified ID🏆 Top neighborEvery match comes with a citation-checked explanation. No hallucinations — every fact links to a data source.
- 4
Requests 1 hour
Session proposalwith Paulo M. · Plumbing · 12 y · 1 hourSat 27 Apr · 10:00●Sat 27 Apr · 14:00○Sun 28 Apr · 11:00○Marco hits 'Request an hour'. Paulo gets a push. They schedule Saturday morning in Marco's kitchen.
- 5
They meet · faucet fixed
Session completedDuration50 minBoth confirmed✓ ✓TimeCredit · Marco− 1.0 hTimeCredit · Paulo+ 1.0 hPaulo fixes the faucet in 50 minutes. Both confirm completion in-app. 1 TimeCredit moves from Marco to Paulo.
- 6
The loop continues
Paulo's next matchDiana V.Python · data science0.3 km★ 4.8wants basic plumbing → you offer itZero money moved. Three neighbors met. Two skills taught.
Paulo spends his new credit learning Python with a 22-year-old dev two streets away. The whole neighborhood gets more capable.
What we believe
Why SwapHours works
AI semantic matching
Jina embeddings + Claude reasoning pair you with 3-5 neighbors weekly. No scrolling marketplaces.
TimeCredit economy
1 hour given = 1 TimeCredit earned. Spendable on any skill, from Python tutoring to urban gardening.
Trust by design
KYC light, skill-proof video, bidirectional reviews. Every match explained with grounded citations.
Impact native
Hours, pairs, CO2 saved, intergenerational ratio — exported to B Impact Assessment day one.
The loop
How it works
- 1
Verify once
KYC light via Sumsub, pick your city, add skills you offer and want.
- 2
Get matched
AI proposes 3-5 neighbors every Sunday with a grounded "why" explanation.
- 3
Meet & trade
Schedule an hour, meet in person, confirm completion — TimeCredits settle.
- 4
Review & grow
Leave a review, watch your trust score rise, spend credits on new skills.
Pricing
Simple pricing
TimeCredits stay free — always. Pay only for richer AI, faster matches, and hosting perks. Every plan starts with a welcome-bonus gift of hours to break the ice.
Neighbor
- 3 AI matches per week
- Moderated chat & reviews
- KYC verification
- TimeCredit balance
- Basic impact dashboard
Citizen
- Everything in Neighbor
- Unlimited AI matches
- Daily priority queue
- Richer match explanations (Claude Sonnet)
- Monthly AI impact narrative PDF
- Conversational onboarding chatbot
Host
- Everything in Citizen
- Visible Host trust badge
- Guest hosting privileges
- 2× match priority
- Early access to city events
- Direct support line
🛠 Dev quick-links · sign in to access
All routes call the real backend (Postgres + Prisma). AI matching runs in stub mode until ANTHROPIC_API_KEY + JINA_API_KEY are set — until then Claude returns templated output and Jina uses deterministic hash vectors.