Danbooru Insights (formerly Danbooru Grass) is a comprehensive analytics suite for Danbooru users and tags. It injects GitHub-style contribution graphs and advanced dashboards directly into profile and wiki pages, with full support for both desktop and mobile.
The script consists of three main components:
- GrassApp: Visualizes user contributions (Uploads, Approvals, Notes) on a GitHub-like calendar heatmap with support for hourly activity analysis, 12 themes, and per-theme grass color palettes.
- UserAnalyticsApp: Provides deep insights into a user's posting habits, including milestones, tag usage, tag cloud, created tags discovery, post scores with downvote filtering, and extensive distribution charts.
- TagAnalyticsApp: A specialized dashboard for Artist, Copyright, and Character tags. It analyzes extensive data including historical trends, popular posts, active uploaders/approvers, and milestones for any specific tag.
Installation
- Chrome/Firefox: Install Tampermonkey
Project page
Main script
Wiki
- TBA
Usage notes
- Where it runs
- Profile pages (
/users/*,/profile): GrassApp (contribution graph) + UserAnalyticsApp (π button next to username). - Wiki pages (
/wiki_pages/*) and Artist pages (/artists/*): TagAnalyticsApp (π button next to tag name).
- First-time setup
- GrassApp loads automatically on profile pages β no action needed.
- UserAnalyticsApp: Click the π button next to the username. A one-time data sync runs on first use. Posts β€1,200 sync instantly; larger accounts may take a few minutes. You can close the modal β sync continues in the background.
- TagAnalyticsApp: Click the π button on a wiki or artist page. Data is fetched on first click and cached for 24 hours.
- Settings (βοΈ)
- 12 themes (6 light / 6 dark), each with 4 selectable grass color palettes (48 total). Click an active theme icon to open the palette flyout.
- Contribution thresholds: Customize the 4-level color scale per metric (Uploads / Approvals / Notes).
- Settings are saved per-user in localStorage.
- Data & Caching
- Post metadata is cached locally in IndexedDB (Dexie.js) β no re-fetching on revisit.
- TagAnalyticsApp cache expires after 24h or when post count changes significantly (threshold configurable via βοΈ).
- Use the ποΈ button inside the dashboard to full-reset and re-fetch.
- Stale data for inactive users is auto-cleaned after 14 days.
- API calls are rate-limited to 6 req/s (Token Bucket) to comply with Danbooru rate limits.
Final
Any suggestions or feedback is appreciated.
Latest edits
- (2026-04-21)
- Version 9.3.0 β GrassApp magnet snap-to-edge resize, structured logging with dual-gated logger & toast notifications, mobile diagnostic overlay, v9.2.4 cache revalidation, mobile layout fixes (stats clipping, scatter filter overlap, milestones grid, tap-only tooltip), DataManager integrity test coverage (30 cases, 185 total).
Versions
Show
- (2025-12-12)
- Version 1.0 - Initial release of Danbooru Grass β GitHub-style contribution graph using d3.v7 and cal-heatmap with Dexie.js local caching.
- (2025-12-13)
- Version 2.0 - Added Notes and Approvals metric modes alongside Uploads.
- (2025-12-14)
- Version 3.0 - Introduced a theme system with light/dark presets and a custom contribution threshold editor.
- (2025-12-14)
- Version 3.1 - Added new color themes (Aurora, Solarized, Ice) and improved label/scrollbar coloring per theme.
- (2025-12-24)
- Version 4.0 - Rebranded to Danbooru Insights; added Analytics Dashboard with Tag Distribution, Milestones, Scatter Plot, and improved sync.
- (2025-12-24)
- Version 4.2 - Incremental bug fixes and UX improvements.
- (2025-12-27)
- Version 4.4 - Refined Milestone tracking, Monthly Activity chart, and Post Performance analytics.
- (2026-01-01)
- Version 4.5 - Fixed new year / January 1st edge cases in GrassApp date calculation.
- (2026-01-11)
- Version 5.0 - Advanced Approvals Tracking with exact Post ID logging and Hourly Activity heatmap.
- (2026-01-18)
- Version 5.1 - Character Bubble Chart (Jaccard Similarity) and Hair Length/Color analysis tabs in the Pie Chart.
- (2026-01-18)
- Version 5.2 - Enhanced sync stability for large datasets and refined thumbnail selection logic.
- (2026-01-26)
- Version 5.3 - Overhauled Approvals to use /post_approvals.json with server-side filtering for a major speed improvement.
- (2026-02-10)
- Version 6.0 - Launched TagAnalyticsApp with full analytics support for any Tag, Artist, Copyright, or Character.
- (2026-02-11)
- Version 6.1 - Resizable and movable GrassApp layout with per-user IndexedDB storage; added multi-booru compatibility.
- (2026-02-16)
- Version 6.2 - Dynamic level-tier username colors, fixed hourly uploads distribution, added commentary support for small tags.
- (2026-02-17)
- Version 6.3 - Pill-style pie chart tabs, post dropdown menus (Most/Recent Popular, Random), and Token Bucket rate limiter (6 req/s).
- (2026-02-17)
- Version 6.4 included a general UI cleanup and thumbnail optimization for a smoother experience.
- (2026-02-23)
- Version 6.5 which includes a structural UI overhaul and performance optimizations for TagAnalyticsApp.
- (2026-03-04)
- Version 7.0.0 which is a full TypeScript migration of the codebase with no user-facing changes.
- (2026-03-10)
- Version 7.1.0 β security hardening, bug fixes, and internal performance improvements with no user-facing breaking changes.
- (2026-03-10)
- Version 7.2.0 β granular G/S/Q/E rating tabs, unified chronological user history timeline, and thumbnail fetch fixes.
- (2026-04-04)
- Version 7.3.0 β Tag Cloud widget (d3-cloud word cloud with 4 category tabs and log-scale sizing).
- (2026-04-04)
- Version 7.4.0 β Created Tags widget (NNTBot forum parsing, previous username detection, alias status).
- (2026-04-04)
- Version 7.5.0 β Gender/Commentary/Translation pie chart tabs, 2-row tab layout, scatter plot drag range display, Repdigit milestones.
- (2026-04-04)
- Version 8.0.0 β 3 new themes (Lavender/Monokai/Ember), grass color picker (48 palettes), architecture separation, 112 tests, thumbnail loading fix.
- (2026-04-07)
- Version 8.1.0 β Cross-tab rate coordination via BroadcastChannel, global 429 backoff, error page guard, shared rate limiter per tab.
- (2026-04-11)
- Version 9.0.0 β Full mobile support, scatter plot overhaul (Y=10 click, downvote filter, hover preview), next milestone card, DB schema v10 with auto backfill, and project moved to its own dedicated repository.
- (2026-04-13)
- Version 9.1.0 β UserAnalyticsApp/ TagAnalyticsApp Dashboard dark mode (Auto/Light/Dark), GrassApp delta-fetch performance fix (~2,100 ms β ~300 ms), strict ESLint posture.
- (2026-04-17)
- Version 9.2.0 β GrassApp vertical drag layout (inline β below with per-mode persistence), UserAnalyticsApp stale-while-revalidate render caching, GrassApp natural-width fit & stats max-width fix for long Previous Names.
- (2026-04-21)
- Version 9.3.0 β GrassApp magnet snap-to-edge resize, structured logging with dual-gated logger & toast notifications, mobile diagnostic overlay, v9.2.4 cache revalidation, mobile layout fixes (stats clipping, scatter filter overlap, milestones grid, tap-only tooltip), DataManager integrity test coverage (30 cases, 185 total).
Updated by AkaringoP













