Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2,117 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Algo Infinity Verse Banner

Master Data Structures & Algorithms and Crack Technical Interviews

GitHub repo size GitHub last commit

A modern, interactive platform for learning DSA, system design, programming languages, and CS fundamentals — featuring 200+ algorithm visualizers, 40+ AI-powered tools, and a gamified learning experience.

GitHub license HTML5 CSS3 JavaScript

GitHub issues GitHub pull requests Contributors


Project Snapshot

Metric Value
Total files 1,900+
Learning topics 64
Algorithm visualizers 206
AI-powered features 38
Interactive tools 45
Language editors 17
Academies 20+
Interview prep areas 14
Shared ES modules 75
Quiz questions 60+
API route files 9
Backend services 8

Features

Core Learning Resources

64+ DSA & CS Topics

The platform covers 64+ topics spanning data structures, algorithms, programming languages, system design, and computer science fundamentals:

Core DSA: Arrays, Strings, Linked Lists, Trees, Graphs, Dynamic Programming, Recursion, Stacks, Queues, Heaps, Hashing, Bit Manipulation, Greedy Algorithms, Divide & Conquer, Backtracking, Sliding Window, Two Pointers, Binary Search, Prefix Sum, Segment Tree, Fenwick Tree, Trie, Suffix Array, Suffix Tree, Sparse Table, MST, Shortest Path, Network Flow, Computational Geometry, Number Theory, Bitmask DP, Interval Tree, Link-Cut Tree, Morris Traversal, Monotonic Deque, Persistent Data Structures

Programming Languages: Python, Java, C, C++, JavaScript, TypeScript, PHP, SQL, Go, Rust, Kotlin, Scala, Haskell, Perl, R, Dart, Elixir, Clojure, Julia, Lua, Shell Scripting

System Design & Architecture: System Design, API Design, Computer Architecture, Cache Design, OOP, DBMS, OS Concepts, Design Patterns

Frameworks & Platforms: Django, Flask, FastAPI, Express, NestJS, Next.js, React, Vue, Svelte, Angular, Laravel, Spring Boot, Node.js, jQuery, Tailwind CSS, Bootstrap, Material UI

Each topic includes:

  • Detailed theory explanations
  • Key concepts and properties
  • Common problem patterns
  • Difficulty ratings (Easy-Medium-Hard)
  • Sample problem lists

Algorithm Visualizers — 206 Interactive Visualizations

The platform ships 206 algorithm visualizers that bring abstract concepts to life:

  • Sorting: Sorting Visualizer, 3D Pathfinding, Heap Visualization, Merge Sort, Quick Sort, Radix Sort, Counting Sort, Bucket Sort, Shell Sort, Tim Sort, Intro Sort
  • Graph Algorithms: BFS/DFS, Dijkstra, Bellman-Ford, Floyd-Warshall, A* Pathfinding, Prim's, Kruskal's, Tarjan's SCC, Hopcroft-Karp, Ford-Fulkerson, Dinic's, Push-Relabel, MST, Topological Sort, Strongly Connected Components, Pathfinding Arena
  • Tree Data Structures: AVL Tree, B-Tree, B+ Tree, Binary Heap, Binomial Heap, Fenwick Tree, Segment Tree, Splay Tree, Trie, KD-Tree, VP Tree, Interval Tree, Link-Cut Tree, Skip List, Skip Graph, Wavelet Tree, Rope, Morris Traversal
  • String Algorithms: KMP, Rabin-Karp, Z-Algorithm, Manacher's Algorithm, Aho-Corasick, Suffix Array, Suffix Automaton, LCP Array
  • Dynamic Programming: DP Visualizer, LCS, Edit Distance, Bitmask DP, 3D DP, Knapsack, N-Queens, Sudoku Solver, TSP Heuristics, Minimax, MCTS
  • Networking & Protocols: TCP, QUIC, DNS, BGP, WebRTC, gRPC, Kafka, Redis, CDN Flow, Load Balancer, Service Mesh, STP, DHT XOR, Chord, SWIM, Paxos, Raft, PBFT, Consistent Hashing
  • Systems & Hardware: CPU Scheduler (FCFS, SJF, SRTF, RR, Priority, MLFQ), Memory Management (Paging, LRU, LFU, Cache Replacement), Branch Predictor, Cache Coherence (MESI), SSD Simulator, GC Simulator, V8 GC, Go Scheduler, GPU Scheduler, Virtual Memory, NUMA
  • Security & Cryptography: RSA, SHA-256, ZKP, Shamir Secret Sharing, Differential Privacy, FHE Evaluator, PQC Kyber, Spectre, Grover's Algorithm
  • Concurrency & Distributed Systems: Dining Philosophers, Lock-Free Playground, Work-Stealing Scheduler, Vector Clocks, OT Simulator, CRDT, Redlock, Epidemic Protocol, ORAM, BitTorrent, DHT Kademlia
  • Math & Geometry: Convex Hull, Fortune's Sweepline, Marching Cubes, FFT, L-System Fractal, Markov Chain, Quadtree Collision, Spatial Visualizer, ECC Finite Fields, Simplex Noise, Perlin Noise, Cellular Automata, Game of Life, Mandelbrot Set
  • AI & ML: Neural Network Backprop, K-Means, HNSW, t-Distributed Stochastic Neighbor Embedding, LLM Inference, Autograd Engine
  • Miscellaneous: Turing Machine, Flowchart Builder, Algorithm Timeline, Big-O Analyzer, Complexity Analyzer, Memory Palace, DSA Story, Algorithm Music Composer, Algorithm Family Tree

