1.0.3 • Published 2 years ago

kap_nekoapi v1.0.3

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

Buenas, te presento kap_nekoapi, un modulo de temática anime que te devuelve un objeto con un gif y el nombre de su anime correspondiente totalmente aleatorio, esto para facilitarte el trabajo de buscar imagen por imagen... a nadie le gusta hacer eso, ¿O si?

Bueno pues para eso se ha creado este modulo el cual cuenta con 2 secciones Reaction, Action (Actualizado) por el momento, con imágenes muy útiles en la palma de tu mano! 🥳

Instalar

$ npm install kap_nekoapi

Kap_nekoapi es muy fácil se usar, funciona a través de objetos y es muy simple, aquí un ejemplo:

const api = require('kap_nekoapi');

async function imgRandom(){

	//seleccionas la categoría reaction
	const objA = await api.reaction.function()

	//seleccionas la categoría action
	const objB = await api.action.function()

	//La parte de ".function()" se refiere a la accion
	//que deseas usar de la categoría escogida...
	//Y este siempre devolverá un objeto

	console.log(objA)
	console.log(objB)
}

imgRandom()
  • Resultado
{
	"name": "Nombre del anime",
	"url": "Url del gif"
}

Muy fácil verdad? :^ A continuación un ejemplo dedicado a un bot de discord mucho mas detallado

Bot Discord.js

El uso de la api con discord.js es igual de sencillo y se lo demostraremos con un pequeño ejemplo de un proyecto desarrollado con Discord.js

const  Discord = require('discord.js')
const client = new Discord.Client({ intents: 32767 })
//Hacemos una estructura basica para un bot
//luego requerimos la api que usaremos :D

const  api = require('kap_nekoapi')




//Evento ready el cual sirve para iniciar el bot  
client.on('ready', () => {
	console.log(`Estoy listo! :D`)
});



//Definimos prefix
//Recuerden que esto solo es un ejemplo
let  prefix = '!'


//Creamos en event message usando async
client.on('messageCreate', async  message  => {
	
	if(!message.content.startsWith(prefix)) return
	const  args = message.content.slice(prefix.lenght).trim().split(/  +/g)
	const  command = args.shift().toLowerCase()


	if(command ==  'cry'){

	//llamamos al objeto con la api
	const obj = await  nekoapi.reaction.cry()

	//Hacemos un embed
	const  embed = new  Discord.MessageEmbed()
		.setDescription(`${message.author.username} Empezó a llorar ;-;`)
		.setColor('RANDOM')
		//Entonces, como obj devuelve un objeto con una url y un nombre...
		//vamos a utilizar las dos en este caso
		.setImage(`${obj.url}`)
		.setTimestamp()
		.setFooter(`${obj.name}`);

	message.channel.send({embeds: [embed]})
	}

})


client.login('tu token')
  • Resultado enter image description here

Mas sencillo? Imposible :0

Categorías y especificaciones

Actualmente la api cuenta con solo 2 secciones de las cuales solo 1 está habilitada por el momento, pero cada dia le añadimos mas y mas variedad! ✨

Reaction

Reaction
blushc Sonroja (>////<)
sleepTengo mucho sueño 🥱
confused¿Que? 🤔
cryllora* ;-;
danceHora de bailaaar :D
happy:)
lewdpensamientos lascivos hot
Action/Interaction
feedHora de comer :D
kissBeso de lengua u///u
hugDale un fuerte abrazo a una persona :)
licklamer
patacariciar a una persona
kickbuttpatea a alguien >:o
slapdale una bofetada!
spankla nalgea

Posibles errores

  • Resultado Undefined

  1. Es un error muy común, hacen una función, ejecutan su proyecto y el resultado es undefined. Esto se debe a que el resultado que da la api es una promesa, es decir, tienen que resolver esta promesa usando async/await y asi evitar una respuesta undefined. A continuación un ejemplo
    ```js
    const api = require('kap_nekoapi');
    
    //Definimos una funcion asyncrona
    async function gifs() {
    
    	//Hacemos el uso de await
    	let obj = await api.reaction.cry()
    	
    	console.log(obj.name)
    	console.log(obj.url)
    }
    
    gifs()
    //Y listo, el error debería estar solucionado
    ```
  2. Otra posible solución sin el uso de async/await sería esta:

    ```js
    const api = require('kap_nekoapi');
    
    api.reaction.cry().then((res) => {
    	console.log(res.name)
    	console.log(res.url)
    })
    ```
  • El resultado name del objeto es null

    Si estas usando esta api es muy probable de que ya te hayas encontrado con este error, en el cual el objeto viene con una url especifica pero con `name` null:
    
    ```json
    {
    	"name": "null",
    	"url": "https://example.gif"
    }
    ```
    Esto no es exactamente un error como tal, la razón por la cual sucede esto es que el gif no corresponde a ningún anime en particular o talvez nosotros no lo encontramos.<br> **(Si este es el caso puedes reportarlo en nuestro servidor de [Soporte](https://discord.gg/fAstgwM9rz) y convertirte en un colaborador en una futura version )**<br> La única solución que se le podría dar a este problema es con una condicional
    ```js
    const res = obj.name
    
    if(res === 'null')return console.log("No hay name :sob:")
    ```
  • ¿Tienes otro error distinto o alguna otra duda?

    	Puedes consultar tus dudas en nuestro servidor de [Soporte](https://discord.gg/fAstgwM9rz) y te atenderemos lo antes posible! 🥳

Nota

Probablemente hay algunos objetos de la api que tienen datos erróneos o algún otro error, si notas uno no dudes en reportarlo, nos ayudaría mucho para mejorar en el aspecto de calidad :)