Dastanboard

unlisted

by Dastan Medetbekov

A powerful statistics dashboard for your Obsidian vault. GitHub-style activity heatmaps, link analysis, connectivity scores, tag clouds, writing analytics, and more!

β˜… 2 starsUpdated 1mo ago
View on GitHub

πŸ“Š Dastanboard

Obsidian License TypeScript Version

πŸš€ A powerful statistics dashboard for your Obsidian vault
GitHub-style activity heatmaps β€’ Link analysis β€’ Tag clouds β€’ Writing analytics


✨ Features

πŸ“Š General Statistics

  • Total notes, files, and folders
  • Word counts β€” total, average, and median per note
  • Longest and shortest notes with quick navigation
  • Character and paragraph counts

πŸ”— Link Analysis

  • Internal/external links count and density
  • Connectivity Score β€” measure how well your vault is connected (0-100%)
  • Orphan Notes β€” find isolated notes with no connections
  • Hub Notes β€” discover your most connected notes

πŸ“… Activity Heatmap

  • GitHub-style contribution graph
  • Track your note-taking activity over time
  • Current streak & longest streak tracking
  • Customizable time range (3-24 months)
  • Two styles: GitHub green or warm gradient

🏷️ Tag Statistics

  • Tag Cloud visualization
  • Top tags with bar chart
  • Count of untagged notes
  • Click tags to search

⏱️ Time Analytics

  • Notes created this week/month/year
  • Most active day of the week
  • Creation trends over time

πŸ“ File & Folder Distribution

  • Pie chart of file types (Markdown, images, PDFs, etc.)
  • Bar chart of notes per folder
  • Top folders by note count

🌍 Localization

  • πŸ‡¬πŸ‡§ English (default)
  • πŸ‡·πŸ‡Ί Русский (Russian)

🎨 Customization

  • Three layouts: Grid, List, Compact
  • Theme support: Auto, Light, Dark
  • Toggle individual sections on/off
  • Exclude patterns for templates, daily notes, etc.
  • Auto-open Base on Obsidian startup

πŸš€ Installation

Manual Installation

  1. Download main.js, manifest.json, and styles.css from the latest release
  2. Create folder: <vault>/.obsidian/plugins/dastanboard/
  3. Copy the downloaded files into this folder
  4. Reload Obsidian and enable the plugin

πŸ“– Usage

Opening the Dashboard

  1. Create a Bases file (or open an existing one)

    • Use command palette: Create new Base
    • Or create a file with .base extension
  2. Select Dashboard view

    • Click the view selector in the Bases toolbar
    • Choose "Dastanboard" from the list
  3. Enjoy your statistics!

Settings

Go to Settings β†’ Dastanboard to configure:

SettingDescriptionDefault
LanguageInterface languageEnglish
ThemeColor theme (Auto/Light/Dark)Auto
LayoutCard arrangement styleGrid
Heatmap StyleGitHub green or warm gradientGitHub
Heatmap MonthsTime period to display12
Auto-open BaseOpen specific Base on startup(none)
Exclude PatternsFolders/files to ignore(empty)

πŸ› οΈ Development

# Clone the repository
git clone https://github.com/dastanmedetbekov/dastanboard.git
cd dastanboard

# Install dependencies
npm install

# Build for development (watch mode)
npm run dev

# Build for production
npm run build

Project Structure

dastanboard/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ main.ts              # Plugin entry point
β”‚   β”œβ”€β”€ types.ts             # TypeScript types
β”‚   β”œβ”€β”€ locales.ts           # Translations
β”‚   β”œβ”€β”€ analytics/
β”‚   β”‚   └── VaultAnalyzer.ts # Statistics engine
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ StatsCard.ts     # Stat cards
β”‚   β”‚   β”œβ”€β”€ HeatmapCalendar.ts # Activity heatmap
β”‚   β”‚   β”œβ”€β”€ TagCloud.ts      # Tag cloud
β”‚   β”‚   └── Charts.ts        # Charts & graphs
β”‚   β”œβ”€β”€ views/
β”‚   β”‚   └── DashboardView.ts # Main Bases view
β”‚   └── utils/
β”‚       └── helpers.ts       # Utilities
β”œβ”€β”€ styles.css
β”œβ”€β”€ manifest.json
└── package.json

🀝 Contributing

Contributions are welcome! Feel free to submit a Pull Request.

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

πŸ“„ License

This project is licensed under the GNU General Public License v3.0 β€” see the LICENSE file for details.


πŸ™ Acknowledgments

  • Obsidian team for the amazing app and API
  • The Obsidian community for inspiration

Made with ❀️ by Dastan Medetbekov

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.