AI-Powered Tools — 38 Features

  • AI Tutor — Intelligent DSA tutoring assistant
  • AI Analyst — Code & performance analysis
  • Algorithm Dream Generator — Visual dreamscape for algorithm concepts
  • Algorithm Evolution — Visualize algorithm optimization over time
  • Algorithm Racing — Race algorithms against each other
  • Autograd Engine — Automatic differentiation visualizer
  • Ast Refactor Engine — AST-based code refactoring explorer
  • Big-O AST Linter — Analyze time complexity from AST
  • BVH Raytracer — Bounding volume hierarchy visualization
  • Chaos Simulator — Chaotic system simulation
  • Compiler VM — Virtual machine for compiled code
  • Concept Bridge — Connect related CS concepts
  • DS Selection Assistant — Recommend data structures for problems
  • DSA Mythbusters — Debunk DSA misconceptions
  • Emotion Engine — Sentiment analysis on code comments
  • Fail Academy — Learn from common failure patterns
  • Failure Simulator — Simulate system failure scenarios
  • Flame Graph Profiler — Profiling flame graph visualizer
  • Fluid Solver — Fluid dynamics simulation
  • Future Knowledge Predictor — Predict emerging CS trends
  • Future Self Code Reviewer — AI code review from simulated future self
  • Future Self Simulator — Career trajectory simulation
  • Fuzz Engine — Fuzz testing visualizer
  • Git Visualizer — Visualize Git operations
  • HFT Engine — High-frequency trading simulation
  • HNSW Visualizer — Hierarchical navigable small world graphs
  • Huffman Engine — Huffman coding visualizer
  • Intent Detector — Detect code intent
  • PQC Kyber — Post-quantum cryptography Kyber visualizer
  • Quantum Simulator — Quantum computing simulation
  • Regex Automata Visualizer — Visualize regex as automata
  • Reverse Complexity — Reverse engineer complexity
  • Space Complexity Profiler — Profile memory usage
  • Time Travel — Step through code execution
  • WASM Execution — WebAssembly execution viewer
  • WASM SQL Visualizer — SQL execution via WASM
  • WebGPU Neural Network — GPU-accelerated neural network
  • Agile Sprint Simulator — Agile methodology simulation

Practice Problems

  • 35+ curated problems spanning all DSA topics
  • Filterable by difficulty (Easy, Medium, Hard)
  • Real-time search functionality
  • Problem tags for quick identification
  • Acceptance rate tracking
  • Visual completion badges

Favorite Problems & Smart Collections

Users can:

  • Mark practice problems as favorites
  • Filter favorite problems
  • Organize favorites into custom bookmark collections
  • Search and filter collections by name, description, and contained problems
  • Persist everything using localStorage and the existing user progress store

How it works:

  • Click the heart icon on any practice problem to add it to favorites
  • Use the new collection form on the Practice Problems page to create custom collections
  • Choose one or more collections per problem from the collection picker beneath each card
  • Use the collection dashboard on the dashboard/profile views to review collection stats

Smart Revision Calendar

An interactive DSA study scheduling engine driven by spaced repetition algorithms to aid structured review:

  • Automatic Scheduling: Calculates target review check-points at optimized intervals (Day 1, 3, 7, 14, 30).
  • Personalized Prioritization: Weights topics based on topic difficulty and historical quiz scores. Low accuracy resets schedule to Day 1, while high scores extend intervals.
  • Revision Dashboard: Track memory retention estimates, streaks, average quiz improvements, and weekly completion rates.
  • Interactive Calendar: View past, current, and upcoming task grids. Color-coded markers distinguish completed, due, and overdue tasks.
  • Reschedule & Recall Tools: Postpone tasks easily or rate concept recall quality to adapt intervals dynamically.
  • Multi-user Sync: Automatically registers schedules in localStorage for guest sessions and syncs to Firebase Firestore for authenticated accounts.

20+ Academies — Full-Stack Learning Paths

Beyond DSA, the platform offers dedicated academies for modern technologies:

Academy Focus
AWS Academy Cloud computing, EC2, S3, Lambda, IAM
Docker & Kubernetes Academy Containerization, orchestration
React Mastery Hooks, state management, SSR
Next.js Academy SSR, SSG, API routes, middleware
Vue Learning Composition API, Pinia
Angular Academy Modules, DI, RxJS
Svelte Learning Reactive declarations, stores
TypeScript Academy Generics, advanced types
Node.js Learning Express, streams, clusters
NestJS Academy Decorators, guards, interceptors
Express Academy Middleware, routing
FastAPI Learning Pydantic, async
Django Learning ORM, DRF, templates
Flask Learning Blueprints, extensions
MongoDB Academy Aggregation, indexing, replica sets
Redis Academy Data structures, caching, pub/sub
Kafka Academy Producers, consumers, stream processing
Elasticsearch Academy Full-text search, aggregations
Neo4j Academy Cypher, graph modeling
Cassandra Learning Hub CQL, partitioning, compaction
Firebase Academy Firestore, auth, cloud functions
Supabase Academy PostgreSQL, real-time, auth
SQLite Academy Embedded databases
PostgreSQL Learning Advanced SQL, indexing, vacuum
Rust Academy Ownership, borrowing, lifetimes
Bootstrap Learning Grid, utilities, components
Tailwind Academy Utility-first CSS
Material UI Learning Theming, components
PHP Learning Laravel, modern PHP
Laravel Learning Elixir, ORM, artisan

Quiz System

60+ Topic-Specific Questions (10 per topic covering key concepts)

  • Arrays: Time complexity, operations, Two Sum, Kadane's algorithm, rotation techniques
  • Strings: Pattern matching (KMP), palindrome detection, anagrams, sliding window
  • Linked Lists: Pointer manipulation, cycle detection, reversal, merging
  • Trees: Traversals, BST properties, height calculation, LCA, heaps
  • Graphs: Representations, BFS/DFS, topological sort, Dijkstra, MST algorithms
  • Dynamic Programming: Memoization, tabulation, classic problems (Fibonacci, Knapsack, LIS, Edit Distance)

Quiz Features:

  • Interactive modal interface
  • Progress bar tracking
  • Instant answer feedback (correct/incorrect highlighting)
  • Detailed explanations for each question
  • Score calculation (percentage)
  • XP rewards: 10 XP per correct answer
  • Best score tracking per topic
  • Attempt counter
  • Randomized question order

Interview Preparation — 14 Dedicated Tools

Tool Description
Mock Interview Simulator Timed coding interview simulation
Company Interview Company-specific question banks
Behavioral Questions STAR method practice
System Design Simulator Whiteboard-style system design
Voice Interview AI-powered voice interview
Interview Panic Mode High-pressure timed practice
Interview Experience Community interview experiences
Interview Mistakes Common mistake database
Interview Heatmap Track preparation coverage
Reverse Interview Questions to ask interviewers
Multiplayer Workspace Collaborative interview prep
P2P Workspace Peer-to-peer coding workspace
CRDT Whiteboard Collaborative whiteboard
Revision Sheet Quick-reference interview sheets

Career Preparation

Area Description
Job Preparation Hub Complete job readiness toolkit
Resume Builder ATS-optimized resume builder
Resume Tips Expert resume advice

Profile & Gamification

Customizable Profile:

  • Edit display name
  • Choose from 12 avatar emojis
  • View join date
  • Track level progression

Progress Tracking:

  • Total XP accumulation
  • Problems solved counter
  • Day streak monitoring
  • Badge earning system

Levels:

  • 8 levels from Beginner to Legend
  • XP thresholds: 0, 1,000, 2,500, 5,000, 10,000, 20,000, 50,000, 100,000
  • Automatic level-up notifications

Badges:

  • 🌟 First Steps (solve 1 problem)
  • 🔥 On Fire (7-day streak)
  • 💎 Diamond (5,000 XP)
  • 🚀 Rocket (50 problems)
  • 👑 Master (100 problems)
  • 🎯 Sharpshooter (25 problems + 2,500 XP)

Badge tooltips: Hover or tap any badge on the dashboard to see the badge name, description, and unlock criteria.


Interactive Tools — 45 Utilities

Tool Purpose
Algorithm Arena Compare algorithm performance
Algorithm Decision Tree Choose the right algorithm
Cross-Topic Trainer Mixed DSA practice
Pattern Trainer Pattern recognition drills
Problem Deconstructor Break down complex problems
Complexity Analyzer Analyze time/space complexity
Complexity Calculator Calculate complexity manually
Complexity Comparator Compare algorithms
Dry Run Simulator Step-by-step algorithm tracing
Edge Case Generator Generate edge cases
Spaced Repetition Schedule reviews
Learning Insights Dashboard Track learning patterns
Personal Analytics Dashboard Personal statistics
Topic Weakness Dashboard Identify weak areas
Code Golf Solve with fewest characters
Code to Diagram Visualize code flow
DOM Visualizer Visualize DOM structure
Compiler Explorer Explore compiler output
Memory Scanner Inspect memory usage
Memory Leak Simulator Understand memory leaks
AI Bug Injector Debug injected bugs
DSA Detective Debug DSA problems
Investigation Lab Root cause analysis
What-If Simulator Explore alternate solutions
Wrong Turn Replay Learn from mistakes
Solution Evolution See solutions evolve
LeetCode Sync Import LeetCode progress
And more... 45 tools total

Language-Specific Editors — 17 Code Environments

Dedicated editors with syntax highlighting, execution, and language-specific features for: JavaScript, Python, Java, C, C++, Go, Rust, Kotlin, Scala, Haskell, Ruby, Perl, PHP, CSS, HTML, SQL, Pseudocode.


Dashboard

  • Complete statistics overview
  • Recent activity feed
  • Achievement badges display
  • Leaderboard comparison
  • Roadmap progress visualization

Authentication

  • Secure signup and login pages
  • PBKDF2 password hashing with per-user salts and a server-side pepper
  • Signed JWT-style sessions stored in HTTP-only cookies
  • Google Sign-In via Firebase
  • 2FA support
  • Email verification flow
  • Password reset flow
  • Logout endpoint that clears the session cookie
  • Protected community and support pages
  • Dashboard/profile hash routes redirected to login when unauthenticated

Interactive Code Editor

  • Multi-language support (JavaScript, Python, Java, C++)
  • Line numbers and syntax highlighting
  • Code snippets insertion
  • Auto-formatting
  • Line comment toggling
  • Run and submit simulation
  • Test case validation

AI Chatbot Assistant

  • Instant DSA concept explanations
  • Time/space complexity queries
  • Problem-solving strategy hints
  • Quick question buttons
  • Context-aware responses

Community Features

Feature Description
Community Hub User discussions and posts
Peer Coding Rooms Real-time collaborative coding
Feedback Board Submit and vote on features
Support Center Help and troubleshooting
DSa Battle Competitive coding battles
Boss Battle Challenge-based game mode
Collaborative Whiteboard Real-time visual collaboration
Escape Room Puzzle-based learning game

User Experience / UX

Visual Design:

  • Dark/Light theme toggle
  • Glassmorphism UI elements
  • Gradient accents
  • Animated transitions
  • Starfield background effect
  • Responsive layout (mobile, tablet, desktop)

Navigation:

  • Sticky navbar with smooth scrolling
  • Mobile hamburger menu
  • Scroll-to-top button
  • Section-based navigation

Technology Stack

Layer Technologies
Frontend HTML5, CSS3, JavaScript ES6+ modules (75 modular files), Font Awesome, Google Fonts
Backend Node.js, Express 5, Socket.io
Database & Auth Firebase / Firestore (firebase-admin), JWT-style access/refresh tokens, PBKDF2 password hashing with server-side pepper
Job Queue BullMQ + Redis (ioredis)
Code Execution isolated-vm sandbox, custom /api/execute endpoint
AI & Parsing OpenAI API, Puppeteer, pdf-parse, mammoth, csv-parse, js-yaml
Email / Uploads Nodemailer, Multer
Build & Test Jest, Playwright

HTML5 CSS3 JavaScript Node.js Express Firebase Socket.io Redis


How to Run

Prerequisites

  • Modern web browser (Chrome, Firefox, Safari, Edge)
  • Node.js 18+ for authentication

Installation

  1. Clone the repository

    git clone https://github.com/Eshajha19/Algo-Infinity-Verse.git
    cd Algo-Infinity-Verse
  2. Start the authenticated app Create your local environment file:

    cp .env.example .env

    Generate secure secrets for your environment:

    node -e "
      console.log('SESSION_SECRET=' + require('crypto').randomBytes(64).toString('hex'));
      console.log('PASSWORD_PEPPER=' + require('crypto').randomBytes(32).toString('hex'));
      console.log('CSRF_SALT=' + require('crypto').randomBytes(32).toString('hex'));
    "

    Copy the generated values into your .env file:

    SESSION_SECRET=your_generated_session_secret
    PASSWORD_PEPPER=your_generated_password_pepper
    CSRF_SALT=your_generated_csrf_salt

    Required Environment Variables

    Variable Description
    SESSION_SECRET HMAC key for signing session JWTs
    PASSWORD_PEPPER Extra secret mixed into password hashes
    CSRF_SALT Salt for CSRF token HMAC signatures

    Firebase (for authentication & persistence)

    Set these if you want Google sign-in and Firestore-backed user data:

    Variable Description
    FIREBASE_API_KEY Web SDK API key (public)
    FIREBASE_AUTH_DOMAIN Auth domain (e.g. your-project.firebaseapp.com)
    FIREBASE_PROJECT_ID Firebase project ID
    FIREBASE_STORAGE_BUCKET Storage bucket
    FIREBASE_MESSAGING_SENDER_ID Sender ID for FCM
    FIREBASE_APP_ID Firebase app ID
    FIREBASE_CLIENT_EMAIL Admin SDK service account email
    FIREBASE_PRIVATE_KEY Admin SDK service account private key

    Note: Without Firebase credentials, user data is stored locally in data/users.json, which is generated locally at runtime and is intentionally excluded from version control. With Firebase, user data is stored in Firestore instead.

    Start the server:

    npm start

    Then visit http://127.0.0.1:3000

    You can still open index.html directly for static browsing, but signup, login, protected routes, and HTTP-only sessions require the Node server.

  3. Start learning!

    • Create your profile
    • Browse DSA topics
    • Take quizzes
    • Practice problems
    • Track your progress

Firebase Configuration

This project uses Firebase Admin SDK for Firestore functionality.

Add the following variables to your .env file:

FIREBASE_PROJECT_ID=your-project-id
FIREBASE_CLIENT_EMAIL=your-service-account-email
FIREBASE_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\nYOUR_PRIVATE_KEY_HERE\n-----END PRIVATE KEY-----\n"

To obtain these values:

  1. Open Firebase Console.
  2. Select your project.
  3. Go to Project Settings → Service Accounts.
  4. Click Generate New Private Key.
  5. Download the service account JSON file.
  6. Copy:
    • project_idFIREBASE_PROJECT_ID
    • client_emailFIREBASE_CLIENT_EMAIL
    • private_keyFIREBASE_PRIVATE_KEY

Never commit real Firebase credentials to version control.


Project Structure

Algo-Infinity-Verse/
├── index.html                  # Main landing page
├── code-playground.html        # Interactive multi-language code editor
├── server.js                   # Express HTTP server + API routes
├── auth.js                     # Client-side auth UI
├── auth-gate.js                # Authentication guard helpers
├── styles.css                  # Global styles, themes, responsive
├── script.js                   # Core app logic
├── firebase.js                 # Firebase Admin / Firestore setup
├── firebase-config.js          # Firebase web SDK config
├── seed-problems.js            # Problem database seeder
├── sdlcAdvisor.js              # SDLC recommendation engine
├── interceptors.js             # Request/response interceptors
├── package.json
├── .env.example
│
├── api/                        # Server API route handlers (9 endpoints)
│   ├── auth/google.js
│   ├── execute.js              # Sandboxed code execution
│   ├── login.js / signup.js / logout.js / session.js
│   ├── quiz-results.js / progress.js / leaderboard.js
│   ├── battles.js / contests.js
│   ├── revision.js
│   └── csrf-token.js
│
├── backend/                    # Server-side business logic (22 entries)
│   ├── services/ (8)           # Auth, email, memory, readiness, revision, WebRTC, etc.
│   ├── jobs/ (3)               # BullMQ queue, worker, score updates
│   ├── controllers/            # Request handlers
│   ├── routes/                 # Route definitions
│   ├── handlers/               # Specialized handlers
│   ├── jsSandboxRunner.js      # isolated-vm sandbox
│   ├── resume-analyzer/        # ATS scoring + skill gap analysis
│   ├── repository-analyzer/    # Repo + CI-CD analysis
│   ├── knowledge-base/         # OpenAI client + vector store
│   ├── vcs/                    # VCS provider factory
│   └── utils/                  # Shared backend helpers
│
├── modules/                    # 75 shared client-side ES modules
│   ├── quiz.js / quiz-game.js / quizScoring.js
│   ├── theme.js / navbar.js / back-to-top.js
│   ├── code-executor.js / executeCode.js
│   ├── cacheManager.js
│   ├── firebase-client.js / supabase-auth-client.js
│   ├── offline-learning.js / offlineStore.js
│   ├── revision*.js (6 files) # Spaced repetition engine
│   ├── chatbot.js / aiHints.js
│   ├── practice.js / flashcards.js
│   ├── toast.js / loader.js / modal-manager.js
│   ├── error-boundary.js / domSanitizer.js
│   └── ...
│
├── pages/                      # 55 feature directories + standalone pages
│   ├── auth/                   # Login, signup, 2FA, verify, reset, settings
│   ├── learning/               # 64 topic directories
│   ├── visualizers/            # 206 visualizer directories
│   ├── ai-features/            # 38 AI feature directories
│   ├── tools/                  # 45 tool directories
│   ├── interview/              # 14 interview prep areas
│   ├── community/              # 4 community areas
│   ├── career/                 # 3 career prep areas
│   ├── editors/                # 17 language-specific editors
│   ├── profile/                # User profiles
│   ├── Dsa-Battle/             # Competitive coding battles
│   ├── boss-battle/            # Challenge-based game mode
│   ├── admin/                  # Admin panel + problem wizard
│   ├── resources/              # Blog, cheat-sheets, FAQ, system design
│   ├── academy/                # Main academy hub
│   ├── angular-academy/        # 20+ technology academies
│   ├── docker-kubernetes-academy/
│   ├── aws-academy/
│   ├── react-mastery/
│   └── ... (20+ academies total)
│
├── data/                       # Local JSON data stores
├── public/                     # Static assets
├── partials/                   # Reusable HTML partials
├── scripts/                    # Build / audit / utility scripts
├── tests/                      # Jest + Playwright tests
├── docs/                       # Contributor docs
└── contributors/               # Contributor pages

The project contains 1,900+ files across 55+ feature directories, 75 modules, 206 visualizers, 38 AI features, and a full backend service layer.


Modular Architecture

Front-end Modules — 75 ES Modules

The monolithic script.js has been split into 75 focused ES modules:

  • Quiz system: quiz.js, quiz-game.js, quizScoring.js
  • Revision/spaced repetition: revisionCalendar.js, revisionDuePopup.js, revisionEngine.js, revisionNotifications.js, revisionScheduler.js, revisionStats.js, revisionStorage.js, spaced-repetition.js
  • UI components: navbar.js, theme.js, toast.js, loader.js, modal-manager.js, back-to-top.js, scrollTop.js
  • Progress & gamification: gamification.js, profile.js, profile-edit.js, xpStore.js, userProgress.js
  • Code execution: code-executor.js, executeCode.js, syntax-highlight.js, editor.js, executionHistory.js
  • AI & hints: chatbot.js, aiHints.js, aiHintsBootstrap.js
  • Data & persistence: cacheManager.js, offlineStore.js, offline-learning.js, pwa-storage.js, progressBackup.js, progressBackupUI.js
  • Bookmarks: bookmarkCollections.js, bookmarkFilters.js, bookmarkStats.js, bookmarkUI.js
  • Safety: error-boundary.js, domSanitizer.js
  • Utilities: utils.js, language-detect.js, keyboard-shortcuts.js, pagination.js, search.js, print.js, chartUtils.js

API Layer — 9 Route Handlers

Route handlers mounted in server.js:

  • execute.js — Sandboxed code execution endpoint
  • login.js / signup.js / logout.js / session.js — Auth flows
  • auth/google.js — Google sign-in integration
  • quiz-results.js / progress.js — Progress persistence
  • leaderboard.js / battles.js — Competitive features
  • csrf-token.js — CSRF protection token issuance
  • revision.js — Spaced repetition API

Backend Services — 8 Services

  • services/auth.service.js — PBKDF2 password hashing, signed access/refresh tokens, rate limiting
  • services/email.service.js — Verification and notification emails via Nodemailer
  • services/memory.service.js — SM-2 spaced repetition scheduling
  • services/readinessEngine.js — Hiring readiness scoring engine
  • services/revision.service.js — Revision plan generation
  • services/sqlSimulatorService.js — SQL simulation engine
  • services/thinkingReplayService.js — Replay user thinking process
  • services/webrtc.service.js — WebRTC signaling server
  • jobs/ — BullMQ queue, worker, and background score updates
  • jsSandboxRunner.jsisolated-vm based JavaScript sandbox
  • resume-analyzer/ — Resume parsing, ATS scoring, and skill gap analysis
  • repository-analyzer/ — Repository and CI/CD pipeline analysis
  • knowledge-base/ — OpenAI client, vector store, and topic generation helpers

State Management

Client-side state (profile, XP, streaks, badges, quiz scores, favorites) is persisted to localStorage under the key algoInfinityVerse. Multi-user data and long-term progress are stored in Firebase/Firestore through the server API.


Extending the Project

Adding New Quiz Questions

Edit script.js and add to quizQuestions object:

const quizQuestions = {
    arrays: [
        {
            id: "arrays-11",
            question: "Your question here?",
            options: ["Option A", "Option B", "Option C", "Option D"],
            correct: 0,
            explanation: "Detailed explanation of why the answer is correct"
        },
    ],
};

Adding New Topics

  1. Create a new directory under pages/learning/
  2. Add theory content, examples, and practice problems
  3. Add corresponding quizQuestions[topicKey] array with 10 questions
  4. Register the topic in the main navigation

Adding New Visualizers

  1. Create a new directory under pages/visualizers/
  2. Follow the existing visualizer pattern (HTML + CSS + JS)
  3. Register in the visualizer index

Customization

Colors: Edit CSS variables in :root:

:root {
    --primary: #7c3aed;
    --secondary: #3b82f6;
    --accent: #06b6d4;
}

Fonts: Update Google Fonts links in index.html and CSS font-family declarations.

XP Values: Modify getXPForDifficulty() function for practice problems or quiz XP calculation.


Browser Support

  • Chrome 90+
  • Firefox 88+
  • Safari 14+
  • Edge 90+

Uses modern ES6+ features and CSS Grid/Flexbox.


Contributing & Community

We welcome contributions! Please see our Contributing Guide for details.

How to Contribute

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

Code of Conduct

Be respectful and constructive. See our Code of Conduct for guidelines.


Support


License

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


Acknowledgments

  • Inspired by LeetCode, HackerRank, and freeCodeCamp
  • Built with ❤️ for the DSA learning community
  • Icons by Font Awesome
  • Fonts by Google Fonts

Start your DSA journey today and level up your coding skills!

About

Resources

Code of conduct

Contributing

Security policy

Stars

15 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages