Skip to content

Decode DSA — an interactive and responsive web app designed to visualize core Data Structures and Algorithms (DSA) concepts in a fun, easy-to-understand way.

License

Notifications You must be signed in to change notification settings

Aaratrika-Shelly/DecodeDsa

 
 

Repository files navigation

DecodeDSA 🔍✨

DecodeDSA is an interactive and visual web application designed to make learning Data Structures & Algorithms (DSA) fun, intuitive, and hands-on. It provides step-by-step animated visualizations for core DSA concepts, helping students and developers grasp complex logic through real-time feedback.

🔗 Live Demo: https://decodedsa.netlify.app


🧠 What You Can Learn

🔢 Sorting Algorithms

  • Visualize how data is sorted using:
    • Bubble Sort
    • Selection Sort
    • Insertion Sort
    • Merge Sort
    • Quick Sort
    • Heap Sort

🔍 Searching Algorithms

  • Understand the step-by-step process of:
    • Linear Search
    • Binary Search

🧱 Stack & Queue

  • Push, pop, enqueue, and dequeue operations visualized dynamically.
  • Understand LIFO (Last-In-First-Out) vs FIFO (First-In-First-Out) behavior.

🌳 Tree Traversals

  • Visualizations of:
    • Inorder Traversal
    • Preorder Traversal
    • Postorder Traversal

🔗 Graph Traversals

  • Explore graphs using:
    • Breadth-First Search (BFS)
    • Depth-First Search (DFS)

🚀 Features

  • ✅ Choose and interact with multiple DSA algorithms
  • ✅ Enter custom input or generate random data
  • ✅ Visual representation of how the algorithm works step by step
  • ✅ View corresponding code implementation in real-time
  • ✅ Time & space complexity details for each algorithm
  • ✅ Beautiful, responsive UI with dark/light theme toggle
  • ✅ Easy-to-navigate tabbed layout for quick access to topics
  • Canvas-based visualization with zoom & pan for large arrays (100+ elements)

📦 Getting Started

Prerequisites

  • Node.js (v14 or later)

Installation

  1. Clone the repo:

    git clone https://github.com/your-username/decodedsa.git
    cd decodedsa
    
  2. Install dependencies:

    npm install
    
  3. Start the development server:

    npm start
    
  4. Open http://localhost:3000 to view the app.


💻 Tech Stack

React.js – for dynamic UI

TypeScript – for type-safe development

Tailwind CSS – for modern responsive styling

Konva.js – for drawing canvas-based visual elements (in advanced sections)

Framer Motion – for smooth animations


📊 Algorithm Complexity Table

Algorithm Time Complexity Space Complexity
Bubble Sort O(n²) O(1)
Binary Search O(log n) O(1)
BFS / DFS O(V + E) O(V)
Tree Traversals O(n) O(h)

🧪 Contributing

Want to add new algorithms or improve visuals? You’re welcome to contribute!

  1. Fork this repository

  2. Create your feature branch:

    git checkout -b feature/your-feature
    
  3. Commit your changes:

    git commit -m "Add: your feature"
    
  4. Push to the branch:

    git push origin feature/your-feature
    
  5. Open a Pull Request


Screenshots


🪪 License

This project is licensed under the MIT License. Feel free to use, modify, and distribute with credit.


GitHub Stats

GitHub Repo stars GitHub forks GitHub last commit


👩‍💻 Author

Made with ❤️ by V. Sharanya

  • 🔗 LinkedIn
  • ✨ Feel free to open issues or feature requests!

🛣️ Future Scope

  • Add more advanced algorithms (e.g., Dijkstra's, Kruskal's)
  • Add speed control for visualization
  • Add time complexity animation chart
  • Add sound effects for sorting (fun UX!)
  • Canvas-based zoom & pan for large arrays (100+) - ✅ Completed
  • Aggregated histogram view for very large arrays (1000+)

About

Decode DSA — an interactive and responsive web app designed to visualize core Data Structures and Algorithms (DSA) concepts in a fun, easy-to-understand way.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 98.8%
  • Other 1.2%