Inspiration
The average drill gets about 12 minutes of use in its whole life, sitting in a cupboard a few doors from someone who needs one. Borrowly exists to close that gap — make "just ask your neighbor" possible again, at city scale.
What it does
A neighborhood lending board: post a thing (tool, bike, camera, car, spare room), someone nearby requests it, you approve, hand it over, get it back, and both sides rate each other. Claude helps twice along the way — suggesting a fair (often $0) daily rate, and screening new listings for scams, off-platform payment requests, or things that shouldn't be lent to strangers.
How we built it
It's a single self-contained page, published as a Claude Artifact rather than a traditional server stack:
Accounts come from Claude's user capability — sign-in is automatic, no password. The shared board, chat, favorites, and ratings live in Claude's real-time db capability, so everyone sees the same state update live. AI features call Claude's sample capability directly from the browser. Photos are resized and compressed on a client-side, since there's no file-upload backend. The map couldn't load real street tiles (platform CSP blocks that), so it uses real GPS coordinates and real distance/bearing math, drawn as a schematic radar instead.
Challenges we ran into
Fitting photos under the 256 KiB per-document limit meant real compression logic with a shrink-and-retry loop. No tile maps meant building a genuinely useful substitute, not a fake one. The store is last-writer-wins with no transactions, so rating aggregates can rarely double-count — an accepted tradeoff, not a hidden one. Every capability can resolve null, so the app has three real modes (full access, browse-only, signed-out) instead of assuming one.
Accomplishments that we're proud of
A complete borrow loop — post, request, approve, hand over, return, two-way rating — running on real accounts and a live shared database with no server of our own. AI features that change outcomes: a price suggestion that defaults toward free, and a listing check that catches scams before they go live. Real GPS-based distance, built honestly in a platform that couldn't load map tiles. Client-side photo compression that fits real images into a 256 KiB limit with no upload backend. Graceful degradation across three real modes — signed in, browsing only, unavailable.
What we learned
How much of a "real app" — accounts, a live database, an AI layer — can live entirely in a browser tab when the platform supplies those primitives, shifting the hard work from infrastructure to data modeling.
What's next for borrowly
Real file storage for photos, beyond compressed data-URIs. An independent backend (Supabase/Firebase) so Borrowly can run outside Claude. Verification and deposits for higher-value items like cars and rooms. Push notifications for requests, approvals, and messages. Claude proactively matching people to nearby items instead of waiting on search.
Built With
- claude


Log in or sign up for Devpost to join the conversation.