Skip to content

Latest commit

Β 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ UPSC-OS

The Ultimate AI-Powered UPSC Exam Preparation Platform


πŸš€ Overview

UPSC-OS is a cutting-edge, full-stack web application designed to revolutionize UPSC (Union Public Service Commission) exam preparation. Built with modern technologies and powered by artificial intelligence, it provides comprehensive tools for organizing your study journey, tracking progress, generating intelligent notes, and practicing with targeted quizzes.

Whether you're a UPSC aspirant just starting your journey or fine-tuning your final preparations, UPSC-OS offers an integrated ecosystem that adapts to your learning pace and style.


✨ Key Features

πŸ“Š Smart Dashboard

  • Real-time overview of your entire preparation journey
  • Visual progress indicators and quick statistics
  • Recent activity timeline
  • Personalized study recommendations

πŸ“š Intelligent Syllabus Manager

  • Organize UPSC topics systematically
  • Track completion status for each topic
  • Subject-wise curriculum mapping
  • Visual progress tracking
  • Quick topic filtering and search

πŸ“… Advanced Study Planner

  • Create custom study schedules
  • Plan your preparation timeline strategically
  • Set and monitor daily/weekly goals
  • Visual timeline representations
  • Deadline management and reminders

⚑ Real-time Progress Tracker

  • Monitor preparation progress instantly
  • Topic-wise completion analytics
  • Subject performance insights
  • Visual progress bars and metrics
  • Historical progress data

πŸ“ˆ Comprehensive Analytics Dashboard

  • Detailed performance metrics and insights
  • Study time analytics with visualizations
  • Topic-wise performance breakdown
  • Interactive charts and graphs (powered by Recharts)
  • Data-driven insights for improvement
  • Time-based analytics and trends

πŸ“ Rich Text Notepad

  • Full-featured note-taking experience
  • Rich text editing with multiple formatting options
  • Organize notes by subjects and topics
  • Quick note search and retrieval
  • Note versioning and history

πŸ€– AI-Powered Notes (Notes AI)

  • Intelligent note generation using Google Generative AI
  • Automatic topic summarization
  • Context-aware learning suggestions
  • AI-assisted content creation
  • Smart content recommendations

❓ Interactive Quiz System

  • Multiple quiz formats and difficulty levels
  • Instant feedback and explanations
  • Topic-specific practice tests
  • Performance tracking per quiz
  • Detailed answer explanations

πŸ“‹ Previous Year Questions (PYQ)

  • Curated collection of past UPSC questions
  • Year-wise organization
  • Difficulty level indicators
  • Solution references
  • Trending topics analysis

🎯 Revision Tracker

  • Smart revision scheduling
  • Track revision sessions
  • Completion monitoring
  • Adaptive revision planning
  • Spaced repetition support

πŸŒ™ Dark Mode Support

  • Eye-friendly dark theme
  • Seamless light/dark mode switching
  • Persistent theme preference
  • Beautiful animations in both modes

πŸ‘€ Secure Authentication

  • Firebase-based user authentication
  • Secure email/password login
  • User profile management
  • Account security features

πŸ› οΈ Technology Stack

Frontend Framework

  • React 18.2.0 - Modern UI library with hooks and concurrent rendering
  • Vite 5.0.0 - Lightning-fast build tool with HMR support
  • React Router DOM 6.18.0 - Client-side routing and navigation

Styling & Animations

  • Tailwind CSS 3.3.5 - Utility-first CSS framework
  • Framer Motion 11.11.17 - Advanced animation library
  • Lucide React 0.290.0 - Beautiful SVG icons
  • Custom animations - Fade, slide, and float effects

AI & Intelligence

  • Google Generative AI - Intelligent content generation
  • React Markdown - Markdown content rendering
  • React Quill 2.0.0 - Rich text editor

Backend & Database

  • Firebase 10.0.0 - Authentication, database, and hosting
  • Firestore - Real-time database

Data Visualization

  • Recharts 2.9.0 - React charting library
  • Three.js 0.158.0 - 3D graphics
  • @react-three/fiber 8.18.0 - React renderer for Three.js
  • @react-three/drei 9.88.0 - Useful helpers for 3D

Utilities

  • jsPDF 2.5.1 - PDF generation
  • jsPDF AutoTable 3.8.4 - Table in PDFs
  • date-fns 2.30.0 - Date manipulation
  • uuid 9.0.1 - UUID generation
  • clsx 2.0.0 - Conditional classNames
  • tailwind-merge 2.0.0 - Merge Tailwind classes

Development

  • ESLint - Code quality
  • Autoprefixer - CSS prefixing
  • PostCSS - CSS transformations

πŸ“¦ Getting Started

Prerequisites

Node.js (v16 or higher)
npm or yarn

Installation

1. Clone the Repository

git clone https://github.com/Sachin23991/upsc-os.git
cd upsc-os

2. Install Dependencies

npm install
# or
yarn install

3. Environment Configuration Create a .env.local file in the root directory:

# Firebase Configuration
VITE_FIREBASE_API_KEY=your_api_key
VITE_FIREBASE_AUTH_DOMAIN=your_auth_domain
VITE_FIREBASE_PROJECT_ID=your_project_id
VITE_FIREBASE_STORAGE_BUCKET=your_storage_bucket
VITE_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
VITE_FIREBASE_APP_ID=your_app_id

# Google Generative AI
VITE_GOOGLE_API_KEY=your_google_generative_ai_key

4. Start Development Server

npm run dev
# or
yarn dev

The app will be available at http://localhost:5173


πŸ—οΈ Project Structure

upsc-os/
β”œβ”€β”€ public/                      # Static assets
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ 3d/                 # 3D components
β”‚   β”‚   β”œβ”€β”€ dashboard/          # Dashboard components
β”‚   β”‚   β”œβ”€β”€ layout/
β”‚   β”‚   β”‚   └── DashboardLayout.jsx  # Main layout with sidebar
β”‚   β”‚   β”œβ”€β”€ ui/                 # Reusable UI components
β”‚   β”‚   └── ErrorBoundary.jsx   # Error handling
β”‚   β”œβ”€β”€ context/
β”‚   β”‚   β”œβ”€β”€ AuthContext.jsx     # Authentication context
β”‚   β”‚   └── ThemeContext.jsx    # Theme management
β”‚   β”œβ”€β”€ lib/
β”‚   β”‚   β”œβ”€β”€ firebase.js         # Firebase config
β”‚   β”‚   β”œβ”€β”€ db.js               # Database operations
β”‚   β”‚   β”œβ”€β”€ syllabus-data.js    # Syllabus data
β”‚   β”‚   └── utils.js            # Utility functions
β”‚   β”œβ”€β”€ pages/
β”‚   β”‚   β”œβ”€β”€ Analytics.jsx       # Analytics dashboard
β”‚   β”‚   β”œβ”€β”€ Dashboard.jsx       # Main dashboard
β”‚   β”‚   β”œβ”€β”€ LandingPage.jsx     # Landing page
β”‚   β”‚   β”œβ”€β”€ Login.jsx           # Authentication
β”‚   β”‚   β”œβ”€β”€ Notepad.jsx         # Text notes
β”‚   β”‚   β”œβ”€β”€ NotesAI.jsx         # AI notes generation
β”‚   β”‚   β”œβ”€β”€ PYQPage.jsx         # Past year questions
β”‚   β”‚   β”œβ”€β”€ Planner.jsx         # Study planner
β”‚   β”‚   β”œβ”€β”€ ProgressTracker.jsx # Progress tracking
β”‚   β”‚   β”œβ”€β”€ QuizPage.jsx        # Quiz practice
β”‚   β”‚   β”œβ”€β”€ SyllabusManager.jsx # Syllabus management
β”‚   β”‚   └── Tracker.jsx         # Time tracker
β”‚   β”œβ”€β”€ App.jsx                 # Main app component
β”‚   β”œβ”€β”€ main.jsx                # Entry point
β”‚   └── index.css               # Global styles
β”œβ”€β”€ package.json
β”œβ”€β”€ vite.config.js
β”œβ”€β”€ tailwind.config.js
β”œβ”€β”€ postcss.config.js
└── README.md

πŸ“„ Building for Production

npm run build
# or
yarn build

This creates an optimized production build in the dist folder.

Preview Production Build

npm run preview
# or
yarn preview

πŸ§ͺ Code Quality

Run ESLint to check code quality:

npm run lint
# or
yarn lint

🎨 Animation Features

The project includes smooth animations throughout:

  • Fade-in animations - Content appears smoothly
  • Slide-up animations - Elements animate from below
  • Hover effects - Interactive button and link animations
  • Floating animations - Subtle floating movements
  • Page transitions - Smooth navigation between pages
  • Loading states - Animated loading spinners
  • Modal animations - Smooth modal appearances

Powered by Framer Motion with custom Tailwind CSS animations.


πŸ” Authentication

  • Secure Firebase Authentication
  • Email/password login system
  • Protected routes for authenticated users
  • User profile management
  • Session persistence

🎯 Core Pages & Components

| Page | Purpose | Key Features | |------|---------|──────────────| | Dashboard | Main hub | Overview, quick stats, recent activity | | Syllabus Manager | Curriculum management | Topic tracking, progress, filtering | | Planner | Study scheduling | Timeline planning, goal setting | | Tracker | Time tracking | Duration monitoring, statistics | | Analytics | Performance insights | Charts, metrics, data visualization | | Notepad | Note-taking | Rich text, organization, search | | Notes AI | AI assistance | Smart summaries, suggestions | | Quiz | Practice testing | Multiple formats, feedback | | PYQ | Past questions | Year-wise, difficulty levels | | Revision | Revision planning | Scheduling, completion tracking |


πŸ“Š Analytics & Visualization

  • Real-time data visualization with Recharts
  • Performance metrics and statistics
  • Study time analytics
  • Topic-wise performance breakdown
  • Progress trends and predictions
  • Data export capabilities

πŸ€– AI Integration

The app leverages Google Generative AI for:

  • Intelligent note generation from topics
  • Automatic content summarization
  • Context-aware learning suggestions
  • Smart study recommendations
  • Content analysis and insights

🌐 Deployment

Deploy to your favorite platform:

Firebase Hosting

npm install -g firebase-tools
firebase init
firebase deploy

Vercel

npm install -g vercel
vercel

Netlify

npm install -g netlify-cli
netlify deploy

🀝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create your feature branch: git checkout -b feature/AmazingFeature
  3. Commit changes: git commit -m 'Add AmazingFeature'
  4. Push to branch: git push origin feature/AmazingFeature
  5. Open a Pull Request

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ™ Acknowledgments

  • Google Generative AI - For intelligent features
  • Firebase - For backend and authentication
  • React Team - For the amazing library
  • Tailwind Labs - For utility-first CSS
  • Framer - For animation capabilities
  • All open-source contributors

πŸ“ž Support

Need help? Have questions?

  • πŸ“§ Open an issue on GitHub
  • πŸ’¬ Start a discussion
  • πŸ› Report bugs
  • πŸ’‘ Suggest features

πŸ—ΊοΈ Roadmap

  • Mobile app (React Native)
  • Offline mode support
  • Video integration
  • Community forums
  • Advanced AI predictions
  • Mock tests
  • Collaborative learning
  • Performance predictions
  • Study group features
  • Advanced reporting

🌟 Star This Project!

If you find UPSC-OS helpful, please give it a star! ⭐


Made with ❀️ by Sachin

Helping UPSC aspirants achieve their dreams

About

AI-powered UPSC exam prep with analytics, notes, quizzes and progress tracking

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages