Skip to content

surendrakumar6350/talentbridge

Repository files navigation

🌉 TalentBridge

Connecting talent with opportunity

Next.js TypeScript MongoDB Tailwind CSS

Browse internships, filter by skills/location/stipend, and apply in one place.

🚀 Live Demo🐛 Report Bug✨ Request Feature


✨ Features

🎯 For Students

  • 🔍 Smart Filtering - Find internships by location, skills, stipend range
  • Real-time Search - Instant results as you type
  • 📱 Responsive Design - Perfect on all devices
  • 🎨 Modern UI - Clean interface with shadcn components
  • Easy Applications - One-click apply with status tracking

👨‍💼 For Admins

  • 📝 Post Internships - Easy internship management
  • 📊 Review Applications - Track and manage applications
  • 📈 Analytics Dashboard - View application statistics
  • 👥 User Management - Manage user accounts
  • 🔒 Secure Auth - JWT-based authentication

🛠️ Tech Stack

Frontend Backend Database Auth Styling
Next.js Node.js MongoDB JWT Tailwind
Next.js 15 API Routes Mongoose jose shadcn/ui
TypeScript Rate Limiting Atlas Cloud Google OAuth Responsive

Core Technologies

  • 🚀 Next.js 15 - React framework with App Router
  • 📘 TypeScript - Type-safe development
  • 🎨 Tailwind CSS - Utility-first styling
  • 🧩 shadcn/ui - Beautiful, accessible components
  • 🗄️ MongoDB - NoSQL database with Mongoose
  • 🔐 JWT - Secure authentication
  • Redis - Rate limiting & caching

🚀 Quick Start

Prerequisites

  • Node.js 18+
  • MongoDB database
  • Google OAuth credentials (optional)

Installation

  1. Clone the repository

    git clone https://github.com/surendrakumar6350/talentbridge.git
    cd talentbridge
  2. Install dependencies

    npm install
  3. Set up environment variables

    # Copy the example file
    cp .env.example .env.local
    
    # Edit .env.local with your values:
    SECRET_JWT=your-jwt-secret
    DB=your-mongodb-connection-string
    GOOGLE_CLIENT_ID=your-google-oauth-client-id
  4. Run the development server

    npm run dev
  5. Open your browser

    Navigate to http://localhost:3000 🎉

🎯 Environment Setup

📋 Check out .env.example for all required environment variables

📁 Project Structure

📦 talentbridge/
├── 🎯 app/                   # Next.js App Router
│   ├── 👨‍💼 admin/            # Admin dashboard & management
│   ├── 🔌 api/               # Backend API routes
│   ├── 💼 internships/       # Public internship pages
│   └── 🔐 auth/              # Authentication pages
├── 🧩 components/            # React components
│   ├── 🎨 ui/               # shadcn/ui components
│   └── 👨‍💼 admin/           # Admin-specific components
├── 🗄️ dbConnection/         # Database schemas & connection
├── 📚 lib/                  # Utilities & helper functions
├── 🎨 public/               # Static assets
└── 📝 types/                # TypeScript type definitions

🎯 Key Features in Detail

🔍 Advanced Filtering System
  • Multi-criteria Search: Filter by profile, location, skills, and stipend
  • Real-time Results: Instant filtering without page reloads
  • Smart Matching: Intelligent skill and location matching
  • Range Filters: Flexible stipend range selection with slider
  • Work Type Options: Full-time, part-time, and remote options
📱 Responsive User Experience
  • Mobile-First Design: Optimized for all screen sizes
  • Sticky Sidebar: Filters stay accessible while browsing
  • Loading States: Smooth skeleton loading animations
  • Error Handling: User-friendly error messages
  • Accessibility: WCAG compliant with keyboard navigation
🔐 Authentication & Security
  • JWT Authentication: Secure token-based auth
  • Google OAuth: Easy sign-in with Google accounts
  • Rate Limiting: Protection against API abuse
  • Secure Routes: Protected admin and user areas
  • Session Management: Automatic token refresh
👨‍💼 Admin Dashboard
  • Internship Management: Create, edit, and delete internships
  • Application Tracking: Monitor and update application status
  • User Analytics: View statistics and user insights
  • Bulk Operations: Manage multiple items efficiently
  • Export Data: Download reports and application data

🤝 Contributing

🤝 Contributing

We love contributions! Here's how you can help make TalentBridge even better:

🚀 Quick Contribution Guide

  1. 🍴 Fork the repository
  2. 🌿 Create your feature branch
    git checkout -b feature/amazing-feature
  3. 💍 Commit your changes
    git commit -m 'Add some amazing feature'
  4. 📤 Push to the branch
    git push origin feature/amazing-feature
  5. 🎯 Open a Pull Request

💡 Contribution Ideas

  • 🐛 Bug fixes - Help us squash those pesky bugs
  • New features - Add exciting functionality
  • 📚 Documentation - Improve our docs
  • 🎨 UI/UX improvements - Make it even more beautiful
  • Performance optimizations - Speed things up

📋 Development Guidelines

  • Follow TypeScript best practices
  • Use shadcn/ui components when possible
  • Write meaningful commit messages
  • Test your changes thoroughly
  • Update documentation as needed

Built with ❤️ by Surendra Kumar

Star this repo if you find it helpful!

GitHub stars GitHub forks

About

TalentBridge — find internships fast with skill-based filtering, stipend ranges, and easy applications

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors