Inspiration
Skillsy was inspired by the barter economy concept applied to modern skill-sharing. The traditional education and mentorship models often have barriers like high costs, limited access, or inflexible payment systems. We wanted to create a fair, credit-based ecosystem where everyone can both teach and learn, removing financial barriers while incentivizing knowledge sharing. The idea was to build a platform that democratizes learning by allowing users to earn what they teach and spend what they learn, creating a sustainable, community-driven skill exchange marketplace.
What it does
Skillsy is a full-stack skill trading platform that enables users to:
Dual-role switching: Toggle between Learner and Mentor modes with different interfaces for each role Profile management: Create comprehensive profiles with skills (teaching/learning), certifications, and achievements
Smart search: Find mentors by searching for specific skills, names, or expertise areas
Connection system: Send and manage connection requests between learners and mentors
Real-time chat: Communicate with connected users through live messaging powered by Supabase Realtime
Credits economy: Start with 10 free credits upon signup Earn credits by mentoring sessions Spend credits to learn from mentors Support tips for exceptional mentors Complete transaction history tracking
Session management: Schedule, track, and complete learning sessions with automatic credit transfers
Mentor settings: Configure minimum session credits, tip preferences, and availability status
Theme support: Light/Dark mode toggle for user preference
How we built it
Tech Stack:
Frontend: Next.js 14 (App Router), React, TypeScript, Tailwind CSS Backend: Python FastAPI Database: Supabase (PostgreSQL) with Row Level Security (RLS) Authentication: Supabase Google OAuth Real-time: Supabase Realtime for instant messaging Deployment: Vercel (frontend), Render/Railway (backend)
Architecture:
-Monorepo structure with separate frontend and backend folders -10 database tables: profiles, user_skills, certifications, achievements, credits, credit_transactions, connections, sessions, messages, mentor_settings -Automated triggers: Auto-creation of user profiles and initial credits on signup -Database functions: Credit increment/decrement with transaction logging -RLS policies: Secure data access at the database level -RESTful API: FastAPI backend with CORS configuration -Server-side rendering: Next.js 14 with App Router for optimal performance
Challenges we ran into
1.Real-time messaging complexity: Implementing Supabase Realtime subscriptions with proper message ordering, read receipts, and auto-scrolling required careful state management and cleanup logic. 2.Credits system atomicity: Ensuring credit transfers during session completion are atomic and prevent double-spending required database-level functions with proper transaction handling. 3.Dual-role UX: Designing an intuitive interface that seamlessly switches between Learner and Mentor modes without confusing users required thoughtful UI/UX decisions and state persistence to avoid multiple logins for different roles. 4.Authentication flow: Properly handling OAuth callbacks, session management, and protecting routes with middleware required deep understanding of Next.js 14's App Router authentication patterns. 5.Row Level Security (RLS): Writing comprehensive RLS policies that are both secure and functional while allowing proper data access across complex relationships (connections, messages, sessions) was intricate.
Accomplishments that we're proud of
Complete MVP in record time: Built a fully functional skill-trading platform with 5 major features (mode toggle, search, connections, chat, credits)
Real-time chat: Successfully implemented instant messaging with Supabase Realtime, including read receipts and auto-scroll
Robust credits economy: Created a fair, sustainable credit system with initial credits, earning through teaching, spending on learning, and tip support
Beautiful and smooth UI: Designed a modern, pastel-themed interface with smooth animations, dark mode, and responsive layouts
Database automation: Implemented triggers and functions for automatic profile creation, credit initialization, and transaction logging
Security first: Comprehensive RLS policies ensuring users can only access their own data and authorized connections
Production-ready: Fully documented deployment process with environment configuration and testing checklists
What we learned
-Supabase Realtime: Mastered real-time subscriptions, channel management, and handling live data updates in React -Next.js 14 App Router: Deep dive into server components, middleware, and modern authentication patterns -Database design: Learned to design scalable schemas with proper constraints, indexes, and RLS for multi-tenant applications -Credit systems: Understanding the complexities of building fair economic systems in apps (preventing negative balances, ensuring atomicity) -TypeScript with React: Improved type safety across the stack, especially with Supabase client types -Deployment pipelines: Learned to deploy monorepo applications across multiple platforms (Vercel, Render) -User experience: Balancing feature richness with simplicity, especially for dual-role applications
What's next for Skillsy
Short-term enhancements:
Video sessions: Integrate WebRTC for live video mentoring using Zoom or Google Meet Notifications: Push notifications for connection requests, messages, and session reminders Rating system: Allow learners to rate mentors and build reputation scores Analytics dashboard: Track learning progress, earnings, and session history with visualizations Advanced search: Filter by proficiency level, availability, session cost, and ratings Calendar integration: Sync sessions with Google Calendar/Outlook Skill verification: Badge system for verified skills with assessment tests like in Linkedin Multi-language support: i18n for global accessibility Payment gateway: Option to buy credits with real money (with platform fee) Mobile app: Native iOS/Android apps for better mobile experience
Visons:
AI-powered matching: ML-based mentor recommendations based on learning goals Learning paths: Structured curriculum creation for comprehensive skill development Enterprise tier: Corporate accounts for team skill development Global marketplace: Community-driven skill badges and certifications Gamification: Achievements, streaks, and leaderboards to boost engagement
Built With
- antigravity
- cursor
- fastapi
- gemini
- googleloauth
- nextjs
- react
- render
- rls
- supabase
- tailwindcss
- typescript
- vercel
Log in or sign up for Devpost to join the conversation.