Skip to content

Akhilkumar4464/SkillForAge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

🚀 SkillForge — College Learning Platform (Full‑Stack MERN)

SkillForge is a production‑ready learning platform for college students built with the MERN stack. It goes beyond a basic authentication setup and demonstrates real product thinking, clean architecture, and secure frontend–backend integration.

This repository follows industry best practices and is suitable for resume, interviews, and real-world deployment.


🎯 Problem Statement

College students often struggle with:

  • Unstructured learning resources
  • No clear progress tracking
  • Scattered projects and notes
  • Confusion about what to learn next

SkillForge solves this by providing a centralized learning platform where students can authenticate securely, track learning progress, manage projects, and build skills systematically.


🧠 Core Features

🔐 Authentication & Security

  • User registration & login
  • Password hashing with bcrypt
  • JWT‑based authentication
  • Auth middleware for protected routes
  • Secure environment variable handling

📊 Student Dashboard (Planned)

  • Personalized dashboard after login
  • Learning progress overview
  • Active learning tracks & projects

📚 Learning Platform (Planned)

  • Structured learning tracks (MERN, DSA, Core CS, etc.)
  • Modules & topics with completion tracking
  • Project‑based learning approach

🏗️ Tech Stack

Frontend

  • React + TypeScript (Vite)
  • Tailwind CSS
  • React Router
  • Axios (centralized API layer)
  • Context API for auth state

Backend

  • Node.js
  • Express.js
  • MongoDB + Mongoose
  • JWT Authentication
  • bcryptjs
  • dotenv & cors

📂 Project Structure (Monorepo)

skillforge/
  frontend/
    src/
      api/
      components/
      pages/
      layouts/
      context/
      hooks/
      types/
    .env

  backend/
    src/
      controllers/
      models/
      routes/
      middlewares/
      utils/
      app.js
      server.js
    .env

  .gitignore
  README.md

🔐 Authentication Flow

  1. User registers or logs in from frontend
  2. Backend validates credentials
  3. Passwords are securely hashed
  4. JWT token is generated
  5. Token is verified via middleware
  6. Protected routes allow access only to authenticated users

🌐 API Endpoints

Auth APIs

Method Endpoint Description
POST /api/auth/register Register new user
POST /api/auth/login Login user
GET /api/health Backend health check

⚙️ Environment Variables

Backend (backend/.env)

PORT=3000
MONGODB_URI=mongodb://localhost:27017/skillforge
JWT_SECRET=your_jwt_secret

Frontend (frontend/.env)

VITE_API_URL=http://localhost:3000/api

▶️ Running the Project Locally

Backend

cd backend
npm install
npm run dev

Backend runs on:

http://localhost:3000

Frontend

cd frontend
npm install
npm run dev

Frontend runs on:

http://localhost:5173

🔒 Security Practices

  • Password hashing with bcrypt
  • JWT token verification middleware
  • .env files excluded via .gitignore
  • CORS configuration
  • Clean separation of concerns

🧠 What This Project Demonstrates

  • Real product mindset (not just auth)
  • Secure full‑stack authentication
  • Clean backend architecture
  • Type‑safe frontend development
  • Industry‑standard project structure
  • Git & version control best practices

📌 Resume‑Ready Description

Built a full‑stack MERN learning platform for college students with secure JWT authentication, protected routes, and scalable frontend–backend architecture.


🚀 Future Enhancements

  • /me protected API
  • Auto‑login on refresh
  • Learning tracks & progress engine
  • Project submissions & notes
  • Admin panel
  • Deployment (Vercel + Render)

👨‍💻 Author

Akhil Kumar Full‑Stack Developer (MERN)


⭐ If you find this project useful, give it a star!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published