Skip to content

FLASH-4/Dashboard-UI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ My Dashboard β€” Student Learning Platform

A modern, full-stack student dashboard built with Next.js 15, TypeScript, and Tailwind CSS. Features AI-powered mentorship, course tracking, leaderboard, and complete authentication flow.


✨ Features

πŸ” Authentication

  • Register with First, Middle & Last Name, Phone (country-wise validation), Email, Password with live validation rules, Google reCAPTCHA
  • Login with Email or Phone toggle, Remember Me (persists across logout), Show/Hide password, Forgot Password
  • Forgot Password via EmailJS β€” sends real reset link to user's email
  • Logout confirmation modal with remembered credentials preserved

πŸ“Š Dashboard

  • Personalized welcome β€” "Welcome" for new users, "Welcome Back" for returning users
  • Edit Profile modal to update display name
  • Stats cards β€” Total Points, Courses Done, Global Rank
  • Recent Activity timeline with "View All" modal

πŸ“š Courses

  • Course cards with progress bars, instructor info, difficulty level
  • Search by course name
  • Filter by category β€” All, Web Dev, DSA, AI/ML
  • Study material PDF links

πŸ† Leaderboard

  • Top 3 podium cards with special styling for Rank #1
  • Full global standings table with streaks and points

πŸ€– AI Code Mentor (Chatbot)

  • Floating chatbot powered by Groq API (Llama 3.1)
  • Hinglish responses β€” friendly and technical
  • Personalized with user's name

πŸ› οΈ Tech Stack

Technology Usage
Next.js 15 Framework (App Router)
TypeScript Type Safety
Tailwind CSS Styling
Groq SDK AI Chatbot (Llama 3.1)
EmailJS Forgot Password emails
Google reCAPTCHA Bot Protection
react-phone-input-2 International Phone Input

πŸ“ Project Structure

mydashboard/ β”œβ”€β”€ app/ β”‚ β”œβ”€β”€ page.tsx # Dashboard β”‚ β”œβ”€β”€ register/ β”‚ β”‚ └── page.tsx # Registration Page β”‚ β”œβ”€β”€ login/ β”‚ β”‚ └── page.tsx # Login Page β”‚ β”œβ”€β”€ forgot-password/ β”‚ β”‚ └── page.tsx # Forgot Password Page β”‚ β”œβ”€β”€ courses/ β”‚ β”‚ └── page.tsx # Courses Page β”‚ β”œβ”€β”€ leaderboard/ β”‚ β”‚ └── page.tsx # Leaderboard Page β”‚ β”œβ”€β”€ api/ β”‚ β”‚ └── chat/ β”‚ β”‚ └── route.ts # Groq AI API Route β”‚ └── components/ β”‚ β”œβ”€β”€ sidebar.tsx # Sidebar Navigation β”‚ └── AIChatbot.tsx # AI Chatbot Component β”œβ”€β”€ .env.local # Environment Variables (never commit!) β”œβ”€β”€ public/ └── package.json


πŸš€ Getting Started

1. Clone the repository

git clone https://github.com/your-username/mydashboard.git
cd mydashboard

2. Install dependencies

npm install

3. Setup environment variables

Create a .env.local file in the root directory:

# Groq AI (Free) β€” https://console.groq.com
GROQ_API_KEY=your_groq_api_key

# EmailJS β€” https://www.emailjs.com
NEXT_PUBLIC_EMAILJS_SERVICE_ID=your_service_id
NEXT_PUBLIC_EMAILJS_TEMPLATE_ID=your_template_id
NEXT_PUBLIC_EMAILJS_PUBLIC_KEY=your_public_key

4. Run the development server

npm run dev

Open http://localhost:3000 in your browser.


πŸ”‘ Environment Variables Guide

Variable Where to get
GROQ_API_KEY console.groq.com β†’ Free signup β†’ Create API Key
NEXT_PUBLIC_EMAILJS_SERVICE_ID emailjs.com β†’ Email Services β†’ Your Service
NEXT_PUBLIC_EMAILJS_TEMPLATE_ID EmailJS β†’ Email Templates β†’ Your Template
NEXT_PUBLIC_EMAILJS_PUBLIC_KEY EmailJS β†’ Account β†’ Public Key

⚠️ Important Notes

  • Never commit .env.local to GitHub β€” it's already in .gitignore
  • Google reCAPTCHA sitekey in the code is for localhost β€” update it for production domain at google.com/recaptcha
  • This project uses localStorage for session management β€” suitable for demo/learning projects

πŸ“Έ Pages Overview

Page Route
Dashboard /
Register /register
Login /login
Forgot Password /forgot-password
Courses /courses
Leaderboard /leaderboard

πŸ™ Credits

Built with ❀️ by Sreyansh Verma

About

πŸŽ“ Student Learning Dashboard β€” Built with Next.js 15, TypeScript & Tailwind CSS. Features AI Code Mentor (Groq), Authentication, Course Tracker & Leaderboard.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors