toss/es-git

A modern Git library built for Node.js with blazing-fast installation and rock-solid stability, powered by N-API.

Rust

328

224 commits

updated Sep 9, 2026

See the code

README

wallpaper

es-git · MIT License NPM badge

English | 한국어

es-git is a modern git library built for Node.js. With its simple and intuitive interface, even complex git operations can be easily integrated, and the built-in TypeScript types ensure fast and reliable development.

es-git builds high-performance git functionality across different operating systems by using napi-rs to compile a native module from git2-rs, which binds to libgit2.

Furthermore, by offering pre-built native modules tailored to your OS and CPU architecture without relying on node-gyp, the module can be installed effortlessly without the need to build it locally.

Examples

import { cloneRepository } from 'es-git';

const repo = await cloneRepository('https://github.com/toss/es-git', '/path/to/clone');
const head = repo.head().name();
console.log(head); // "refs/heads/main"

Documentation

Contributing

We welcome contribution from everyone in the community. Read below for detailed contribution guide.

CONTRIBUTING

License

MIT © Viva Republica, Inc. See LICENSE for details.

Toss

Contributors

seokju-na

142 commits

raon0211

37 commits

other-yuka

14 commits

dependabot[bot]

10 commits

toss/es-git

A modern Git library built for Node.js with blazing-fast installation and rock-solid stability, powered by N-API.

Rust

328

224 commits

updated Sep 9, 2026

See the code

README

wallpaper

es-git · MIT License NPM badge

English | 한국어

es-git is a modern git library built for Node.js. With its simple and intuitive interface, even complex git operations can be easily integrated, and the built-in TypeScript types ensure fast and reliable development.

es-git builds high-performance git functionality across different operating systems by using napi-rs to compile a native module from git2-rs, which binds to libgit2.

Furthermore, by offering pre-built native modules tailored to your OS and CPU architecture without relying on node-gyp, the module can be installed effortlessly without the need to build it locally.

Examples

import { cloneRepository } from 'es-git';

const repo = await cloneRepository('https://github.com/toss/es-git', '/path/to/clone');
const head = repo.head().name();
console.log(head); // "refs/heads/main"

Documentation

Contributing

We welcome contribution from everyone in the community. Read below for detailed contribution guide.

CONTRIBUTING

License

MIT © Viva Republica, Inc. See LICENSE for details.

Toss

Contributors

seokju-na

142 commits

raon0211

37 commits

other-yuka

14 commits

dependabot[bot]

10 commits

Languages

Rust

68.8%

TypeScript

30.1%