MCPcopy Index your code
hub / github.com/caigg188/LDStatusPro

github.com/caigg188/LDStatusPro @v3.9.0.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v3.9.0.1 ↗ · + Follow
1,069 symbols 2,875 edges 45 files 45 documented · 4%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

LDStatus Pro Logo

# 🚀 LDStatus Pro

Linux.do & IDCFlare Community Enhancement Tool - Trust Level Tracking · Reading Stats · Cloud Sync · Leaderboard

Version License Tampermonkey Multi-Site Mobile Code Size Stars

🌐 Website | 📖 Documentation | 🔄 Changelog

简体中文 | English | 繁體中文


🌟 Core Features

### ☁️ Cloud Data Sync - **Cross-browser Sync** - Chrome / Firefox / Edge / Safari - **Cross-device Sync** - Desktop / Laptop / Tablet / Mobile - **Smart Data Merge** - Auto keeps higher value per day - **365-day History Recovery** - Auto restore on new devices - **Upgrade History Sync** - Supported for all user levels ### 🏆 Reading Leaderboard - **Three Rankings** - Daily / Weekly / Monthly - **Top 50** - Shows top 50 by reading time - **Privacy First** - Opt-in participation - **Gold/Silver/Bronze** - Special display for top 3 - **Manual Refresh** - 5-min cooldown, independent per board
### ⏱️ Reading Time System - **Up to 10 Reading Levels** - Progressive achievement system - **Smart Activity Detection** - Auto pause after 60s idle - **Dynamic Visual Feedback** - Color changes with intensity - **Server Configurable** - Admin can adjust level thresholds - **24-hour Local Cache** - Works offline too ### 📊 Trust Level Tracking - **Real-time Progress** - Intuitive circular progress bar - **Multi-dimensional Stats** - Topics/Posts/Likes/Replies - **Smart Change Markers** - Real-time highlight for changes - **365-day Trend Analysis** - Heatmap/Line/Bar charts - **Milestone Notifications** - Level 5 achievement alerts
### 🍉 Thread Summarizer - **AI Thread Summary** - One-click summary, brief/detailed modes - **Follow-up Chat** - Continue asking based on summary - **Streaming Output** - Real-time AI response display - **History Records** - Save summaries, view/copy/delete - **Custom Prompts** - Personalize AI behavior ### 🍟 LDC Credits - **Balance View** - Show credit.linux.do balance - **Daily Estimate** - Estimate earnings based on L-site changes - **7-day Stats** - Weekly income/expense trend chart - **Transaction Records** - Filter by time/type - **❤️ Donation Support** - 2/5/10/50 LDC tiers
### 📋 My Activity - **Reading History** - Quick review of browsed topics - **Bookmark Manager** - View all bookmarks at once - **Reply Records** - View reply content and time - **Interactions** - View Discourse Reactions records - **Like History** - Review liked content - **🔍 Search** - Title/tag search support ### 🏪 LD Store - **Exchange Hub** - Virtual items and services exchange platform - **CDK Auto Delivery** - Auto receive CDK after exchange - **Category Browse** - AI/Storage/VPS/Consulting/Subscriptions/SMS/Services/Shop - **Order Tracking** - View exchange records and status - **Merchant Portal** - Bind LDC account to publish listings
### 🔑 CDK Panel - **User Info** - Avatar, nickname, trust level, CDK score - **Claim Records** - View claimed CDK projects - **Project Details** - Name, description, remaining, requirements - **One-click Copy** - Quick copy CDK content - **Waterfall Loading** - Smooth data loading experience ### 🎫 Feedback Tickets - **Quick Feedback** - One-click ticket submission - **Multiple Types** - Feature Request / Bug Report - **Two-way Communication** - User and admin replies - **Unread Notifications** - Red dot for new replies

🌐 Supported Sites

Site Trust Level Reading Stats Cloud Sync Leaderboard
Linux.do
IDCFlare

Both sites have identical features, independent OAuth authentication, isolated data


📱 Cross-Platform Compatible

Responsive Design

  • Large Screens (≥1920px) - 340px panel width, larger fonts
  • Medium Screens (≤768px) - Smart right-align, 280px width
  • Small Devices (≤480px) - Compact layout, 260px width
  • Short Screens (≤500px) - Auto hide non-essential elements

Mobile Support

  • ✅ Touch drag to move panel
  • ✅ Draggable in collapsed state
  • ✅ Adaptive fonts and spacing
  • ✅ Optimized touch targets

🎨 UI/UX Design

