microsoft/flint-chartPublic

🪄 Flint is a visualization language that lets AI agents reliably create expressive, good-looking charts from simple, human-editable chart specs.

AI summary: A visualization intermediate language that lets AI agents create expressive charts from simple specs.

Stars
3.5K
+47 today
Forks
180
Watchers
10
Open issues
9
Open PRs
15
Contributors
~10
Commits
344
Branches
24

TypeScriptMITCreated May 13, 2026Last push 1d agoLatest release 0.4.0+975 stars this week+1K this month

Star history

since Jun 28, 2026
01K2K3KJun 2026Jul 2026Jul 2026Aug 2026
3.5K stars as of Aug 7, 2026, tracked back to Jun 28, 2026. Historical curve reconstructed from public GitHub event archives, calibrated to the current total.

Contribution activity

commits per day, last 52 weeks
AugSepOctNovDecJanFebMarAprMayJunJulAugMonWedFri2025-08-09: 0 commits2025-08-10: 0 commits2025-08-11: 0 commits2025-08-12: 0 commits2025-08-13: 0 commits2025-08-14: 0 commits2025-08-15: 0 commits2025-08-16: 0 commits2025-08-17: 0 commits2025-08-18: 0 commits2025-08-19: 0 commits2025-08-20: 0 commits2025-08-21: 0 commits2025-08-22: 0 commits2025-08-23: 0 commits2025-08-24: 0 commits2025-08-25: 0 commits2025-08-26: 0 commits2025-08-27: 0 commits2025-08-28: 0 commits2025-08-29: 0 commits2025-08-30: 0 commits2025-08-31: 0 commits2025-09-01: 0 commits2025-09-02: 0 commits2025-09-03: 0 commits2025-09-04: 0 commits2025-09-05: 0 commits2025-09-06: 0 commits2025-09-07: 0 commits2025-09-08: 0 commits2025-09-09: 0 commits2025-09-10: 0 commits2025-09-11: 0 commits2025-09-12: 0 commits2025-09-13: 0 commits2025-09-14: 0 commits2025-09-15: 0 commits2025-09-16: 0 commits2025-09-17: 0 commits2025-09-18: 0 commits2025-09-19: 0 commits2025-09-20: 0 commits2025-09-21: 0 commits2025-09-22: 0 commits2025-09-23: 0 commits2025-09-24: 0 commits2025-09-25: 0 commits2025-09-26: 0 commits2025-09-27: 0 commits2025-09-28: 0 commits2025-09-29: 0 commits2025-09-30: 0 commits2025-10-01: 0 commits2025-10-02: 0 commits2025-10-03: 0 commits2025-10-04: 0 commits2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 0 commits2025-10-10: 0 commits2025-10-11: 0 commits2025-10-12: 0 commits2025-10-13: 0 commits2025-10-14: 0 commits2025-10-15: 0 commits2025-10-16: 0 commits2025-10-17: 0 commits2025-10-18: 0 commits2025-10-19: 0 commits2025-10-20: 0 commits2025-10-21: 0 commits2025-10-22: 0 commits2025-10-23: 0 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 0 commits2025-10-28: 0 commits2025-10-29: 0 commits2025-10-30: 0 commits2025-10-31: 0 commits2025-11-01: 0 commits2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 0 commits2026-01-11: 0 commits2026-01-12: 0 commits2026-01-13: 0 commits2026-01-14: 0 commits2026-01-15: 0 commits2026-01-16: 0 commits2026-01-17: 0 commits2026-01-18: 0 commits2026-01-19: 0 commits2026-01-20: 0 commits2026-01-21: 0 commits2026-01-22: 0 commits2026-01-23: 0 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 0 commits2026-01-30: 0 commits2026-01-31: 0 commits2026-02-01: 0 commits2026-02-02: 0 commits2026-02-03: 0 commits2026-02-04: 0 commits2026-02-05: 0 commits2026-02-06: 0 commits2026-02-07: 0 commits2026-02-08: 0 commits2026-02-09: 0 commits2026-02-10: 0 commits2026-02-11: 0 commits2026-02-12: 0 commits2026-02-13: 4 commits2026-02-14: 5 commits2026-02-15: 5 commits2026-02-16: 4 commits2026-02-17: 4 commits2026-02-18: 2 commits2026-02-19: 3 commits2026-02-20: 0 commits2026-02-21: 3 commits2026-02-22: 2 commits2026-02-23: 1 commit2026-02-24: 1 commit2026-02-25: 2 commits2026-02-26: 3 commits2026-02-27: 7 commits2026-02-28: 2 commits2026-03-01: 2 commits2026-03-02: 2 commits2026-03-03: 0 commits2026-03-04: 0 commits2026-03-05: 0 commits2026-03-06: 1 commit2026-03-07: 0 commits2026-03-08: 0 commits2026-03-09: 0 commits2026-03-10: 0 commits2026-03-11: 0 commits2026-03-12: 0 commits2026-03-13: 0 commits2026-03-14: 1 commit2026-03-15: 0 commits2026-03-16: 2 commits2026-03-17: 3 commits2026-03-18: 2 commits2026-03-19: 0 commits2026-03-20: 0 commits2026-03-21: 0 commits2026-03-22: 0 commits2026-03-23: 0 commits2026-03-24: 0 commits2026-03-25: 0 commits2026-03-26: 0 commits2026-03-27: 0 commits2026-03-28: 2 commits2026-03-29: 0 commits2026-03-30: 0 commits2026-03-31: 0 commits2026-04-01: 0 commits2026-04-02: 1 commit2026-04-03: 0 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 0 commits2026-04-07: 1 commit2026-04-08: 1 commit2026-04-09: 0 commits2026-04-10: 0 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 0 commits2026-04-14: 0 commits2026-04-15: 0 commits2026-04-16: 0 commits2026-04-17: 1 commit2026-04-18: 0 commits2026-04-19: 0 commits2026-04-20: 0 commits2026-04-21: 2 commits2026-04-22: 4 commits2026-04-23: 2 commits2026-04-24: 0 commits2026-04-25: 0 commits2026-04-26: 0 commits2026-04-27: 1 commit2026-04-28: 0 commits2026-04-29: 1 commit2026-04-30: 0 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 0 commits2026-05-05: 0 commits2026-05-06: 0 commits2026-05-07: 0 commits2026-05-08: 0 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 0 commits2026-05-12: 5 commits2026-05-13: 3 commits2026-05-14: 2 commits2026-05-15: 0 commits2026-05-16: 0 commits2026-05-17: 0 commits2026-05-18: 0 commits2026-05-19: 0 commits2026-05-20: 0 commits2026-05-21: 0 commits2026-05-22: 0 commits2026-05-23: 0 commits2026-05-24: 0 commits2026-05-25: 0 commits2026-05-26: 0 commits2026-05-27: 0 commits2026-05-28: 0 commits2026-05-29: 1 commit2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 1 commit2026-06-02: 1 commit2026-06-03: 1 commit2026-06-04: 0 commits2026-06-05: 0 commits2026-06-06: 0 commits2026-06-07: 0 commits2026-06-08: 0 commits2026-06-09: 0 commits2026-06-10: 2 commits2026-06-11: 21 commits2026-06-12: 18 commits2026-06-13: 17 commits2026-06-14: 12 commits2026-06-15: 15 commits2026-06-16: 16 commits2026-06-17: 4 commits2026-06-18: 4 commits2026-06-19: 1 commit2026-06-20: 1 commit2026-06-21: 0 commits2026-06-22: 1 commit2026-06-23: 6 commits2026-06-24: 9 commits2026-06-25: 3 commits2026-06-26: 3 commits2026-06-27: 9 commits2026-06-28: 3 commits2026-06-29: 4 commits2026-06-30: 2 commits2026-07-01: 0 commits2026-07-02: 0 commits2026-07-03: 0 commits2026-07-04: 0 commits2026-07-05: 0 commits2026-07-06: 0 commits2026-07-07: 2 commits2026-07-08: 2 commits2026-07-09: 0 commits2026-07-10: 0 commits2026-07-11: 3 commits2026-07-12: 0 commits2026-07-13: 3 commits2026-07-14: 2 commits2026-07-15: 9 commits2026-07-16: 1 commit2026-07-17: 3 commits2026-07-18: 8 commits2026-07-19: 3 commits2026-07-20: 0 commits2026-07-21: 2 commits2026-07-22: 1 commit2026-07-23: 5 commits2026-07-24: 4 commits2026-07-25: 1 commit2026-07-26: 0 commits2026-07-27: 2 commits2026-07-28: 0 commits2026-07-29: 0 commits2026-07-30: 0 commits2026-07-31: 0 commits2026-08-01: 0 commits2026-08-02: 0 commits2026-08-03: 0 commits2026-08-04: 0 commits2026-08-05: 0 commits2026-08-06: 0 commits2026-08-07: 0 commits2026-08-08: 0 commits
293 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Breakout launch

    3,491 stars in 87 days

  • Rising fast

    +975 stars this week

  • Actively maintained

    Pushed within 48 hours

  • Permissive license

    MIT

  • Continuous integration

    Automated checks passing

What flint-chart does

Flint is a visualization language designed specifically for the AI era. It acts as an intermediate layer, allowing AI agents to generate polished, expressive charts from human-readable specifications. It simplifies the process of creating complex data visualizations by bridging the gap between raw data and visual output. It provides a structured format that both LLMs and humans can understand and modify. This enables seamless integration of data visualization capabilities into various AI-driven applications and workflows.

Developers building AI agents, chatbots, or data tools that need to generate charts dynamically. Data scientists looking for a programmable, AI-friendly way to specify visualizations.

  • AI-native format: Designed to be easily generated and parsed by large language models.
  • Human-editable specs: Uses a simple specification format that developers can easily read and modify.
  • Polished visual output: Renders high-quality, expressive charts from the intermediate representation.
  • MCP Server support: Includes integration guides for Model Context Protocol servers.
  • Cross-platform design: Aims to be a universal intermediate language for data visualization tasks.

Where teams use it

Agentic dashboards

Enabling autonomous AI agents to generate and update data dashboards on the fly.

Chatbot data visualization

Allowing conversational interfaces to present structured data as intuitive charts.

Automated reporting

Generating visual reports from raw datasets without manual chart configuration.

Data exploration tools

Building interfaces where users can ask questions and receive visual answers instantly.

Getting started: Check out the Flint Project Site or MCP Server Guide for integration instructions.

README

main branch

Flint: A Visualization Language for the AI Era

npm: flint-chart npm: flint-chart-mcp arXiv: 2607.20775 CI License: MIT

Please visit: Flint Project Site | MCP Server Guide | 中文主页

Flint is a visualization intermediate language that lets AI agents create expressive, polished visualizations from simple, human-editable chart specs. Instead of asking agents or developers to tune verbose chart configuration details such as scales, axes, spacing, labels, and layout, the Flint compiler derives optimized chart settings from the data, semantic types, chart type, and encodings. The result is a compact chart specification that agents can produce reliably, people can edit directly, and multiple backends can render as native Vega-Lite, ECharts, Chart.js, or Plotly specs, and native Excel charts through Office.js.

This repo contains two main components:

  • flint-chart: a JavaScript/TypeScript library that compiles the same Flint input into Vega-Lite, ECharts, Chart.js, Plotly, or Excel-native output.
  • flint-chart-mcp: an MCP server that lets agents create, validate, and render charts directly from a chat or coding environment.

A wall of charts produced by Flint across its supported visualization backends.

Features

  • Semantic chart specs. Flint captures what each field means using 70+ semantic types such as Rank, Temperature, Price, or Country.
  • Automatic layout. Flint adapts sizing, spacing, labels, marks, and legends to the data cardinality, chart design, and canvas constraints.
  • Multiple backends. Compile one input to backend-native output across Vega-Lite, ECharts, Chart.js, Plotly, and native Excel charts.
  • Agent-ready chart authoring. The MCP server gives agents Flint tools and chart guidance so they can choose a template, validate it, and open an interactive chart view in MCP-capable clients.

Updates

  • July 24, 2026 — Flint 0.4.0 adds 38 Plotly chart types and 18 native, editable Excel chart templates. (v0.4.0)
  • July 19, 2026 — Flint 0.3.0 adds dynamic chart widgets that switch chart types and edit chart properties in place. (v0.3.0)
  • July 15, 2026 — Flint 0.2.2 added compact dodge modes and grouped violin layouts.
  • July 13, 2026 — Flint 0.2.1 improved chart-property validation and backend consistency. (v0.2.1)

See the changelog for complete release notes.

Flint compiling a compact chart spec into a Vega-Lite spec and rendered heatmap visualization.
Flint turns compact chart specs into backend-native specs and rendered visualizations.

Install

# Use Flint in your JavaScript/TypeScript codebase
npm install flint-chart

# For agents and MCP clients
npx -y flint-chart-mcp

Python package: to be released. The current Python port is a source-only preview in this repo.

Use Flint As A Library

Every backend accepts the same ChartAssemblyInput and returns the target library's native spec object.

import { assembleVegaLite } from 'flint-chart';

const spec = assembleVegaLite({
  data: { values: myData },
  semantic_types: { weight: 'Quantity', mpg: 'Quantity', origin: 'Country' },
  chart_spec: {
    chartType: 'Scatter Plot',
    encodings: { x: { field: 'weight' }, y: { field: 'mpg' }, color: { field: 'origin' } },
    baseSize: { width: 400, height: 300 },
  },
});
// → a ready-to-render Vega-Lite spec

Swap the backend without changing the input shape:

import { assembleECharts, assembleChartjs, assemblePlotly, assembleExcel } from 'flint-chart';

const echartsOption = assembleECharts(input);
const chartjsConfig = assembleChartjs(input);
const plotlyFigure = assemblePlotly(input);
const excelArtifact = assembleExcel(input);

See the API reference, backend references for Vega-Lite, ECharts, Chart.js, Plotly, and Excel, plus the live editor for more library examples.

Use Flint As An MCP Server

Install flint-chart-mcp as a Model Context Protocol server when you want an agent to create charts in the same conversation where the question starts. It can open an interactive chart view, return static PNG/SVG output, or produce backend-native chart specs.

For setup, start with the Flint MCP project page. It includes client configuration, usage examples, and links to deeper references.

Agent chat showing Flint Chart as an MCP App with a grouped bar chart preview and chart options.

MCP calls let agents embed rows directly as data.values, or read local JSON, CSV, or TSV files by data.url. For agent workflows without MCP, use the standalone agent skill.

Repository overview

flint-chart/
├── packages/
│   ├── flint-js/          npm package `flint-chart` (TypeScript)
│   │   └── src/
│   │       ├── core/      semantics, layout, decisions, shared types
│   │       ├── vegalite/  Vega-Lite backend
│   │       ├── echarts/   ECharts backend
│   │       ├── chartjs/   Chart.js backend
│   │       └── test-data/ fixtures + generators (drive tests and the gallery)
│   ├── flint-py/          Python port preview (package to be released)
│   └── flint-mcp/         npm package `flint-chart-mcp` (MCP render server)
├── site/                  Vite + React demo: landing, gallery, editor, docs
├── agent-skills/          fallback copy of the MCP-served agent skill
├── shared/test-data/      JSON fixtures shared across JS + Python
└── docs/                  architecture and design documents

Documentation

The project site is the main entry point for examples, the live editor, and concept docs. For source-level references, start with the API reference, the Flint MCP project page, or the Development guide. See the changelog for notable changes in each release.


Contributing

Contributions are welcome! See .github/CONTRIBUTING.md and the Development guide.

git clone https://github.com/microsoft/flint-chart
cd flint-chart
npm install            # root workspaces: packages/flint-js + flint-mcp + site

npm run typecheck      # typecheck packages/flint-js + packages/flint-mcp
npm run test           # Vitest (packages/flint-js + packages/flint-mcp)
npm run build          # build packages/flint-js + packages/flint-mcp
npm run site           # demo site (gallery + editor) at http://localhost:5274/

Node 18+ is required. The demo site aliases flint-chart to packages/flint-js/src, so library edits hot-reload in the gallery and editor without rebuilding dist/.

We especially welcome contributions that add new chart templates or new rendering backends.

This project has adopted the Microsoft Open Source Code of Conduct. See SECURITY.md to report vulnerabilities.

Contributor

Flint is built by Microsoft Research in collaboration with the IDEAS Lab, Renmin University of China. We welcome you to join us — see Contributing to get involved.

A research paper describing Flint is coming soon.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos is subject to those third parties' policies.

License

MIT © Microsoft Corporation

View on GitHub

Recent activity

commits and pull requests

Releases and announcements

4 total
  1. Flint 0.40.4.0Jul 24, 2026

    ### Update 1: new plotly backend <img width="1240" height="829" alt="image" src="https://github.com/user-attachments/assets/a3514130-ad06-48e8-8458-9e828f6e50f2" /> ### Update 2: dynamic widget for chart type switch in the mcp server <img width="1090" height="466" alt="image" src="https://github.com/user-attachments/assets/3039761c-6d6c-456b-b6ab-66cf94c8069f" /> ### Update 3: Research paper Read it here, maybe also share and cite.. [https://arxiv.org/abs/2607.20775](https://arxiv.org/abs/2607.20775) ### Update 4: new Excel backend <img width="925" height="745" alt="image" src="https://github.com/user-attachments/assets/c6007787-2a1d-4845-a574-ad5911f499cb" />

  2. Flint 0.30.3.0Jul 19, 2026

    Flint 0.3 makes charts easier to explore after they are created. The MCP App can now switch chart types and edit chart properties in place, while the original Flint spec stays compact and readable. ### Explore chart types Move between compatible views without rebuilding the chart. For example, turn a dense Line Chart of food prices into compact Sparkline rows for easier comparison. Flint preserves the data roles and derives the details for the new chart type. <img width="1086" alt="Switching a line chart to a Sparkline in the Flint MCP App" src="https://github.com/user-attachments/assets/f9194ec7-65ab-4120-aca7-09328db8d39a" /> ### Edit chart properties Edit common properties directly in the widget. For example, turn labels on in a correlation heatmap to reveal the value in every cell. Controls adapt to the selected chart and backend, and changes appear immediately. <img width="1091" alt="Turning labels on for a heatmap in the Flint MCP App" src="https://github.com/user-attachments/assets/2915bf55-a55d-4ad1-a7d7-e660732c0b46" /> ### Flint in Chinese The website and documentation are now available in Chinese, including guides for getting started, authoring ch

  3. Flint 0.20.2.1Jul 13, 2026

    ## What's Changed * Prepare 0.1.2 patch release by @Chenglong-MS in https://github.com/microsoft/flint-chart/pull/36 * Update Flint public title by @Chenglong-MS in https://github.com/microsoft/flint-chart/pull/38 * Restore AI-era title and simplify MCP setup by @Chenglong-MS in https://github.com/microsoft/flint-chart/pull/39 * MCP: trust-by-default file access via --disable-file-reference by @Chenglong-MS in https://github.com/microsoft/flint-chart/pull/41 * Dev by @Chenglong-MS in https://github.com/microsoft/flint-chart/pull/44 * Dev by @Chenglong-MS in https://github.com/microsoft/flint-chart/pull/46 * Fix Rose Chart area encoding: use sqrt radius on ECharts and Chart.js to match Vega-Lite by @Chenglong-MS with @Copilot in https://github.com/microsoft/flint-chart/pull/51 * Validate discrete chartProperties values; docs show accepted values not labels by @Chenglong-MS with @Copilot in https://github.com/microsoft/flint-chart/pull/52 * Dev by @Chenglong-MS in https://github.com/microsoft/flint-chart/pull/53 **Full Changelog**: https://github.com/microsoft/flint-chart/compare/0.1.1...0.2.1

  4. Flint first release!0.1.1Jun 28, 2026

    ## Flint Chart v0.1.1 Flint Chart is now live! Flint is a new visualization intermediate language designed to help AI agents create expressive, good-looking visualizations from simple, human-editable specs. Write a compact Flint spec, and Flint compiles it into chart specifications for Vega-Lite, ECharts, and Chart.js. We designed Flint while building Data Formulator (https://github.com/microsoft/data-formulator), where we found that agents could sometimes produce broken, brittle, or awkward-looking charts when asked to generate Vega-Lite directly. Flint started as a way to make that process more reliable. It turns out the language is useful beyond Data Formulator, so we are releasing it for everyone. **Agents work reliably with Flint, and the resulting charts usually look great out of the box.** We also published an MCP server, so agents can compile, validate, render, and iterate on charts directly from semantic chart requests. What’s included: - `flint-chart`: the core TypeScript library for semantic chart compilation. - `flint-chart-mcp`: an MCP server with chart compilation, validation, rendering, chart-type discovery, and an interactive chart view. - Doc

Code frequency

additions and deletions
+3.8M-3.8MWeek of 2026-02-08: +12,107 linesWeek of 2026-02-08: -862 linesWeek of 2026-02-15: +32,750 linesWeek of 2026-02-15: -11,198 linesWeek of 2026-02-22: +12,816 linesWeek of 2026-02-22: -5,905 linesWeek of 2026-03-01: +10,575 linesWeek of 2026-03-01: -2,451 linesWeek of 2026-03-08: +1,198 linesWeek of 2026-03-08: -255 linesWeek of 2026-03-15: +1,000 linesWeek of 2026-03-15: -459 linesWeek of 2026-03-22: +803 linesWeek of 2026-03-22: -33 linesWeek of 2026-03-29: +461 linesWeek of 2026-03-29: -5,932 linesWeek of 2026-04-05: +21 linesWeek of 2026-04-05: -7 linesWeek of 2026-04-12: +17 linesWeek of 2026-04-12: -147 linesWeek of 2026-04-19: +2,362 linesWeek of 2026-04-19: -594 linesWeek of 2026-04-26: +24 linesWeek of 2026-04-26: -13 linesWeek of 2026-05-03: +0 linesWeek of 2026-05-03: -0 linesWeek of 2026-05-10: +55,815 linesWeek of 2026-05-10: -42,046 linesWeek of 2026-05-17: +0 linesWeek of 2026-05-17: -0 linesWeek of 2026-05-24: +3,010 linesWeek of 2026-05-24: -362 linesWeek of 2026-05-31: +766 linesWeek of 2026-05-31: -125 linesWeek of 2026-06-07: +3,801,154 linesWeek of 2026-06-07: -1,894,961 linesWeek of 2026-06-14: +73,186 linesWeek of 2026-06-14: -75,401 linesWeek of 2026-06-21: +21,074 linesWeek of 2026-06-21: -13,129 linesWeek of 2026-06-28: +1,350 linesWeek of 2026-06-28: -1,668 linesWeek of 2026-07-05: +559 linesWeek of 2026-07-05: -109 linesWeek of 2026-07-12: +16,498 linesWeek of 2026-07-12: -1,628 linesWeek of 2026-07-19: +140,980 linesWeek of 2026-07-19: -4,293 linesWeek of 2026-07-26: +168 linesWeek of 2026-07-26: -36 linesFeb 8, 2026Jul 26, 2026
+4.2M lines added, -2.1M removed over the last year.

Commits per week

