npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

wukong-gitlog-cli

v1.0.44

Published

Advanced Git commit log exporter with Excel/JSON/TXT output, grouping, stats and CLI.

Readme

📦 wukong-gitlog-cli

An enhanced Git commit log analysis and export tool. Supports Excel / JSON / TXT output, grouped statistics, overtime culture analysis, Gerrit link integration, and a visual Web Dashboard.

English | 简体中文


✨ Features

  • Multi-format Export: Export Git logs to JSON, Text, or Excel (XLSX).
  • Flexible Grouping: Support grouping by day or month.
  • Overtime Analysis: Analyze daily work hours, holidays, weekends, and cumulative risks.
  • Gerrit Integration: Customizable Gerrit URL templates ({{hash}}, {{changeId}}, {{changeNumber}}).
  • Web Dashboard: Interactive local dashboard with charts and risk summaries.
  • Deduplication: Automatically deduplicate commits by Change-Id.
  • Author Mapping: Support authorAliases to merge different emails/names into one person.

📥 Installation

Install globally (recommended):

npm i -g wukong-gitlog-cli
# or
yarn global add wukong-gitlog-cli

# Run
wukong-gitlog-cli --help

🚀 Quick Start

# Initialize configuration
wukong-gitlog-cli init

# Analyze and start web dashboard
wukong-gitlog-cli serve 

🛠 Commands

The tool is organized into several subcommands:

1. init

Initialize configuration file (.wukonggitlogrc in YAML, JS, or JSON format).

wukong-gitlog-cli init [-f, --force]

2. analyze

Core analysis command. Fetches logs and performs comprehensive analysis.

wukong-gitlog-cli analyze [options]

3. overtime

Focused on overtime culture analysis.

wukong-gitlog-cli overtime [options]

4. export

Focuses on exporting data to different formats.

wukong-gitlog-cli export [options]

5. journal

Generate daily journals/logs.

wukong-gitlog-cli journal [options]

6. serve

Start local Web Dashboard. It automatically runs analysis before starting.

wukong-gitlog-cli serve [--port <n>]

⚙️ Options

Global Options

  • -l, --lang <code>: Set language (en, zh-CN).
  • --debug: Enable debug mode.
  • --info: Show environment info (Git version, OS, etc.).

Git Options (for analyze, overtime, export, journal)

  • --author <name>: Filter by author name.
  • --email <email>: Filter by author email.
  • --since <date>: Start date (e.g., 2025-01-01).
  • --until <date>: End date.
  • --limit <n>: Limit number of commits.
  • --no-merges: Exclude merge commits.
  • --path <path>: Git repository path.

Analysis Options

  • --work-start <hour>: Standard work start hour (default: 9).
  • --work-end <hour>: Standard work end hour (default: 18).
  • --overnight-cutoff <hour>: Hour to cutoff for overnight work (default: 6).
  • --country <code>: Holiday calendar (CN, US, etc.).

Output Options

  • -f, --format <type>: Output format (text, excel, json).
  • --out <file>: Output filename.
  • --out-dir <dir>: Output directory.
  • --stats: Include statistics in Excel.

📊 Web Dashboard

Start the server to view interactive charts:

wukong-gitlog-cli serve

Visit http://localhost:3000 to see:

  • Commit distribution by day/month.
  • Overtime trends and peak hours.
  • Recent 30-day Overtime Risk: Automatically calculates cumulative overtime for the last 30 days and flags risks (Mild, Moderate, Severe).

🔗 Gerrit Support

Use templates in Gerrit URLs:

wukong-gitlog-cli analyze --gerrit "https://gerrit.example.com/c/project/+/{{hash}}"

To use numeric changeNumber, provide the Gerrit API:

wukong-gitlog-cli analyze --gerrit "https://gerrit.example.com/c/project/+/{{changeNumber}}" --gerrit-api https://gerrit.example.com/gerrit

🧾 Author Mapping (authorAliases)

Merge multiple identities in configuration:

authorAliases:
  "[email protected]": "tomatoboy"
  "[email protected]": "tomatoboy"
  "Tom Jacky": "tomatoboy"

📄 License

MIT