Open Doors to an new world where networking rhymes with actual connection
This project is a decentralized professional networking platform designed to bring human memory and social signaling into Web3. The vision is simple: when two people meet in real life—at a conference, a coworking space, or casually at a bar—they should be able to remember each other, preserve that moment, and build trust over time without relying on centralized services or invasive social graphs. We focus on meaningful, IRL-based connections and let users build a reputation from the ground up based on real experiences and social validation—not likes or followers.
At the heart of the product is a feature called a “handshake.” When two people meet, one shares a QR code pointing to their address. The other scans it, fills out a memory form (a “Polaroid”) with a photo, note, event, and tags. This data is saved privately to each user’s personal vault, never broadcast publicly unless explicitly shared. Endorsements are then possible for up to four selected skills. These endorsements are anonymous and validated using on-chain group proofs inspired by Semaphore-like architecture. Once a skill receives enough endorsements, the user is marked as an “expert,” with a second layer of reputation tracking how many other experts endorsed them.
In addition, each user has a 4×4 "super endorsement" matrix—like a public social canvas—where others can “place themselves” as a lasting, soulbound endorsement. This matrix is visible on the user’s profile and works like a decentralized badge wall or signature board. Every contact is stored as a unique memory, enriched with event context, timestamp, and skills. Contacts can be filtered or grouped by skill, event, organizer, date, or tags. Each profile includes a public bio, avatar, and social links, stored either on IPFS or Privy.
The long-term goal is to replace business cards and generic professional profiles with rich, decentralized, human-first identity graphs rooted in real-world context. We aim to empower people to build reputation through presence and impact, not metrics. Privacy is preserved by design, with no global social graph. Connections are always opt-in, mutual, and self-sovereign.
The tech stack is fully decentralized and composable:
Together, these systems enable a Web3-native networking layer that is permissionless, memory-driven, and designed for the world we actually live in—one handshake at a time.
This project is a decentralized professional networking PoC focused on IRL connections, social memory, and trust-building without centralized networks. The flow revolves around a feature called a handshake, where two users meet in real life and exchange information by scanning QR codes. One user shares a QR linking to their address, the other fills a short “Polaroid” form capturing a note, photo, tags, and event metadata. That data is saved privately and optionally shared back via a second QR. The memory is stored privately in each user’s own vault, with no public trace unless explicitly shared. This allows for building a network of contacts that reflects real-world interactions, organized by skills, events, time, and context.
The PoC also includes basic on-chain skill endorsement and a public super endorsement matrix. Each user can highlight four skills. Other verified users can endorse them for these skills. If a skill receives enough endorsements (e.g. 100), it is marked as “expert.” Users can also place a soulbound super endorsement in a 4x4 matrix on a profile they admire. This builds a trust layer tied to visibility, not virality.
The tech stack is carefully composed to balance decentralization, privacy, and rapid iteration.
. self.xyz is used for unique identity verification without exposing private data . privy is used for encrypted, user-controlled data storage, including contacts and public profiles . web3.storage (IPFS) is used to upload Polaroid photos and optionally avatar images . hardhat is used to build and deploy the smart contracts on testnet, handling skills, endorsements, and the 4x4 super endorsement matrix . next.js is used for the frontend, with react and client-side routing . QR codes are used for the entire connection flow, enabling offline-compatible peer interaction . react-qr-reader and qrcode.react are used to scan and display handshake codes . the frontend uses react hook form for forms, and ethers or viem for contract interaction . privy.get and privy.put are used to read and write contact lists and public profile metadata . all metadata such as username, bio, avatar and links are optionally public, stored under public:profile . polaroid data is stored in privy under the key “connections” and consists of the note, timestamp, from, to, tags, and IPFS image . helper utils include encodePolaroid, decodePolaroid, ipfsToHttp, uploadToIPFS, and generatePolaroidId . endorsements are tracked on-chain, using a skillId (bytes32) linked to a skill name . each user has a mapping of skillId to Skill struct, and a fixed-size 4x4 array of SuperEndorsement . contacts can be browsed and grouped by event, organizer, month, or skill, all done client-side . all endorsement logic is user-triggered via contract functions and viewable via getSkills or getSuperEndorsedMatrix
The PoC validates that users can privately and efficiently capture real-world interactions, sort and search them, and build visible reputation over time. There is no backend or social graph server. Everything is either on-chain, encrypted client-side, or peer-to-peer via QR. This stack is optimized for testing the UX in real-world events, and can scale into more advanced identity and privacy systems in future iterations.