Skip to content

๐ŸŒŠ AI-powered open source collaboration tool. Interactive CLI to generate contributor guides and visualize technical debt as StarMaps. Lower barriers, boost productivity. ๐ŸŒŠ AI ้ฉฑๅŠจ็š„ๅผ€ๆบๅไฝœๅทฅๅ…ทใ€‚ไบคไบ’ๅผ CLI ็”Ÿๆˆ่ดก็Œฎ่€…ๆŒ‡ๅ—ๅ’ŒๆŠ€ๆœฏๅ€บๅŠกๆ˜Ÿๅ›พใ€‚้™ไฝŽ้—จๆง›๏ผŒๆๅ‡ๆ•ˆ็އใ€‚

Notifications You must be signed in to change notification settings

unitagain/TideScope

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

13 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

IMG_20251120_191504

TideScope Logo

Make Technical Debt Visible, Make Open Source Collaboration Easier

ไธญๆ–‡ๆ–‡ๆกฃ ย |ย  Quick Start ย |ย  Tech Stack ย |ย  Contributing


๐Ÿ’ซ Our Mission

As a beginner, have you ever found an open source project that interests you, but struggled to figure out what you could contribute? Where to start?

As an open source project maintainer, have you ever felt overwhelmed by the flood of PRs and Issues, unsure how to prioritize tasks and manage technical debt?

TideScope is inspired by star maps. By scanning GitHub repositories for Issues, PRs, and TODO comments in code, combined with LLM-powered intelligent analysis to extract required skills and difficulty assessments, it generates an intuitive Technical Debt StarMap. Each task appears as a star, distributed in a polar coordinate system by importance from center to edge, with related PR-Issue pairs forming constellation-like visual clusters.

Through this innovative visualization approach, we aim to help:

  • ๐ŸŒฑ New contributors quickly find tasks matching their skill level
  • ๐ŸŽฏ Project maintainers gain a clear overview of technical debt at a glance
  • ๐Ÿค Team collaboration become more efficient, transparent, and organized

โœจ Core Features

๐ŸŒŒ StarMap Visualization

  • Ranking-Based Golden Angle Spiral Layout - Mathematically optimized distribution algorithm ensures uniform node placement
  • Force-Directed Anti-Overlap Mechanism - Intelligent repulsion algorithm prevents node collisions, keeping the chart clear
  • Constellation-Style Clustering - PRs and Issues automatically form tight constellation groups, intuitively showing relationships
  • Gradient Glow Effects - Modern visual design optimized for dark themes

๐Ÿง  Intelligent Analysis

  • LLM Skill Extraction - Automatically analyzes required tech stacks and skill points for each task
  • Multi-Dimensional Scoring - Comprehensive assessment of priority, difficulty, impact scope, and risk level
  • Smart Recommendations - Generates targeted implementation suggestions for each task
  • Automatic Context - Automatically fetches project README as analysis background

๐ŸŽฏ Developer Friendly

  • One-Click Scanning - Supports both local code and remote GitHub repositories
  • Flexible Configuration - YAML config files for easy customization of scan rules
  • Dual Interface - Web UI + CLI command line to meet different use cases

๐Ÿ–ผ๏ธ Demo

StarMap View

Example using SurfSense project QQ_1763474452961 image

StarMap Features:

  • ๐ŸŽฏ Important tasks in the center circle, priority decreases outward
  • ๐ŸŒŸ Golden lines connect related PRs and Issues, forming "constellations"
  • ๐Ÿ” Hover for details: title, skills, difficulty, recommendations
  • ๐ŸŽจ Glow effects and animations enhance visual experience
  • ๐ŸŒ€ Golden angle spiral distribution, nodes evenly fill the entire space

Task Detail Assessment

Intelligent analysis example

Assessment Content:

  • ๐Ÿ“Š Priority: Auto-calculated (based on labels, update time, relevance)
  • ๐ŸŽ“ Required Skills: LLM auto-extraction (e.g., Docker, Authentication, Database, Backend)
  • ๐Ÿ“ˆ Difficulty: Smart assessment (1-5 scale)
  • ๐Ÿ’ก Recommendations: Specific implementation steps and considerations
  • ๐Ÿ”— Related: Auto-identify related PRs and discussions

๐ŸŽจ Dual System Architecture

TideScope provides two core systems to meet different needs:

1๏ธโƒฃ Badge System - Best Entry Point for New Contributors

Core Value: Lower the barrier to open source contribution, help beginners quickly find suitable tasks

IMG_20251127_150637

๐ŸŽฏ System Features

  • ๐Ÿ“Š Project Health Dashboard

    • Real-time health score (0-100)
    • Project activity trend analysis
    • Open Issues and PR statistics
  • ๐ŸŽ–๏ธ AI-Powered Task Badges

    • Auto-generate beautiful SVG badges
    • Display task title, difficulty, required skills
    • One-click jump to GitHub Issue
  • ๐ŸŒฑ Beginner-Friendly Task List

    • Filter Issues suitable for beginners
    • Categorized by difficulty and skills
    • Includes detailed implementation suggestions
  • ๐Ÿ“ Auto-Generate CONTRIBUTING.md

    • AI analyzes project to generate contribution guide
    • Includes health metrics, recommended tasks, skill distribution
    • Beautiful Markdown format, GitHub-ready

๐Ÿ”ง Technical Implementation

Workflow:

GitHub API โ†’ Data Fetch โ†’ LLM/Rule Analysis โ†’ SVG Generation โ†’ Markdown Rendering

Core Components:

  1. analyzer/smart_analyzer.py - Smart Analyzer

    • Automatically choose LLM or rule-based analysis
    • Extract required skills from Issues
    • Assess task difficulty and priority
  2. utils/hero_badge_generator.py - Hero Badge Generator

    • Generate project health panel
    • Create recommended task badges
    • Support multiple themes and sizes
  3. scripts/generate_contributing.py - Documentation Generator

    • Auto-generate CONTRIBUTING.md
    • Integrate health, tasks, and skill information
    • Support custom templates

Output Files:

badges/
โ”œโ”€โ”€ CONTRIBUTING.md          # AI-generated contribution guide
โ”œโ”€โ”€ README.md                # Project README snippet
โ”œโ”€โ”€ PREVIEW.html             # Local preview page
โ””โ”€โ”€ assets/
    โ”œโ”€โ”€ hero_badge.svg       # Project hero badge
    โ”œโ”€โ”€ health_panel.svg     # Health panel
    โ”œโ”€โ”€ recommended_task.svg # Recommended task badge
    โ””โ”€โ”€ beginner_task_*.svg  # Beginner task badges

๐Ÿ’ก Use Cases

  • โœ… Open Source Maintainers: One-click professional contribution guide
  • โœ… New Contributors: Quickly understand project health and recommended tasks
  • โœ… Team Collaboration: Unified task priority and skill requirements

2๏ธโƒฃ Star Map System - Universe View of Technical Debt

Core Value: Visualize technical debt as a starry sky, making management intuitive and engaging

๐ŸŒŒ System Features

  • Polar Coordinate Layout

    • Based on Golden Angle Spiral (137.5ยฐ)
    • Important tasks in center, priority decreases outward
    • Node size reflects impact scope
  • Constellation-Style Clustering

    • PRs and Issues connected by golden lines forming "constellations"
    • Auto-identify relationships between related tasks
    • Visualize project module division
  • Interactive Exploration

    • Hover to view task details (title, skills, difficulty, recommendations)
    • Click to jump to GitHub
    • Support zoom and pan
  • Multi-Dimensional Analysis

    • Color-coded by difficulty (green-orange-red)
    • Categorized by status (Open/Closed/Merged)
    • Skill tag visualization

๐Ÿ”ง Technical Implementation

Workflow:

GitHub API โ†’ Scan Issues/PRs โ†’ LLM Analysis โ†’ Coordinate Calculation โ†’ ECharts Rendering

Core Components:

  1. scanner/github/client.py - GitHub Data Fetcher

    • Batch fetch Issues and PRs
    • Handle pagination and rate limits
    • Caching mechanism to reduce API calls
  2. analyzer/builder.py - Analysis Engine

    • Multi-dimensional scoring (priority, difficulty, impact)
    • LLM skill extraction and recommendation generation
    • Relationship identification
  3. analyzer/star_map.py - StarMap Coordinate Algorithm

    • Golden angle spiral layout
    • Square root radius mapping
    • Force-directed anti-overlap optimization
  4. web/src/pages/StarMapPage.tsx - Frontend Visualization

    • ECharts polar coordinate chart
    • Interactive nodes and connections
    • Responsive design

Output Files:

reports/
โ”œโ”€โ”€ tidescope-raw.json       # Raw scan data
โ””โ”€โ”€ tidescope-report.json    # Analysis report (with coordinates)

๐Ÿ’ก Use Cases

  • โœ… Project Maintainers: Global view of technical debt management
  • โœ… Team Leads: Identify critical paths and bottlenecks
  • โœ… Product Managers: Understand dev resource allocation
  • โœ… Developers: Find interesting modules and tasks

๐Ÿ› ๏ธ Tech Stack

๐Ÿ Backend Technologies

Technology Version Purpose
Python 3.8+ Core programming language
Pydantic 2.x Data validation and modeling
HTTPX Latest Async HTTP client (GitHub API)
PyYAML Latest Configuration file parsing
python-dotenv Latest Environment variable management
FastAPI Latest REST API framework (Optional, for Web UI)
Typer Latest Advanced CLI tool (Optional)

๐ŸŽจ Frontend Technologies (Web UI)

Technology Version Purpose
React 18 Modern UI framework
TypeScript Latest Type-safe development
Apache ECharts 5.x Data visualization (polar charts)
Ant Design 5.x UI component library
Vite 5.x Fast build tool

๐Ÿค– LLM Integration

Provider Model Notes
Deepseek deepseek-chat Recommended: Cost-effective, relaxed rate limits
OpenAI gpt-4o-mini Alternative: Powerful, higher cost

LLM Analysis Content:

  • Extract required skills (e.g., React, TypeScript, Docker)
  • Assess difficulty (1-5 scale)
  • Generate implementation recommendations

Fallback Strategy:

  • Automatically uses rule-based analysis when no API key
  • System works in any configuration

๐Ÿง  Core Algorithms

StarMap Layout Algorithm

# Golden Angle Spiral Layout
GOLDEN_ANGLE = 137.5  # degrees
angle = i * GOLDEN_ANGLE
radius = sqrt(i / total_count) * max_radius

# Polar to Cartesian conversion
x = radius * cos(angle)
y = radius * sin(angle)

Features:

  • ๐Ÿ“ Golden Angle Spiral (137.5ยฐ) - Nature's optimal distribution
  • ๐Ÿ“ Square Root Radius - Solves sparse outer ring problem
  • ๐Ÿ”„ Force-Directed Optimization - Prevents node overlap
  • ๐ŸŒŸ Constellation Linking - PR-Issue auto-connection

Smart Scoring System

# Multi-dimensional scoring
priority_score = (
    label_weight * 0.4 +      # Label importance
    activity_score * 0.3 +     # Activity level
    age_factor * 0.2 +         # Creation time
    relation_count * 0.1       # Relationship count
)

Scoring Dimensions:

  • ๐Ÿท๏ธ Label weight (bug > feature > enhancement)
  • ๐Ÿ“ˆ Activity (recent updates, comments)
  • โฐ Age factor (freshness decay)
  • ๐Ÿ”— Relationships (PR count, references)

๐Ÿš€ Quick Start

Requirements

  • Python 3.8+
  • GitHub Personal Access Token (for fetching repository data)
  • LLM API Key (Optional, for AI-powered analysis)

๐Ÿ“ฆ Installation

1. Clone the Project

git clone https://github.com/unitagain/TideScope.git
cd TideScope/TideScope-main

2. Install Dependencies

pip install -r requirements.txt

3. Configure Environment Variables

Create a .env file or set environment variables:

# Required: GitHub Token
GITHUB_TOKEN=ghp_your_github_token_here

# Optional: LLM API (for AI analysis)
DEEPSEEK_API_KEY=sk-your-deepseek-key
# Or
OPENAI_API_KEY=sk-your-openai-key

Get GitHub Token: Visit GitHub Settings โ†’ Developer settings โ†’ Personal access tokens

About LLM API:

  • ๐ŸŸข Recommended: Deepseek - Cost-effective, fully compatible with OpenAI API
  • ๐Ÿ”ต OpenAI - Powerful features, higher cost
  • โšช Skip LLM - Still works with rule-based analysis

4. Edit Configuration File

Edit config.yaml to set the repository to analyze:

repository:
  owner: "MODSetter"      # GitHub username or organization
  name: "SurfSense"       # Repository name

analysis:
  use_llm: false          # Whether to use LLM (requires API Key)
  max_issues: 100         # Maximum issues to analyze

๐ŸŽฏ Using Interactive CLI

TideScope provides an interactive CLI interface for easy usage:

python tidescope.py

You'll see:

โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—
โ•šโ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•”โ•โ•โ•โ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•โ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•โ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•”โ•โ•โ•โ•โ•
   โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘  โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—  
   โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘  โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•”โ•โ•โ•  โ•šโ•โ•โ•โ•โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•”โ•โ•โ•โ• โ–ˆโ–ˆโ•”โ•โ•โ•  
   โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•‘โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—
   โ•šโ•โ•   โ•šโ•โ•โ•šโ•โ•โ•โ•โ•โ• โ•šโ•โ•โ•โ•โ•โ•โ•โ•šโ•โ•โ•โ•โ•โ•โ• โ•šโ•โ•โ•โ•โ•โ• โ•šโ•โ•โ•โ•โ•โ• โ•šโ•โ•     โ•šโ•โ•โ•โ•โ•โ•โ•

        ๐ŸŒŠ AI-Powered Technical Debt Analyzer v2.0 ๐ŸŒŠ

๐Ÿ“‹ What would you like to generate?

  1๏ธโƒฃ  Star Map (Technical Debt Visualization)
  2๏ธโƒฃ  Badge System (AI-Powered Contributor Guide)
  3๏ธโƒฃ  Both (Complete Analysis)
  0๏ธโƒฃ  Exit

๐Ÿ‘‰ Select an option (0-3):

Option Description

1๏ธโƒฃ Star Map

  • Generates technical debt visualization JSON report
  • Output: reports/tidescope-raw.json and tidescope-report.json
  • Purpose: Analyze technical debt distribution

2๏ธโƒฃ Badge System

  • Generates AI-powered contributor guide
  • Output: badges/CONTRIBUTING.md and SVG badge files
  • Purpose: Help new contributors get started quickly

3๏ธโƒฃ Both

  • Run both Star Map and Badge System
  • Complete project analysis

๐ŸŒ Using Web UI to View StarMap

Prerequisites:

  • Node.js 16+ installed
  • StarMap report generated (Option 1 or 3)

Steps:

# 1. Install frontend dependencies (first time only)
cd web
npm install

# 2. Start backend API (new terminal)
cd ..
python -m api.main

# 3. Start frontend dev server (new terminal)
cd web
npm run dev

Visit: http://localhost:5173

You'll see:

  • ๐ŸŒŒ StarMap Visualization: Polar coordinate distribution of technical debt
  • ๐ŸŽฏ Task Details: Click nodes for detailed information
  • ๐Ÿ”— Relationship Analysis: Lines connecting PRs and Issues
  • ๐Ÿ“Š Statistics Panel: Project health and trends

๐Ÿค Contributing

We warmly welcome all forms of contributions! Whether you:

  • ๐Ÿ› Found a bug
  • ๐Ÿ’ก Have a new feature idea
  • ๐Ÿ“ Want to improve documentation
  • ๐ŸŽจ Optimize UI/UX
  • ๐Ÿงช Add test cases

You can participate in TideScope's development!

Contribution Process

  1. ๐Ÿ’ฌ Discuss Your Idea First

    • Before submitting code, please create an Issue
    • Describe your idea, problem encountered, or improvement suggestions
    • Wait for project maintainers to respond and discuss feasibility
  2. โœ… Start Development After Being Assigned

    • After the Issue discussion is approved, maintainers will assign the Issue to you
    • This indicates you can start implementing the feature or fix
    • Avoids duplicate work and ensures work has a clear direction
  3. ๐Ÿ”ง Fork and Create Branch

    # Fork this repository to your account
    # Then clone your fork
    git clone https://github.com/unitagain/TideScope.git
    cd TideScope/TideScope-main
    
    # Create feature branch
    git checkout -b feature/your-feature-name
    # Or fix branch
    git checkout -b fix/bug-description
  4. ๐Ÿ’ป Develop

    • Follow existing code style
    • Add necessary comments and documentation
    • Ensure code runs correctly
  5. โœ… Test Your Changes

    # Backend tests
    python -m pytest  # (Test cases to be added)
    
    # Frontend tests
    cd web
    npm run build  # Ensure successful build
  6. ๐Ÿ“ค Submit Pull Request

    git add .
    git commit -m "feat: added xxx feature"
    # or
    git commit -m "fix: fixed xxx issue"
    
    git push origin feature/your-feature-name

    Then create a Pull Request on GitHub:

    • Clearly describe what you did
    • Link related Issue (use Fixes #123)
    • If there are UI changes, attach screenshots
  7. ๐Ÿ”„ Code Review and Merge

    • Maintainers will review your code
    • May suggest some modifications
    • Once approved, your PR will be merged! ๐ŸŽ‰

Commit Message Convention

Please use semantic commit messages:

  • feat: new feature
  • fix: bug fix
  • docs: documentation update
  • style: code format (no functional impact)
  • refactor: refactoring (no functional change)
  • perf: performance optimization
  • test: add tests
  • chore: build/tool related

Examples:

feat: add task filtering by difficulty
fix: fix StarMap node overlap issue
docs: update Chinese README installation instructions

Development Suggestions

  • ๐Ÿ’ก Small Commits: Break features into small, testable parts
  • ๐Ÿ“– Sync Docs: Keep code and documentation in sync
  • ๐ŸŽฏ Stay Focused: One PR should do one thing
  • ๐Ÿค Active Communication: Feel free to discuss in Issues

๐ŸŽฏ Future Development Goals

TideScope is currently in early stages, and we have many exciting plans:

Near-term Goals (v0.2 - v0.3)

๐Ÿ“ฑ One-Click Generation Website

  • ๐ŸŒ Online Service: Provide a website where users simply input a GitHub repository URL to generate StarMaps online
  • โšก Real-time Analysis: No local installation needed, view results directly in browser
  • ๐Ÿ”— Shareable Links: Generate shareable StarMap links for easy team collaboration
  • ๐Ÿ“Š Historical Records: Track changes in project technical debt over time

Technical Approach:

  • Backend: Cloud functions + message queue to process scan tasks
  • Frontend: Static deployment, dynamic data loading
  • Storage: GitHub repository data caching to avoid repeated requests

๐ŸŽจ More Visualization Views

In addition to the StarMap, we plan to add:

  1. Timeline View

    • X-axis for time, Y-axis for priority
    • Show creation, update, close times of Issues/PRs
    • Identify long-standing unaddressed technical debt
  2. Relationship Network Graph

    • Show connections between Issues, PRs, and contributors
    • Identify core contributors and key nodes
    • Discover potential collaboration opportunities
  3. Skill Radar Chart

    • Visualize distribution of required skills in the project
    • Help new contributors understand what to learn
    • Identify team skill gaps
  4. Health Dashboard

    • Technical debt volume trends
    • Issue response time
    • PR merge speed
    • Contributor activity

Mid-term Goals (v0.4 - v0.6)

๐Ÿค– AI Assistant Features

  • Smart Recommendations: Recommend suitable tasks based on user skills and experience
  • Auto-Assignment: AI-assisted Issue assignment to appropriate developers
  • Risk Alerts: Identify high-risk, long-standing technical debt

๐Ÿ”— Integrations and Extensions

  • GitHub App: One-click installation, automatic repository data sync
  • Slack/Discord Bot: Team notifications and quick queries
  • VS Code Extension: View project StarMap within IDE
  • CI/CD Integration: Auto-assess technical debt impact in PRs

Long-term Vision

๐ŸŒ Become the Standard Tool for Open Source Collaboration

  • Help developers worldwide participate in open source projects more efficiently
  • Lower the barrier to open source contributions
  • Make technical debt management intuitive and fun

๐Ÿ’ก We Need Your Participation!

Achieving these goals requires community strength. Whether you're skilled in:

  • Frontend development (React, ECharts)
  • Backend development (Python, FastAPI)
  • Algorithm optimization (visualization layouts)
  • UI/UX design
  • Documentation writing
  • Test case development

You're welcome to join us!

Let's create better open source collaboration tools together! ๐Ÿš€


๐Ÿ“š Project Structure

TideScope-main/
โ”œโ”€โ”€ tidescope.py           # ๐ŸŽฏ Interactive CLI main entry
โ”œโ”€โ”€ generate_badges.py     # ๐ŸŽจ Badge generation CLI tool
โ”œโ”€โ”€ config.yaml            # โš™๏ธ Project configuration file
โ”‚
โ”œโ”€โ”€ analyzer/              # ๐Ÿง  Analysis Engine
โ”‚   โ”œโ”€โ”€ smart_analyzer.py  # Smart analyzer (LLM/Rule switching)
โ”‚   โ”œโ”€โ”€ builder.py         # Report builder
โ”‚   โ”œโ”€โ”€ llm_client.py      # LLM API client (Deepseek/OpenAI support)
โ”‚   โ”œโ”€โ”€ models.py          # Data models (DebtItem, AnalysisReport)
โ”‚   โ”œโ”€โ”€ rules.py           # Rule-based scoring engine
โ”‚   โ””โ”€โ”€ star_map.py        # StarMap coordinate calculation (Golden Angle Spiral)
โ”‚
โ”œโ”€โ”€ scanner/               # ๐Ÿ” Data Scanner
โ”‚   โ”œโ”€โ”€ github/
โ”‚   โ”‚   โ”œโ”€โ”€ client.py      # GitHub API client
โ”‚   โ”‚   โ””โ”€โ”€ __init__.py    # Data fetch interface
โ”‚   โ”œโ”€โ”€ code/              # Code TODO scanner
โ”‚   โ”‚   โ””โ”€โ”€ todo_scanner.py
โ”‚   โ”œโ”€โ”€ models.py          # Scan data models
โ”‚   โ”œโ”€โ”€ runner.py          # Scan orchestration
โ”‚   โ””โ”€โ”€ config_loader.py   # Configuration loader
โ”‚
โ”œโ”€โ”€ utils/                 # ๐Ÿ› ๏ธ Utilities
โ”‚   โ”œโ”€โ”€ github_helper.py   # GitHub data fetching
โ”‚   โ”œโ”€โ”€ hero_badge_generator.py     # Hero badge generation
โ”‚   โ”œโ”€โ”€ analysis_panel_generator.py # Analysis panel generation
โ”‚   โ”œโ”€โ”€ svg_badge_generator.py      # SVG badge utilities
โ”‚   โ”œโ”€โ”€ task_badge_generator.py     # Task badge generation
โ”‚   โ””โ”€โ”€ cache_manager.py   # Cache management
โ”‚
โ”œโ”€โ”€ scripts/               # ๐Ÿ“ Script Tools
โ”‚   โ””โ”€โ”€ generate_contributing.py # CONTRIBUTING.md generator
โ”‚
โ”œโ”€โ”€ api/                   # ๐ŸŒ REST API
โ”‚   โ””โ”€โ”€ main.py            # FastAPI application (for Web UI)
โ”‚
โ”œโ”€โ”€ cli/                   # ๐Ÿ’ป Traditional CLI Tool
โ”‚   โ””โ”€โ”€ main.py            # Typer CLI (advanced usage)
โ”‚
โ”œโ”€โ”€ web/                   # ๐ŸŽจ Frontend Application
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ components/    # React components
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ Logo.tsx   # Logo component
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ AppLayout.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ pages/
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ StarMapPage.tsx  # StarMap visualization page
โ”‚   โ”‚   โ””โ”€โ”€ main.tsx       # Entry file
โ”‚   โ””โ”€โ”€ public/            # Static assets
โ”‚       โ”œโ”€โ”€ logo-option-1.svg
โ”‚       โ””โ”€โ”€ favicon.svg
โ”‚
โ””โ”€โ”€ config/                # ๐Ÿ“‹ Configuration Templates (legacy)
    โ””โ”€โ”€ tidescope.config.yaml

๐Ÿ”‘ Key Files

File Purpose Key Features
tidescope.py CLI main entry Interactive menu, generate StarMap/Badges
generate_badges.py Badge generation tool Direct CLI badge generation
config.yaml Configuration file Repository info, analysis settings, LLM config
analyzer/smart_analyzer.py Smart analysis Auto-select LLM or rule-based analysis
analyzer/builder.py Report building Integrate scan data, generate analysis report
scanner/github/client.py GitHub fetching Get Issues/PRs, handle rate limits
utils/hero_badge_generator.py Badge generation Generate health, recommended task SVGs
scripts/generate_contributing.py Doc generation Auto-generate CONTRIBUTING.md

๐Ÿ“„ License

This project is licensed under the MIT License.


๐Ÿ™ Acknowledgments

  • Thanks to all developers who contributed to TideScope
  • Logo design inspired by Vercel, Next.js, Tailwind CSS
  • StarMap layout algorithm references nature's golden angle spiral distribution
  • Thanks to the ECharts team for their powerful visualization library

๐Ÿ“ž Contact Us


If TideScope helps you, please give us a โญ Star!

Let's make open source collaboration better together!


Made with โค๏ธ and โ˜• by TideScope Team

About

๐ŸŒŠ AI-powered open source collaboration tool. Interactive CLI to generate contributor guides and visualize technical debt as StarMaps. Lower barriers, boost productivity. ๐ŸŒŠ AI ้ฉฑๅŠจ็š„ๅผ€ๆบๅไฝœๅทฅๅ…ทใ€‚ไบคไบ’ๅผ CLI ็”Ÿๆˆ่ดก็Œฎ่€…ๆŒ‡ๅ—ๅ’ŒๆŠ€ๆœฏๅ€บๅŠกๆ˜Ÿๅ›พใ€‚้™ไฝŽ้—จๆง›๏ผŒๆๅ‡ๆ•ˆ็އใ€‚

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published