Skip to content

Latest commit

ย 

History

598 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ“š Study With Keshab

เฆฌเฆพเฆ‚เฆฒเฆพเฆฏเฆผ เฆธเง‡เฆฐเฆพ เฆ…เฆจเฆฒเฆพเฆ‡เฆจ เฆถเฆฟเฆ•เงเฆทเฆพ เฆชเงเฆฒเงเฆฏเฆพเฆŸเฆซเฆฐเงเฆฎ โ€” Physics, Chemistry, Math, Biology, Reasoning, GK เฆธเฆน เฆธเฆ•เฆฒ เฆฌเฆฟเฆทเฆฏเฆผเง‡ เฆ‡เฆจเงเฆŸเฆพเฆฐเง‡เฆ•เงเฆŸเฆฟเฆญ เฆ•เงเฆ‡เฆœ, เฆจเง‹เฆŸ, CBT เฆชเฆฐเง€เฆ•เงเฆทเฆพ เฆเฆฌเฆ‚ AI เฆถเฆฟเฆ•เงเฆทเฆ•เฅค

License Platform Language


๐ŸŽฏ Features

๐Ÿ  Home & Learning

  • Interactive Hero Section โ€” beautifully animated landing page
  • Subject-wise Content โ€” Physics, Chemistry, Math, Biology, Reasoning, GK
  • CBT Exam System โ€” Computer Based Test with timer, navigation & result analysis
  • AI Notebook โ€” smart note taking with markdown support
  • AI Teacher Widget โ€” instant doubt clearing & explanations
  • Smart Routine โ€” personalized study schedule with reminders

๐Ÿ” Authentication

  • Email / Password sign-up & login
  • Google Sign-In (OAuth 2.0)
  • Role-based access: student, admin
  • Persistent sessions with Firebase Auth

๐Ÿ“Š Dashboard

  • Leaderboard โ€” quiz score rankings
  • Exam History โ€” detailed result tracking
  • Profile Management โ€” avatar, name, progress

๐Ÿ”” Notifications

  • Realtime notifications via Supabase
  • Class notes, reminders & announcements
  • PWA push notification support

๐Ÿ“ฑ PWA Features

  • Install as desktop / mobile app
  • Offline-ready with Service Worker
  • App shortcuts & splash screen

๐Ÿ› ๏ธ Tech Stack

Layer Technology
Frontend HTML5, CSS3, JavaScript (ES6+)
Styling Custom CSS, Font Awesome 6, Google Fonts
Backend / Auth Firebase (v8.10.0) โ€” Auth, Firestore, Messaging
Database / Realtime Supabase โ€” notifications feed
Hosting Vercel
PWA Service Worker, Web App Manifest

๐Ÿ“ Project Structure

Study-With-Keshab/
โ”œโ”€โ”€ index.html                  # Home page
โ”œโ”€โ”€ login.html / signup.html    # Authentication pages
โ”œโ”€โ”€ admin.html                  # Admin dashboard
โ”œโ”€โ”€ profile.html                # User profile
โ”œโ”€โ”€ ai-teacher.html             # AI Teacher module
โ”œโ”€โ”€ ai-notebook.html            # AI Notebook module
โ”œโ”€โ”€ cbt-exam/                   # CBT exam module
โ”‚   โ””โ”€โ”€ index.html
โ”œโ”€โ”€ subject/                    # Subject-wise chapters & quizzes
โ”‚   โ”œโ”€โ”€ Physics/
โ”‚   โ”œโ”€โ”€ Chemistry/
โ”‚   โ”œโ”€โ”€ Math/
โ”‚   โ”œโ”€โ”€ Biology/
โ”‚   โ”œโ”€โ”€ chhaya/                 # Chhaya Prakashani content
โ”‚   โ””โ”€โ”€ Gk.html
โ”œโ”€โ”€ js/
โ”‚   โ”œโ”€โ”€ firebase-config.js      # โšก Single source of Firebase config
โ”‚   โ”œโ”€โ”€ auth.js                 # Auth logic
โ”‚   โ”œโ”€โ”€ navigation.js           # Nav & mobile menu
โ”‚   โ”œโ”€โ”€ toast.js                # Toast notifications
โ”‚   โ””โ”€โ”€ ...
โ”œโ”€โ”€ css/
โ”‚   โ”œโ”€โ”€ style.css
โ”‚   โ”œโ”€โ”€ navigation.css
โ”‚   โ”œโ”€โ”€ cbt-styles.css
โ”‚   โ””โ”€โ”€ ...
โ”œโ”€โ”€ firebase-messaging-sw.js    # FCM background handler
โ”œโ”€โ”€ firestore.rules             # Firestore security rules
โ”œโ”€โ”€ storage.rules               # Storage security rules
โ”œโ”€โ”€ sw.js                       # PWA service worker
โ”œโ”€โ”€ manifest.json               # PWA manifest
โ”œโ”€โ”€ .firebaserc                 # Firebase project config
โ”œโ”€โ”€ firebase.json               # Firebase hosting config
โ””โ”€โ”€ package.json

๐Ÿš€ Getting Started

Prerequisites

  • Node.js (v16+)
  • Firebase account
  • Supabase account (for notifications)
  • Vercel CLI (optional, for deployment)

1. Clone the Repository

git clone https://github.com/Keshab1997/Study-With-Keshab.git
cd Study-With-Keshab

2. Firebase Setup

  1. Go to Firebase Console
  2. Create a new project (or import existing study-with-keshab)
  3. Enable Authentication โ†’ Email/Password + Google
  4. Create Firestore Database in test mode
  5. Copy your Firebase config:
    • Go to Project Settings โ†’ General โ†’ Your apps โ†’ Web app
    • Copy apiKey, authDomain, projectId, etc.
  6. Update js/firebase-config.js with your credentials

3. Firestore Rules

Deploy security rules from firestore.rules:

firebase deploy --only firestore:rules

4. Supabase Setup (Notifications)

  1. Create a Supabase project
  2. Create a notifications table or use the Edge Function
  3. Update Supabase URL & anon key in notification scripts

5. Run Locally

Open index.html via Live Server / VS Code Live Preview.
Or use the bundled server:

npm start

๐Ÿ”ง Configuration

Firebase Config (js/firebase-config.js)

Single source of truth for all Firebase credentials. All pages load this file.

Supabase Keep-Alive (GitHub Actions)

A scheduled workflow (.github/workflows/keep-supabase-alive.yml) pings Supabase REST API daily to prevent project pause on free tier.

Environment Variables (GitHub Secrets)

  • SUPABASE_URL
  • SUPABASE_ANON_KEY

๐Ÿ“ฆ Key Scripts

npm start   # Start local server
npm run convert   # Convert markdown content to JSON

๐ŸŒ Deployment

Vercel

  1. Push code to GitHub
  2. Import repo in Vercel
  3. Deploy โ€” no build step required (static site)

Important: After deployment, add your Vercel domain to Firebase Console:

  • Authentication โ†’ Settings โ†’ Authorized domains
  • Add: your-project.vercel.app

๐Ÿ›ก๏ธ Security Rules

Firestore (firestore.rules)

  • Users can read/update their own profile
  • Quiz scores are read-only for authenticated users
  • Only admins can write class_notes, chapters, notificationQueue
  • Feedbacks & exam results are user-scoped

Storage (storage.rules)

Check storage.rules for file upload permissions (profile pics, notes, etc.)


๐Ÿค Contributing

Contributions are welcome! Please:

  1. Fork the repo
  2. Create a feature branch
  3. Commit your changes
  4. Open a Pull Request

๐Ÿ“„ License

MIT License โ€” feel free to use this project for learning and building.


๐Ÿ‘จโ€๐Ÿ’ป Developed By

Study With Keshab
๐ŸŒ study-with-keshab.vercel.app


๐Ÿ™ Acknowledgments

  • Firebase & Supabase communities
  • Font Awesome for icons
  • Google Fonts (Baloo Da 2, Poppins, Hind Siliguri)

About

๐Ÿ“š Study With Keshab โ€” study hub with notes & learning resources for students.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages