SkillSwap is a full-stack application where users can exchange skills directly with others or use tokens to access services. It's designed to empower users to trade knowledge and abilities in a smart, AI-assisted environment.
- Directly connect and exchange skills (e.g., design for coding).
- Use platform-specific tokens to request or offer services.
- Uses a Python-based sentiment analysis model to rank and recommend users based on feedback and tone.
- Built-in assistant using Gemini for real-time help, suggestions, and onboarding queries.
- Add your skills, certifications, ratings, and availability.
- Make requests or post services openly on the marketplace.
- Secure and simple sign-up/sign-in flow using Clerk with Google authentication.
- Modern Next.js integration for seamless user experience.
- Analyze peer reviews and skill tests for objective growth tracking.
app/
├── analyzesenti/ # Sentiment analysis logic and API
├── api/ # Backend API handlers
├── dashboard/ # Dashboard for logged-in users
├── gemini/ # Gemini-based AI assistant
├── home/ # Home/Landing pages
├── marketplace/ # Token-based skill trading
├── onboarding/ # Step-by-step user onboarding
├── pages/ # Routing structure
├── portal/ # User interaction hub
├── profile/ # User profile, settings, history
├── request/ # Request posting/accepting system
├── sign-in / sign-up # Authentication pages
├── test-review-analysis/ # Skill test results & feedback logic
components/ # Reusable UI components (ShadCN-based)
types/ # TypeScript interfaces and types
lib/ # Custom utility functions
public/ # Static files (images, fonts)
- Next.js 13+
- TypeScript
- Tailwind CSS + ShadCN/UI
- Context API + Providers for State Management
- Next.js API Routes
- Python (for ML model integration)
- Clerk with Google Authentication
- Gemini for chat assistance
- Custom Python-based Sentiment Analysis Model
git clone https://github.com/AnupamSingh2004/skill-swap.git
cd skill-swap
npm install
# or
yarn install
Create a .env.local
file at the root of your project:
NEXT_PUBLIC_GEMINI_API_KEY=your_gemini_api_key
NEXT_PUBLIC_BACKEND_URL=http://localhost:3000
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
CLERK_SECRET_KEY=your_clerk_secret_key
npm run dev
# or
yarn dev
Visit http://localhost:3000
in your browser.
- Built using Google's Gemini API for natural chat.
- Responds to skill queries, profile help, matching requests.
- Trained on peer reviews and user messages.
- Scores users based on confidence, helpfulness, and positivity.
- Python server processes messages and recommends top matches.
We love contributions from the community!
- Fork the repo
- Create a new branch (
git checkout -b feature/awesome-feature
) - Make your changes
- Submit a PR!
Please read the CONTRIBUTING.md for more details.
This project is licensed under the MIT License.
This project was created during HacByte 3.0 by:
For questions, feedback, or suggestions:
- GitHub: @AnupamSingh2004
Built with ❤️ using Next.js, Python, and a whole lot of caffeine ☕