New Visual Experience

  • 🎉 100% Completion Celebration - Confetti animation on progress complete
  • Level Badge Animation - 360° flip on hover + gradient flow
  • 🌈 Level-specific Colors - Lv1 Gray/Lv2 Blue/Lv3 Teal/Lv4 Gold-Orange-Red
  • 🎨 Glassmorphism Design - Frosted glass effect + glowing borders
  • 💫 Micro-interactions - Hover lift/elastic scale/enhanced shadows

Theme System

  • 🌙 Dark Theme - Deep background + glass cards
  • ☀️ Light Theme - Transparent white + elegant shadows
  • 🔄 One-click Switch - Auto remembers user preference

🔐 Security & Privacy

Feature Description
Local Storage Data stored in browser, no forced uploads
OAuth Authentication Secure login with official accounts
XSS Protection Full input validation and escaping front & back
SQL Injection Protection Parameterized queries throughout
User Choice Cloud sync/leaderboard are opt-in
Easy Exit Can leave leaderboard or logout anytime
Data Isolation Multi-account/multi-site independent storage

⚡ Quick Start

1. Install Userscript Manager

Browser Recommended Install Link
Chrome/Edge Tampermonkey Chrome Store
Firefox Tampermonkey Firefox Add-ons
Safari (macOS) Tampermonkey App Store
Safari (iOS) Stay App Store

2. Install Script

Method Description Link
🚀 GitHub Direct Latest version, instant updates Install Now
📦 GreasyFork Alternative source, auto sync GreasyFork Page

3. Start Using

  • Visit Linux.do or IDCFlare
  • Panel appears automatically at bottom right
  • Login to enable cloud sync and leaderboard
  • Access "LD Store" from the LDC Credits panel

📊 Reading Level System

Level Icon Range Color
Just Started 🌱 0-30 min Gray
Warming Up 📖 30-90 min Blue
Getting Into It 📚 90-180 min Green
Immersed 🔥 180-300 min Yellow
Deep Learning 300-450 min Orange
LD Expert 🏆 450-600 min Purple
Super Reader 👑 600+ min Pink

💡 Admins can customize level thresholds and names in backend "System Settings"


🛠️ Technical Architecture

LDStatusPro/
├── LDStatusPro.user.js    # Client Script (Tampermonkey)
├── backend/               # Backend Service (Cloudflare Workers)
│   ├── src/              # Source Code (routes, services, middleware)
│   ├── scripts/          # Database Migration Scripts
│   ├── docs/             # API Documentation
│   └── wrangler.toml     # Workers Config
├── admin-panel/          # Admin Panel (Vue.js)
│   ├── src/              # Frontend Source
│   ├── views/            # Page Components
│   └── stores/           # Pinia State Management
├── website/              # Official Website (React + TypeScript)
│   ├── src/              # Source Code
│   └── hooks/            # Dynamic Data Hooks
└── docs/                 # Project Documentation
    └── technicaDocs/     # Technical Docs

Tech Stack

  • Client: Native JavaScript, zero dependencies, 16000+ lines of code
  • Backend: Cloudflare Workers + D1 Database + R2 Storage
  • Admin Panel: Vue 3 + Pinia + Vue Router 4 + Tailwind CSS
  • Website: React 19 + TypeScript + Framer Motion + Tailwind CSS 4
  • Auth: OAuth 2.0 (Super Admin + Sub-admin dual authentication)

Backend Architecture

  • Cache Layers: HTTP Cache → D1 Cache → Memory Buffer → D1 Tables
  • Data Buffer: Smart batch writes, reduced DB pressure
  • Cron Jobs: Cron Triggers for pre-computed leaderboards
  • Backup System: R2 object storage, auto cleanup
  • Security: 429 rate limiting + IP blacklist + honeypot detection

Performance Optimizations

  • LRU cache for historical data aggregation
  • Batch write merging for storage operations
  • API response cache + request deduplication + data buffering
  • Async rendering to avoid UI blocking
  • Exponential backoff retry mechanism
  • Global request queue to prevent 429

📋 Changelog

v3.5.4.x 🏪 LD Store

🏪 Virtual Item Exchange Hub

  • 💳 LDC Credit Exchange - Exchange virtual items and services with LDC credits
  • 📦 CDK Auto Delivery - Auto receive CDK after exchange, one-click copy
  • 👤 Merchant Portal - Bind LDC account to publish exchange listings
  • 📋 Order Tracking - View exchange records and status
  • 🔑 CDK Management - Merchants can bulk add, view, copy CDK

🛡️ Security Hardening

  • 🔒 XSS Protection Enhanced - Fixed unescaped product names in dialogs
  • 🔐 CDK Race Condition Fixed - Atomic UPDATE to prevent overselling
  • 💉 SQL Injection Protection - Parameterized queries throughout

