Soldeed Mobile
React Native app for a Web3 jobs marketplace
A React Native (Expo 54) app for Soldeed, a Solana/Web3-adjacent jobs marketplace — a crypto/web3 job board in your pocket, pairing traditional OAuth with native Solana wallet auth and Stripe payments for job-posting monetization.
React NativeExpoTypeScriptSolanaStripeTanStack QueryZodReact Hook Form
Core structure
- Navigation — a stack navigator (auth flow + modals like JobDetail, Company, PostJob, Payment) wrapping a 7-tab bottom nav: Home (Jobs), ClawJobs, Companies, Saved, Bounties, Grants, Profile.
- Auth — three ways in: Google OAuth, GitHub OAuth, and a Solana wallet (via Mobile Wallet Adapter, supporting Phantom/Solflare/Backpack). Sessions persist via expo-secure-store; OAuth uses a soldeed:// deep-link scheme for callbacks.
- Data layer — TanStack Query for server state (5min stale, 30min cache) against a Next.js backend, split into a public API client and a bearer-token'd authenticated one.
- Payments — a Stripe-based job-posting flow: logo upload, a server-created checkout session, Stripe Checkout in an in-app browser, and deep-link redirects back to success/cancelled screens.
- ClawJobs — a distinct tab of AI-aggregated job listings, separate from user-posted jobs.
- Theming — dark theme only (background #0a0a0a, purple primary #8b5cf6), plain StyleSheet, no styled-components.
Screens
14 self-contained screens — Auth, Home, JobsTab, ExploreTab, ClawJobs, Companies, Company, Bounties, Grants, SavedJobs, JobDetail, PostJob, Profile, and PaymentSuccess/Cancelled — each combining local UI state with React Query for server data.
Notable dependencies: @solana/web3.js, @noble/curves / @noble/hashes / tweetnacl for wallet crypto, @stripe/stripe-react-native, react-hook-form + zod for forms, and expo-notifications.