Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Methods for working with the GitHub Gist API. Node.js/JavaScript
Please consider following this project's author, Jon Schlinkert, and consider starring the project to show your :heart: and support.
Install with npm:
$ npm install --save gists
Full support for:
(If you find something missing or encounter a bug, please create an issue. Thanks!)
Breaking changes in v2.0!!!
Please read the CHANGELOG for more details.
Add gists
to your node.js/JavaScript project with the following code:
const Gists = require('gists');
const gists = new Gists({
username: 'your_username',
password: 'your_password'
});
// EXAMPLE: Download the Markdown Cheatsheet gist.
gists.get('5854601')
.then(res => console.log(res))
.catch(console.error)
See the GitHub Gist API documentation for additional details and input options for each method.
The main export is the Gists
class. Start by creating an instance of Gists
.
Params
options
{Object}Example
// see github-base for all available options and other ways to authenticate
const Gists = require('gists');
const gists = new Gists({ username: 'your_username', password: '*******' });
// all methods, when invoked, return a promise with this sigature
gists.get(...args)
.then(res => console.log(res.body))
.catch(console.error);
Create a new gist (docs).
Params
options
{Object}: Options to pass to github-base.Example
// POST /gists
gists.create(options);
Get a gist (docs).
Params
gist_id
{String}: (required) The id of the gist to get.options
{Object}: Options to pass to github-base.Example
// GET /gists/:gist_id
gists.get(gist_id[, options]);
List all gists for the given username
(docs).
Params
username
{String}options
{Object}: Options to pass to github-base.Example
// GET /users/:username/gists
gists.list(username[, options]);
List the authenticated user's gists, or if called anonymously get all public gists. (docs).
Params
options
{Object}: Options to pass to github-base.Example
// GET /gists/
gists.all(options);
List all public gists sorted by most recently updated to least recently updated (docs).
Params
options
{Object}: Options to pass to github-base.Example
// GET /gists/public
gists.public(options);
List the authenticated user's starred gists (docs).
Params
options
{Object}: Options to pass to github-base.Example
// GET /gists/starred
gists.starred(options);
Get a specific revision of a gist (docs).
Params
gist_id
{String}: (required) The id of the gist to get.sha
{String}: (required) The sha
of the gist revision to get.options
{Object}: Options to pass to github-base.Example
// GET /gists/:gist_id/:sha
gists.revision(gist_id, sha[, options]);
List commits for a gist (docs).
Params
gist_id
{String}: (required) The id of the gist to get commits for.options
{Object}: Options to pass to github-base.Example
// GET /gists/:gist_id/commits
gists.commit(gist_id[, options]);
List all forks for a gist (docs).
Params
gist_id
{String}: (required) The id of the gist to list forks for.options
{Object}: Options to pass to github-base.Example
// GET /gists/:gist_id/forks
gists.forks(gist_id[, options]);
Fork a gist (docs).
Params
gist_id
{String}: The id of the gist to fork.options
{Object}: Options to pass to github-base.Example
// POST /gists/:gist_id/forks
gists.fork(gist_id[, options]);
Edit a gist (docs).
Params
gist_id
{String}: (required) The id of the gist to edit.options
{Object}: Options to pass to github-base.Example
// PATCH /gists/:gist_id
gists.edit(gist_id[, options]);
Delete a gist (docs).
Params
gist_id
{String}: (required) The id of the gist to delete.options
{Object}: Options to pass to github-base.Example
// DELETE /gists/:gist_id
gists.delete(gist_id[, options]);
Star a gist (docs).
Params
gist_id
{String}: (required) The id of the gist to star.options
{Object}: Options to pass to github-base.Example
// PUT /gists/:gist_id/star
gists.star(gist_id[, options]);
Unstar a gist (docs).
Params
gist_id
{String}: (required) The id of the gist to unstar.options
{Object}: Options to pass to github-base.Example
// DELETE /gists/:gist_id/star
gists.unstar(gist_id[, options]);
Check if a gist is starred (docs).
Params
gist_id
{String}: (required) The id of the gist to check.options
{Object}: Options to pass to github-base.returns
{Boolean}: Returns true
if a gist is starred.Example
// GET /gists/:gist_id/star
gists.isStarred(gist_id[, options])
Create a comment on a gist (docs).
Params
gist_id
{String}: (required)options
{Object}: Options to pass to github-base.Example
// POST /gists/:gist_id/comments
gists.comment(gist_id, { body: 'Just commenting for the sake of commenting' });
Get a single comment from a gist (docs).
Params
gist_id
{String}: (required)comment_id
{String}: (required) The id of the comment to get.options
{Object}: Options to pass to github-base.Example
// GET /gists/:gist_id/comments/:comment_id
gists.getComment(gist_id, comment_id, options);
List comments on a gist (docs).
Params
gist_id
{String}: (required)options
{Object}: Options to pass to github-base.Example
// GET /gists/:gist_id/comments
gists.listComments(options);
Edit a comment (docs).
Params
gist_id
{String}: (required)comment_id
{String}: (required) The id of the comment to edit.options
{Object}: Options to pass to github-base.Example
// PATCH /gists/:gist_id/comments/:gist_id
gists.editComment(gist_id, comment_id[, options]);
Delete a comment (docs).
Params
gist_id
{String}: (required)comment_id
{String}: (required) The id of the comment to edit.options
{Object}: Options to pass to github-base.Example
// DELETE /gists/:gist_id/comments/:comment_id
gists.deleteComment(gist_id, comment_id[, options]);
.download
in favor of .get
. Start using .get
now, as .download
will be removed in the next major release..del
in favor of .delete
. Start using .delete
now, as .del
will be removed in the next major release.Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
$ npm install && npm test
(This project's readme.md is generated by verb, please don't edit the readme directly. Any changes to the readme must be made in the .verb.md readme template.)
To generate the readme, run the following command:
$ npm install -g verbose/verb#dev verb-generate-readme && verb
You might also be interested in these projects:
Commits | Contributor |
---|---|
15 | jonschlinkert |
6 | tennisonchan |
4 | doowb |
1 | sheeit |
Jon Schlinkert
Copyright © 2018, Jon Schlinkert. Released under the MIT License.
This file was generated by verb-generate-readme, v0.6.0, on August 19, 2018.
FAQs
Methods for working with the GitHub Gist API. Node.js/JavaScript
The npm package gists receives a total of 583 weekly downloads. As such, gists popularity was classified as not popular.
We found that gists demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.