🎨 UI/UX Improvements

  • 🖼️ Detail page optimization - 16:9 image ratio, larger description area
  • 📜 List scroll memory - Restores scroll position when returning to list
  • ⚠️ Rejection/delist reason display - Shows reasons in My Listings

v3.5.2.x 🔑 CDK Panel & Request Optimization

🔑 New CDK Panel

  • Integrated CDK panel on cdk.linux.do page
  • View user info, claim records, project details

⚡ Request Optimization

  • 🚦 Global request queue - 300ms minimum interval to prevent 429
  • ⏱️ 429 rate limit cooldown - No new requests for 2 minutes
  • 💬 Error message improvements - Smart error type detection, friendly tips

v3.5.0.x 🎉 Core Features

✨ Thread Summarizer

  • 🍉 AI Thread Summary / 📜 History Records / ✏️ Custom Prompts / 💬 Follow-up Chat

📋 My Activity

  • 📖 Read / ⭐ Bookmarks / 💬 Replies / ❤️ Liked / 📝 My Topics / 🔍 Search

🍟 LDC Credits

  • 💰 Balance / 📊 7-day Stats / 📈 Daily Estimate / ❤️ Donation Support

View Full Changelog


❓ FAQ

❗ Panel not showing?

If the panel doesn't appear after installation, try these steps:

  1. Enable Browser Developer Mode

  2. Chrome/Edge: Open chrome://extensions/, enable "Developer mode" at top right

  3. Firefox: Open about:debugging, no extra settings needed

  4. Check Tampermonkey Settings

  5. Click Tampermonkey icon → Dashboard

  6. Find LDStatus Pro script, ensure it's enabled (switch is ON)
  7. Go to "Settings" → Ensure "Allowed permissions for user scripts" is correct

  8. Refresh the Page

  9. After completing above settings, refresh Linux.do or IDCFlare page
  10. Panel should appear at bottom right

💡 If still not showing, try disabling other potentially conflicting extensions

🦊 Firefox login fails?

Some Firefox users may experience OAuth login failures due to privacy settings (authorization succeeds but panel doesn't update). Try these steps:

  1. Check Enhanced Tracking Protection

  2. Open about:preferences#privacy

  3. If set to "Strict", try changing to "Standard"

  4. Check Container Tabs (if using Multi-Account Containers extension)

  5. Ensure auth popup and main page are in the same container

  6. Or temporarily login in a regular tab without containers

  7. Check Third-party Cookie Settings

  8. Ensure third-party cookies aren't completely blocked
  9. Check in about:preferences#privacy → "Cookies and Site Data"

💡 Chrome, Edge, and other browsers usually don't have this issue

📊 Why isn't reading time increasing?

  • The script detects mouse movement, scrolling, cl

Extension points exported contracts — how you extend this code

LogoProps (Interface)
(no doc)
website/src/components/Logo.tsx
Particle (Interface)
(no doc)
website/src/components/Levels.tsx
ClickEffect (Interface)
(no doc)
website/src/components/Levels.tsx
ConfettiParticle (Interface)
(no doc)
website/src/components/Features.tsx
Achievement (Interface)
(no doc)
website/src/pages/AnnualReport2025.tsx

Core symbols most depended-on inside this repo

get
called by 125
LDStatusPro.user.js
set
called by 114
LDStatusPro.user.js
join
called by 59
LDStatusPro.user.js
showToast
called by 53
LDStatusPro.user.js
has
called by 42
LDStatusPro.user.js
isLoggedIn
called by 35
LDStatusPro.user.js
setGlobalNow
called by 33
LDStatusPro.user.js
getGlobal
called by 30
LDStatusPro.user.js

Shape

Method 571
Function 453
Class 38
Interface 7

Languages

TypeScript100%

Modules by API surface

LDStatusPro.user.js683 symbols
ld-store/src/stores/shop.js66 symbols
ld-store/src/utils/avatar.js47 symbols
ld-store/public/_worker.js31 symbols
ld-store/src/services/shop/catalogService.js22 symbols
website/src/pages/AnnualReport2025.tsx21 symbols
ld-store/src/utils/shopProduct.js19 symbols
ld-store/src/services/shop/orderService.js17 symbols
ld-store/src/config/maintenance.js17 symbols
ld-store/src/utils/security.js16 symbols
ld-store/src/utils/api.js13 symbols
ld-store/src/services/shop/inventoryService.js13 symbols

For agents

$ claude mcp add LDStatusPro \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact