npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@z.aourzag/nekos.life-aero

v2.0.9

Published

JS wrapper for https://nekos.life

Downloads

5

Readme

npm npm install size Node.js Package CodeQL NPM

Nekos.life

Installation

npm i -s nekos.life

Official wrapper for nekos.life! Very small install size with no external dependencies.

SFW

| Function | Description | | -------- | ----------- | | smug | Gets a URL of a smug image/gif | | baka | Gets a URL of a baka image/gif | | tickle | Gets a URL of a tickle image/gif | | slap | Gets a URL of a slap image/gif | | poke | Gets a URL of a poke image/gif | | pat | Get a URL of a pat image/gif | | neko | Get a URL of a neko image | | nekoGif | Get a URL of a neko gif | | meow | Get a URL of a cat image/gif | | lizard | Get a URL of a lizard image | | kiss | Get a URL of a kiss image/gif | | hug | Get a URL of a hug image/gif | | foxGirl | Get a URL of a fox girl image/gif | | feed | Get a URL of a feeding image/gif | | cuddle | Get a URL of a cuddle image/gif | | kemonomimi | Get a URL of a kemonomimi image/gif | | holo | Get a URL of a Holo image/gif | | woof | Get a URL of a dog image/gif | | wallpaper | Get a URL of a wallpaper | | goose | Get a URL of a goose image | | gecg | Get a URL of a gecg (genetically engineered catgirl) image | | avatar | Get a URL of an avatar image | | waifu | Get a URL of a waifu image | | why | Get text of a question | | catText| Get text of a cat emoji | | OwOify | Get OwOified text of a string | | eightBall | Sends the text and replies with a text as a response to the magic 8Ball and an image as well.| | fact | Gets the text and replies with a text that is a random fact | | spoiler | Creates an individual spoiler per letter for Discord |

NSFW

| Function | Description | | -------- | ----------- | | randomHentaiGif | Get a URL of hentai gif | | pussy | Get a NSFW URL of a pussy image/gif | | nekoGif| Get a NSFW URL of a neko gif | | neko | Get a NSFW URL of a neko image | | lesbian | Get a NSFW URL of a lesbian image/gif | | kuni | Get a NSFW URL of a kuni image/gif | | cumsluts | Get a NSFW URL of a cumslut image/gif | | classic | Gets a NSFW URL of the classic endpoint image/gif | | boobs | Gets a NSFW URL of boobs image/gif | | bJ | Gets a NSFW URL of bj image/gif | | anal | Gets a NSFW URL of anal image/gif | | avatar | Gets a NSFW URL of an avatar image/gif | | yuri | Gets a NSFW URL of yuri image/gif | | trap | Gets a NSFW URL of trap image/gif | | tits | Gets a NSFW URL of an/a image/gif containing tits | | girlSoloGif | Gets a NSFW URL of a solo girl gif | | girlSolo | Gets a NSFW URL of a solo girl image | | pussyWankGif | Gets a NSFW URL of a gif of pussy masterbation | | pussyArt | Gets a NSFW URL of an/a image/gif of pussy art | | kemonomimi | Gets a NSFW URL of an/a image/gif containing kemonomimi| | kitsune | Gets a NSFW URL of an/a image/gif of kitsune | | keta | Gets a NSFW URL of an/a image/gif of keta | | holo | Gets a NSFW URL of an/a image/gif of Holo | | holoEro | Gets a NSFW URL of an/a image/gif Holo ero | | hentai | Gets a NSFW URL of an/a image/gif of hentai | | futanari | Gets a NSFW URL of an/a image/gif of futa | | femdom | Gets a NSFW URL of an/a image/gif of femdom | | feetGif | Gets a NSFW URL of a gif of feet | | eroFeet | Gets a NSFW URL of an/a image/gif of ero feet | | feet | Gets a NSFW URL of an image of feet | | ero | Gets a NSFW URL of an/a image/gif ero | | eroKitsune | Gets a NSFW URL of an/a image/gif ero kitsune | | eroKemonomimi | Gets a NSFW URL of an/a image/gif ero kemonomimi | | eroNeko | Gets a NSFW URL of an/a image/gif ero neko | | eroYuri | Gets a NSFW URL of an/a image/gif ero yuri | | cumArts | Gets a NSFW URL of an/a image/gif of cum arts | | blowJob | Gets a NSFW URL of an/a image/gif blowjob | | spank | Gets a NSFW URL of an/a image/gif spank | | gasm | Gets a NSFW URL of a gasm image |

All of the endpoints but the ones marked with text, except Chat/8Ball/Fact in the description will return JSON: { url: <theURL>}.

sfw.catText will return JSON: {cat: <catemoji>}
sfw.why will return JSON {why: <whytext>}
sfw.OwOify will return JSON {owo: <owoified string>}

sfw.fact will return JSON {fact: <fact string>}
sfw.eightBall will return JSON {response: <8Ball response string>, url: <URL to a matching 8Ball image>}

As of now, OwOify and eightBall are the only ones with query parameters. It requires an object containing the parameter, and the key should be the value. In this case, the key is text and the value is whatever you want OwOified. There is an example in this README. {text: 'Some text you want weebified.}

Typings

I added a typings file and will be working to improve it. This allows editors like VSC to use intellisense/autocomplete to suggest functions and help out with parameters and to see what you'll be receiving as a result of function calls.

Examples

Await/Async example

const client = require('nekos.life');
const neko = new client();

async function test() {
  console.log(await neko.sfw.hug());
}

test();

returns:

{ url: 'https://cdn.nekos.life/hug/hug10050.gif' }

Promise example

const client = require('nekos.life');
const neko = new client();

neko.sfw.catText().then((catText) => console.log(catText));

returns

{ cat: '((≡^⚲͜^≡))' }

OwOify example

const client = require('nekos.life');
const neko = new client();

async function work() {
  let owo = await neko.sfw.OwOify({text: 'This lib is really awesome!'});
  console.log(owo);
}

work();

returns

{ owo: 'This wib is weawwy awesome >w< ' }

NSFW example

const client = require('nekos.life');
const neko = new client();

neko.nsfw.neko().then(neko => {console.log(neko);});

returns

{ url: 'https://cdn.nekos.life/lewd/lewd_neko750.jpeg' }

Advanced examples

Here I'll show you how to import either sfw or nsfw if you would like to do so. That allows you to only use one or the other So if you only need sfw, you can just import that without anything nsfw!

Importing only sfw

const client = require('nekos.life');
const {sfw} = new client();

sfw.neko().then(neko => console.log(neko));

returns

{ url: 'https://cdn.nekos.life/neko/neko_083.jpg' }

Importing only nsfw

const client = require('nekos.life');
const {nsfw} = new client();

nsfw.neko().then(neko => console.log(neko));

returns

{ url: 'https://cdn.nekos.life/lewd/lewd_neko_058.jpeg' }