Skip to content

GeekGod is an interactive web application designed to help users visualize and understand various computer science algorithms through animations and step-by-step execution.

License

Notifications You must be signed in to change notification settings

manan0209/geekgod

Repository files navigation

GeekGod - Interactive Algorithm Visualizer

Live Demo

GeekGod is an interactive web application designed to help users visualize and understand various computer science algorithms through animations and step-by-step execution. The project is built with Next.js and features a modern, responsive UI, beautiful drag-and-drop interactions, and robust SEO/PWA support.

🚀 Features

  • Sorting Algorithms

    • Bubble Sort
    • Insertion Sort
    • Merge Sort
    • Quick Sort
  • Pathfinding Algorithms

    • Dijkstra's Algorithm
    • A* Search
    • BFS
    • DFS
  • Greedy Algorithms

    • Activity Selection
    • Huffman Coding
    • Kruskal's MST
    • Prim's MST
  • Interactive Visualizations

    • Step-by-step execution
    • Speed control
    • Drag-to-draw and drag-to-move for pathfinding
    • Color-coded elements for better understanding
    • Pseudocode highlighting
    • Modern, minimal UI
  • SEO & PWA

    • Custom favicon and manifest for all devices
    • SEO meta tags (Open Graph, Twitter, canonical)
    • Mobile-friendly and installable as a PWA

🛠️ Tech Stack

  • Frontend Framework: Next.js 13+ (App Router)
  • Styling: Tailwind CSS
  • Visualization: Custom-built with React
  • Type Safety: TypeScript
  • Icons: React Icons
  • Code Highlighting: react-syntax-highlighter

🚀 Getting Started

Prerequisites

  • Node.js 16.8 or later
  • npm or yarn

Installation

  1. Clone the repository:

    git clone https://github.com/manan0209/geekgod.git
    cd geekgod
  2. Install dependencies:

    npm install
    # or
    yarn install
  3. Start the development server:

    npm run dev
  4. Open http://localhost:3000 in your browser.

🌐 Production & SEO

  • All pages include SEO meta tags and a custom favicon for a polished, professional look.
  • The app is installable as a PWA and works great on mobile.
  • Favicon assets are in public/favicon/ and referenced in the app layout.

📁 Project Structure

  • src/app/ - Next.js app directory (pages, layouts, etc.)
  • src/components/ - Reusable React components
  • public/favicon/ - Favicon and manifest assets
  • src/types/ - TypeScript types
  • src/utils/ - Utility functions

🤝 Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.

📄 License

MIT

About

GeekGod is an interactive web application designed to help users visualize and understand various computer science algorithms through animations and step-by-step execution.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages