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

daily-git-summary

v1.0.0

Published

CLI tool to generate daily git commit summaries for standup meetings

Readme

Daily Git Summary

A CLI tool that generates daily summaries of your git commits for standup meetings. Automatically groups commits by conventional commit type and respects your custom daily reset time of 6:00 PM PHT.

Features

  • Smart Time Range: Defines a "day" as 6:00 PM yesterday to 6:00 PM today (PHT) by default
  • Customizable Times: Set your own start/end times and timezone
  • Organized Storage: Automatically saves to .daily-git-summary/ folder
  • Gitignore Integration: Automatically adds summary folder to .gitignore
  • Conventional Commits: Parses and groups commits by type (feat, fix, refactor, etc.)
  • Markdown Output: Generates beautiful markdown summaries ready for sharing
  • Terminal Display: View summaries directly in your terminal with colored output
  • File Statistics: Shows most changed files and total stats
  • Smart Suggestions: Identifies WIP commits and related issues for planning your day
  • Flexible: Works with any git repository

Installation

Global Installation (Recommended)

# From the project directory
npm install -g .

# Or install from npm
npm install -g daily-git-summary

Local Usage

# Build the project
npm run build

# Run from any git repository
node /path/to/daily-git-summary/dist/cli.js

Usage

Basic Usage

Run from any git repository to generate today's summary:

daily-summary

Or use the short alias:

ds

This will create a file named daily-summary-2026-01-07.md in the .daily-git-summary/ folder and automatically add the folder to .gitignore if not already present.

Options

Options:
  -V, --version                    output the version number
  -d, --date <YYYY-MM-DD>          generate summary for a specific date
  -o, --output <path>              custom output path for the markdown file
  --start-time <HH:MM>             custom start time (24-hour format, default: 18:00)
  --end-time <HH:MM>               custom end time (24-hour format, default: 18:00)
  --timezone <TZ>                  custom timezone (default: Asia/Manila)
  --folder <path>                  folder for summaries (default: .daily-git-summary)
  --no-folder                      save in current directory instead of folder
  --no-file                        print to terminal only, do not save to file
  -v, --verbose                    show debug information
  -h, --help                       display help for command

Examples

Generate summary for today:

daily-summary
# Saves to .daily-git-summary/ and automatically adds to .gitignore

Custom work hours (9 AM to 5 PM):

daily-summary --start-time 09:00 --end-time 17:00

Different timezone:

daily-summary --timezone "America/New_York"

Custom folder location:

daily-summary --folder docs/standups

Legacy behavior (save in current directory):

daily-summary --no-folder

Generate summary for a specific date:

daily-summary --date 2026-01-06

Print to terminal without saving:

daily-summary --no-file

Custom output file (overrides folder):

daily-summary --output my-standup-notes.md

Verbose mode for debugging:

daily-summary --verbose

Output Format

The generated markdown includes:

  • Overview: Time period, commit count, files changed, current branch
  • What I Did Yesterday: Commits grouped by type (Features, Bug Fixes, etc.)
  • Files Most Changed: Top 10 files with change frequency
  • Suggested For Today: Smart suggestions based on WIP commits, current branch, and issue numbers

Sample Output

# Daily Summary - January 7, 2026

## Overview

- **Period**: Jan 6, 6:00 PM - Jan 7, 6:00 PM PHT
- **Commits**: 5
- **Files Changed**: 12
- **Current Branch**: `feature/payment-integration`

## What I Did Yesterday

### Features (2 commits)

- feat(auth): implement JWT refresh token rotation
- feat(api): add pagination to user list endpoint

### Bug Fixes (2 commits)

- fix(payment): resolve race condition in checkout flow
- fix(ui): correct mobile responsive layout issues

### Documentation (1 commit)

- docs: update API documentation for payment endpoints

## Files Most Changed

1. `src/features/auth/hooks/useAuth.ts` (3 changes)
2. `src/features/payment/PaymentFlow.tsx` (2 changes)

## Suggested For Today

- Continue work on branch: `feature/payment-integration`
- Related issues: #123, #456

How It Works

  1. Time Calculation: Converts your configured time (default 6:00 PM PHT) to UTC and calculates the time range
  2. Git Query: Fetches commits from the current repository within the time range
  3. Parsing: Analyzes each commit using conventional commit format
  4. Grouping: Organizes commits by type (feat, fix, refactor, etc.)
  5. File Management: Creates .daily-git-summary/ folder if needed
  6. Generation: Creates a markdown file with all sections and statistics

Conventional Commit Types

The tool recognizes these commit types:

  • feat: New features
  • fix: Bug fixes
  • refactor: Code refactoring
  • perf: Performance improvements
  • docs: Documentation changes
  • style: Code style/formatting
  • test: Tests
  • build: Build system changes
  • ops: Operations/infrastructure
  • chore: Miscellaneous tasks

Commits that don't follow conventional format are grouped under "Other".

Development

Build

npm run build

Watch Mode

npm run dev

Project Structure

daily-git-summary/
├── src/
│   ├── cli.ts          # CLI entry point and command handling
│   ├── git.ts          # Git operations using simple-git
│   ├── parser.ts       # Conventional commit parsing
│   ├── markdown.ts     # Markdown generation
│   ├── time.ts         # Time range calculations with PHT timezone
│   └── types.ts        # TypeScript type definitions
├── bin/
│   └── daily-summary   # Executable symlink
└── dist/               # Compiled JavaScript (generated)

Requirements

  • Node.js >= 16.0.0
  • Git installed and configured
  • A git repository with commits

License

MIT

Author

Created for daily standup meetings to quickly summarize your work.