simple-git

A lightweight, promise-based interface for running git commands from Node.js

Library
npm
v3.36.0
3,857stars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
64/100Good
Development Activity48
Maintenance44
Community64
Maturity60
Momentum40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
77/100Good
Architecture80
Code Quality82
Innovation65
Learning Curve80

simple-git is a Node.js library that wraps the system git CLI binary behind a typed, chainable, promise-based API, letting applications clone repos, inspect status/logs/diffs, and run arbitrary git commands programmatically without shelling out manually or parsing raw CLI output themselves.

It has no native bindings — every operation ultimately spawns the real git executable as a child process and parses its output — which keeps it lightweight and always compatible with whatever git version is installed, at the cost of requiring git itself to be present on the host.

What You Get

  • A chainable, promise-based API covering the full common git command surface (clone, add, commit, push, pull, log, diff, status, branch, tag, and more)
  • Structured, typed response objects for commands like status() and log() instead of raw stdout strings
  • A plugin system for customizing behavior like timeouts, progress reporting, and command-error handling
  • Both callback and promise/async APIs for compatibility with older and modern Node.js codebases
  • TypeScript typings shipped in the package for full editor autocompletion

Common Use Cases

  • Automating repository setup in CLI scaffolding tools (clone a template, initialize a repo, make an initial commit)
  • Building CI/CD or release-automation scripts that need to tag, push, or inspect commit history programmatically
  • Powering a backend service that manages many git repositories (e.g. a Git-hosting or deployment platform)
  • Reading commit/diff/status information to build dashboards, changelogs, or code-review tooling

Under The Hood

Architecture — The repo is a Yarn-workspaces monorepo with the main simple-git package plus small internal helper packages (@simple-git/args-pathspec, @simple-git/argv-parser) under packages/. Inside simple-git/src, git-factory.ts constructs the root SimpleGit instance, lib/simple-git-api.ts and lib/api.ts define the fluent/chainable method surface, lib/runners handles actually spawning the git child process and streaming its stdout/stderr, lib/tasks implement each individual git subcommand (clone, log, diff, etc.) as isolated task modules, and lib/parsers turn raw CLI output into the library’s structured response objects (lib/responses). Tech Stack — TypeScript compiled via esbuild with esbuild-node-externals, tested with Jest (93+ spec files) and Babel for transform config, linted/formatted with Biome, and versioned/released via Changesets; runtime dependencies are minimal (@kwsites/file-exists, @kwsites/promise-deferred, debug) with the real git binary as the only true external dependency. Code Quality — The task-per-file structure (lib/tasks/) keeps each git subcommand’s argument-building and output-parsing logic isolated and independently testable, and the extensive spec suite covers parser edge cases for commands like log, status, and diff whose CLI output formats vary by git version and locale. API Design — The chainable method-call style (git.add('.').commit('message').push()) combined with both promise and legacy-callback support gives the library a low barrier to entry for simple scripts while still exposing raw/typed access to full command output for more advanced automation, and the plugin system lets consumers hook timeouts or progress events without forking the library.

Used by 23 apps in this directory

TypeScript
99%
Other

Activepieces

Automation · AI Assistants

23,887

Open-source AI automation platform that converts 280+ workflow integrations into MCP servers for LLMs, with no-code builders and TypeScript extensibility.

View details
92
Repo Health
85
Technical
65
Dependency
Built with
TypeScript99%
Updated today
TypeScript
96%
Other

Amplication

Developer Tools · AI Code Assistants · Automation

16,010

Create production-ready backend services with your organization's standards baked in — generating NestJS, Prisma, and GraphQL code that you own and control.

View details
61
Repo Health
84
Technical
60
Dependency
Built with
TypeScript96%
Updated 1 months ago
TypeScript
66%
Apache 2.0

Appsmith

Developer Tools · Automation · No Code Platforms

40,707

Open-source low-code platform to build admin panels, dashboards, and internal tools connected to any database or API.

View details
94
Repo Health
79
Technical
68
Dependency
Built with
TypeScript66%
Java22%
Updated today
TypeScript
96%
Other

CapRover

Developer Tools · Devops · Hosting Control Panel

15,132

Deploy any app, database, or website to your own server in minutes—no Docker or Linux expertise required.

View details
87
Repo Health
82
Technical
69
Dependency
Built with
TypeScript96%
Updated 3 days ago
TypeScript
99%
MIT

Cate

AI Code Assistants

2,087

A desktop IDE built on an infinite canvas — spread code editors, terminals, browsers, docs, and AI agents across freeform space instead of stacking windows and tabs, with layouts restored automatically.

View details
79
Repo Health
71
Technical
72
Dependency
Built with
TypeScript99%
Updated today
TypeScript
97%
Apache 2.0

Cline

AI Code Assistants

66,453

An open-source AI coding agent that lives in your editor and terminal — reads and edits your codebase, runs commands, browses the web, and requires human approval for every action by default.

View details
90
Repo Health
74
Technical
67
Dependency
Built with
TypeScript97%
Updated today
JavaScript
90%
Other

CodeSandbox

Code Editors · Developer Tools

13,633

Instantly ready browser-based IDE that runs full npm dependency resolution and transpilation entirely client-side, with no server needed.

View details
65
Repo Health
76
Technical
63
Dependency
Built with
JavaScript90%
Updated 1 months ago
TypeScript
75%
Apache 2.0

Fern

Developer Tools

3,761

Fern turns a single OpenAPI, AsyncAPI, or Protobuf definition into type-safe SDKs for nine languages and a hosted API documentation site, all from one CLI and one source of truth.

View details
90
Repo Health
86
Technical
67
Dependency
Built with
TypeScript75%
Updated today
TypeScript
97%
Other

Kibana

Analytics · Monitoring

21,251

Your open source window into the Elastic Stack — query, visualize, and act on data stored in Elasticsearch with real-time dashboards, AI-assisted search, and automated alerting.

View details
98
Repo Health
87
Technical
68
Dependency
Built with
TypeScript97%
Updated today

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search