last 52 weeks
580Week of 2025-08-09: 0 commitsWeek of 2025-08-16: 0 commitsWeek of 2025-08-23: 0 commitsWeek of 2025-08-30: 0 commitsWeek of 2025-09-06: 0 commitsWeek of 2025-09-13: 0 commitsWeek of 2025-09-20: 0 commitsWeek of 2025-09-27: 0 commitsWeek of 2025-10-04: 0 commitsWeek of 2025-10-11: 0 commitsWeek of 2025-10-18: 0 commitsWeek of 2025-10-25: 0 commitsWeek of 2025-11-01: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 0 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 0 commitsWeek of 2026-01-11: 0 commitsWeek of 2026-01-18: 0 commitsWeek of 2026-01-25: 0 commitsWeek of 2026-02-01: 0 commitsWeek of 2026-02-08: 9 commitsWeek of 2026-02-15: 21 commitsWeek of 2026-02-22: 18 commitsWeek of 2026-03-01: 5 commitsWeek of 2026-03-08: 1 commitsWeek of 2026-03-15: 7 commitsWeek of 2026-03-22: 2 commitsWeek of 2026-03-29: 1 commitsWeek of 2026-04-05: 2 commitsWeek of 2026-04-12: 1 commitsWeek of 2026-04-19: 8 commitsWeek of 2026-04-26: 2 commitsWeek of 2026-05-03: 0 commitsWeek of 2026-05-10: 10 commitsWeek of 2026-05-17: 0 commitsWeek of 2026-05-24: 1 commitsWeek of 2026-05-31: 3 commitsWeek of 2026-06-07: 58 commitsWeek of 2026-06-14: 53 commitsWeek of 2026-06-21: 31 commitsWeek of 2026-06-28: 9 commitsWeek of 2026-07-05: 7 commitsWeek of 2026-07-12: 26 commitsWeek of 2026-07-19: 16 commitsWeek of 2026-07-26: 2 commitsWeek of 2026-08-02: 0 commitsAug 9, 2025Aug 2, 2026
293 commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 1 commitsSun 1:00 — 0 commitsSun 2:00 — 0 commitsSun 3:00 — 0 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 1 commitsSun 7:00 — 4 commitsSun 8:00 — 0 commitsSun 9:00 — 0 commitsSun 10:00 — 2 commitsSun 11:00 — 0 commitsSun 12:00 — 0 commitsSun 13:00 — 3 commitsSun 14:00 — 2 commitsSun 15:00 — 0 commitsSun 16:00 — 3 commitsSun 17:00 — 8 commitsSun 18:00 — 1 commitsSun 19:00 — 2 commitsSun 20:00 — 0 commitsSun 21:00 — 0 commitsSun 22:00 — 0 commitsSun 23:00 — 0 commitsMon 0:00 — 6 commitsMon 1:00 — 0 commitsMon 2:00 — 0 commitsMon 3:00 — 0 commitsMon 4:00 — 1 commitsMon 5:00 — 0 commitsMon 6:00 — 0 commitsMon 7:00 — 0 commitsMon 8:00 — 0 commitsMon 9:00 — 0 commitsMon 10:00 — 0 commitsMon 11:00 — 3 commitsMon 12:00 — 2 commitsMon 13:00 — 3 commitsMon 14:00 — 2 commitsMon 15:00 — 3 commitsMon 16:00 — 4 commitsMon 17:00 — 3 commitsMon 18:00 — 4 commitsMon 19:00 — 2 commitsMon 20:00 — 1 commitsMon 21:00 — 1 commitsMon 22:00 — 0 commitsMon 23:00 — 1 commitsTue 0:00 — 0 commitsTue 1:00 — 2 commitsTue 2:00 — 0 commitsTue 3:00 — 0 commitsTue 4:00 — 0 commitsTue 5:00 — 0 commitsTue 6:00 — 0 commitsTue 7:00 — 0 commitsTue 8:00 — 0 commitsTue 9:00 — 0 commitsTue 10:00 — 0 commitsTue 11:00 — 1 commitsTue 12:00 — 0 commitsTue 13:00 — 0 commitsTue 14:00 — 3 commitsTue 15:00 — 4 commitsTue 16:00 — 2 commitsTue 17:00 — 11 commitsTue 18:00 — 7 commitsTue 19:00 — 0 commitsTue 20:00 — 1 commitsTue 21:00 — 3 commitsTue 22:00 — 10 commitsTue 23:00 — 3 commitsWed 0:00 — 3 commitsWed 1:00 — 1 commitsWed 2:00 — 0 commitsWed 3:00 — 1 commitsWed 4:00 — 1 commitsWed 5:00 — 1 commitsWed 6:00 — 0 commitsWed 7:00 — 0 commitsWed 8:00 — 0 commitsWed 9:00 — 0 commitsWed 10:00 — 0 commitsWed 11:00 — 4 commitsWed 12:00 — 1 commitsWed 13:00 — 2 commitsWed 14:00 — 4 commitsWed 15:00 — 5 commitsWed 16:00 — 1 commitsWed 17:00 — 7 commitsWed 18:00 — 3 commitsWed 19:00 — 2 commitsWed 20:00 — 2 commitsWed 21:00 — 2 commitsWed 22:00 — 1 commitsWed 23:00 — 5 commitsThu 0:00 — 2 commitsThu 1:00 — 2 commitsThu 2:00 — 0 commitsThu 3:00 — 0 commitsThu 4:00 — 3 commitsThu 5:00 — 1 commitsThu 6:00 — 3 commitsThu 7:00 — 0 commitsThu 8:00 — 0 commitsThu 9:00 — 4 commitsThu 10:00 — 1 commitsThu 11:00 — 1 commitsThu 12:00 — 0 commitsThu 13:00 — 3 commitsThu 14:00 — 1 commitsThu 15:00 — 0 commitsThu 16:00 — 2 commitsThu 17:00 — 1 commitsThu 18:00 — 5 commitsThu 19:00 — 2 commitsThu 20:00 — 3 commitsThu 21:00 — 7 commitsThu 22:00 — 3 commitsThu 23:00 — 3 commitsFri 0:00 — 6 commitsFri 1:00 — 1 commitsFri 2:00 — 0 commitsFri 3:00 — 1 commitsFri 4:00 — 0 commitsFri 5:00 — 0 commitsFri 6:00 — 0 commitsFri 7:00 — 0 commitsFri 8:00 — 0 commitsFri 9:00 — 1 commitsFri 10:00 — 2 commitsFri 11:00 — 0 commitsFri 12:00 — 2 commitsFri 13:00 — 1 commitsFri 14:00 — 2 commitsFri 15:00 — 2 commitsFri 16:00 — 1 commitsFri 17:00 — 7 commitsFri 18:00 — 2 commitsFri 19:00 — 2 commitsFri 20:00 — 3 commitsFri 21:00 — 3 commitsFri 22:00 — 3 commitsFri 23:00 — 4 commitsSat 0:00 — 4 commitsSat 1:00 — 0 commitsSat 2:00 — 1 commitsSat 3:00 — 1 commitsSat 4:00 — 0 commitsSat 5:00 — 4 commitsSat 6:00 — 2 commitsSat 7:00 — 0 commitsSat 8:00 — 0 commitsSat 9:00 — 0 commitsSat 10:00 — 1 commitsSat 11:00 — 3 commitsSat 12:00 — 0 commitsSat 13:00 — 0 commitsSat 14:00 — 2 commitsSat 15:00 — 7 commitsSat 16:00 — 2 commitsSat 17:00 — 9 commitsSat 18:00 — 1 commitsSat 19:00 — 0 commitsSat 20:00 — 0 commitsSat 21:00 — 0 commitsSat 22:00 — 3 commitsSat 23:00 — 15 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
Jul 17, 2026daily#20+5
Jul 9, 2026daily#18+4
  • freeCodeCamp/freeCodeCamp

    freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.

    453.6K stars · TypeScript

  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    385.5K stars · TypeScript

  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    384.4K stars · TypeScript

  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    384.4K stars · TypeScript

  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    384.4K stars · TypeScript

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    238.5K stars · JavaScript