
TherapyFans
Anonymous Therapy, Verified Trust
Demo
About
The problem it solves The Problem It Solves Mental health therapy is a deeply personal process, but many people avoid seeking help due to fear of stigma, privacy concerns, or the discomfort of sharing sensitive personal details with strangers. Traditional therapy platforms often require real-world identity verification, store personal data, and involve payment methods that link sessions directly to a user’s identity. This creates barriers, especially in communities where discussing mental health is taboo. Our platform solves this by leveraging Sui blockchain’s zkLogin and Kiosk system to enable truly anonymous therapy sessions. Users can sign up, book, and pay for therapy without revealing their name, email, or credit card information—only cryptographic proofs and session NFTs are involved. This anonymity doesn’t just protect the client—it also safeguards therapists who may want to offer their services without public exposure, such as professionals in restrictive regions or those supporting sensitive topics. By tokenizing therapy sessions as soulbound NFTs stored in a personal Kiosk, we enable: Anonymous booking & payment – No sensitive payment records or platform-stored personal info. Verified but private therapist profiles – Credentials can be proven without revealing real-world identity. Secure, immutable proof of sessions – Session ownership exists on-chain without revealing who the owner is. In short, the platform lowers the psychological and social barriers to accessing mental health support, while creating a trustless, privacy-first marketplace for therapy.
How it's made
Challenges we ran into Brief Challenges Summary 1. Smart Contract Integration Package ID Issues: Format validation and deployment problems across environments BigInt Handling: JavaScript overflow and serialization issues with large SUI amounts 2. zkLogin Authentication OAuth Setup: Complex Google OAuth configuration and token handling Wallet Routing: Dynamic routing and state management for zkLogin addresses 3. Database Management Foreign Key Errors: Constraint violations when creating profiles without wallet address validation Data Mapping: Complex mapping between blockchain data types and frontend interfaces 4. Kiosk Integration Ownership Models: Confusion between kiosk-based vs direct NFT ownership patterns Data Extraction: Difficulties retrieving and parsing kiosk objects from Sui blockchain 5. Payment System SUI Integration: Complex payment processing with smart contract Transaction Tracking: Issues with status monitoring 6. Frontend Development State Management: Complex handling of wallet connections and authentication states Real-time Sync: Challenges with data synchronization between Supabase and frontend 7. Testing zkLogin Testing: Difficulties testing OAuth flows Blockchain Mocking: Complex simulation of smart contract interactions 8. Architecture Authentication: Supporting zkLogin Schema Design: Flexible database design for multiple authentication methods 9. Integration Multi-Provider: Managing Google API Cross-Platform: Ensuring consistent functionality across browsers and devices 10. User Experience Onboarding: Creating simple flows for blockchain-naive users Error Handling: Graceful recovery from complex technical failures