Skip to content

Pranavgitty/DSA-OS

Repository files navigation

DSA-OS Banner

🧠 DSA-OS

The Competitive Programming Operating System for Obsidian

Build a structured, distraction-free DSA workflow inside your Obsidian vault.

Status TypeScript Obsidian License


🚀 What is DSA-OS?

DSA-OS is an open-source Obsidian plugin and vault ecosystem designed to help students master Data Structures & Algorithms.

Instead of juggling spreadsheets, browser tabs, scattered notes, and revision schedules, DSA-OS turns your Obsidian vault into a complete learning operating system.

Everything lives in one place:

  • 📚 Problems
  • 📈 Progress
  • 🧠 Revision
  • 📝 Notes
  • 🎯 Patterns
  • ❌ Mistakes

✨ Features

📊 Progress Tracking

  • Overall completion percentage
  • Topic-wise progress
  • Live sidebar dashboard
  • Automatic progress updates

✅ Problem Management

  • One-click Solved / Not Started toggle
  • Revision metadata
  • Confidence tracking
  • Frontmatter-based workflow

📚 Structured Learning

  • Complete Striver A2Z organization
  • Topic folders
  • Templates
  • Pattern Library
  • Mistake tracking

⚡ Native Obsidian Experience

  • Sidebar View
  • Ribbon Icon
  • Command Palette
  • Markdown-first workflow

📸 Screenshots

Dashboard


Sidebar


Vault Structure


Toggle


🗂 Repository Structure

DSA-OS
│
├── plugin/
│   ├── src/
│   ├── manifest.json
│   ├── styles.css
│   └── package.json
│
├── generator/
│   ├── importer/
│   ├── templates/
│   ├── dataset/
│   └── cli.py
│
├── vault/
│   ├── Dashboard/
│   ├── Daily Notes/
│   ├── Striver A2Z/
│   ├── Pattern Library/
│   ├── Revision/
│   ├── Mistakes/
│   └── Templates/
│
└── datasets/

🏗 Architecture

Markdown Notes
        │
        ▼
 VaultService
        │
        ▼
 ProgressService
        │
        ▼
DSA Sidebar

Core Components

  • VaultService
  • ProgressService
  • ProblemToggleService
  • RevisionService
  • ProblemStatusService
  • EventService

🚀 Installation

Clone the repository

git clone https://github.com/Pranavgitty/DSA-OS.git

Install dependencies

cd DSA-OS/plugin
npm install

Build

npm run build

Development

npm run dev

🛣 Roadmap

✅ v0.1.0-alpha

  • Sidebar Dashboard
  • Progress Tracking
  • Topic Progress
  • Solved Workflow
  • Obsidian Integration
  • Revision Metadata

🚧 v0.2.0

  • Pattern Library
  • Mistake Tracker
  • Better Dashboard
  • Search

🚧 v0.3.0

  • Analytics Dashboard
  • GitHub-style Heatmap
  • Weekly Statistics
  • Topic Mastery

🚧 v1.0.0

  • Daily Planner
  • Revision Queue
  • AI Assistance
  • Plugin Marketplace Release

🤝 Contributing

Contributions are welcome!

  1. Fork the repository.
  2. Create a feature branch.
git checkout -b feature/my-feature
  1. Commit your changes.
git commit -m "feat: add awesome feature"
  1. Push your branch.
git push origin feature/my-feature
  1. Open a Pull Request.

📄 License

Licensed under the MIT License.


Made with ❤️ using Obsidian, TypeScript and lots of DSA.

⭐ If you like the project, consider starring the repository!

About

An Obsidian plugin that transforms the Striver A2Z Sheet into a complete DSA learning workspace with revision scheduling, progress tracking, and structured notes.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages