Quickstart
Install
bash
npm install github-extractor
Usage
Initialize
typescript
import githubExtractor from "github-extractor";
const ghe = new githubExtractor({
owner: "octocat",
repo: "Spoon-Knife",
// The default: Readme.md is a different file to README.md
caseInsensitive: false,
})
List
typescript
const fullList = await ghe.list();
// List a repo non recursively to only show the top-level items (recursive is true by default):
const topLevel = await ghe.list({ recursive: false });
// Show any conflicts that might arise if downloading to `dest`:
const conflicts = await ghe.list({ dest: "some/path", conflictsOnly: true });
Download
typescript
await ghe.downloadTo({ dest: "some/path" });
Using selectedPaths
: Downloads only the paths in the repo specified. Do not prefix with repo name. It will stop downloading once it has the file. This can make getting a single file from a large repo very fast.
typescript
// Save just `boo.jpg`:
await ghe.downloadTo({ dest: "some/path", selectedPaths: ["someFolder/boo.jpg"] });
// just the `README.md` file:
await ghe.downloadTo({ dest: "some/path", selectedPaths: ["README.md"] });
There are more options and they're all documented using jsdoc so will appear in intellisense. There is also the api Documentation.