# R34Api.js - By [BulzyKrown](https://bulzyland.xyz) - With the help of [Esponjosin](https://esponjosin.xyz) and Rickz ## Instalation ```js // With NPM $ npm install r34api.js --save // With Yarn $ yarn add r34api.js ``` ### Using in your project: ```js const r34api = new (require('r34api.js')); console.log(r34api.methods); // Output: [ 'random', 'search', 'tags', 'help' ] ``` ### Methods: #### help: - Show information about an method. ```js /** * @param {String} [method] Name of the method you want to obtain information */ const data = await R34.help('method'); // Output example: { base: '/random', alias: '/r', method: 'GET', description: 'Get random data from Rule34', query: { type: { description: 'It delivers images just like that in a random way', variable: [Array], example: 'type=png' }, limit: { description: 'Obtain a limit of data from the database', example: 'limit=3' } }, routes: { all: { base: '/all', method: 'GET', description: 'Obtains all the data stored on the DB', query: [Object] } } } ``` #### tags: - Provides a list of the most popular tags from highest to lowest. ```js /** * @param {Number} [limit] The limit of data you want to obtain (By default 1) */ const data = await R34.tags(2); // Output example: { status: 200, msg: 'success', data: [ { post: 11111, name: 'xxxx', type: 'general' } ] } ``` #### random: - Get random data from Rule34. ```js /** * @param {Number} [limit] The limit of data you want to obtain (By default 1) * @param {String} [type] Format of the image you want to obtain (Optional) */ const data = await R34.random(1, 'gif'); // Output example: { status: 200, msg: 'success', data: [ Image { id: 1, type: 'x', rating: 'x', dimension: '1 x 1', post: 'x', media: 'x', tags: [Array] } ] } //Note: Inside the data property there are objects that are an Image class that have a function called getBuffer that returns the image buffer. ``` #### search: - Get data of the search randomnly. ```js /** * @param {String} [tag] Tag from where you want to get an image */ const data = await R34.search('Anime'); // Output example: { status: 200, msg: 'Success', data: Image { id: 1, type: 'PNG', rating: 'Explicit', dimension: '1 x 1', post: 'x', media: 'x', tags: [] } } //Note: Inside the data property there are objects that are an Image class that have a function called getBuffer that returns the image buffer. ```