# open-weather-search

> Weather lib

Latest version **3.0.3** (published 2022-09-29) · ISC license · 0 weekly downloads

## Install

```sh
npm install open-weather-search
pnpm add open-weather-search
yarn add open-weather-search
bun add open-weather-search
```

## Health

**Score 20/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities.

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 3.0.3 |
| Published | 2022-09-29 |
| First published | 2022-09-29 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 4 |
| Unpacked size | 525.7 KB |
| Known vulnerabilities | 0 (+35 in 2 direct dependencies) |
| Install scripts | no |
| Maintainers | leahim |

## Links

- npm: https://www.npmjs.com/package/open-weather-search
- npm.io page: https://npm.io/package/open-weather-search

## Dependencies (4)

- [axios](https://npm.io/package/axios.md) ^0.27.2
- [undici](https://npm.io/package/undici.md) ^5.10.0
- [@napi-rs/canvas](https://npm.io/package/@napi-rs/canvas.md) ^0.1.29
- [node-google-translate-skidz](https://npm.io/package/node-google-translate-skidz.md) ^1.1.2

## Recent versions

- 3.0.3 (latest) — 2022-09-29
- 3.0.0 — 2022-09-29
- 2.0.2 — 2022-09-29
- 1.0.1 — 2022-09-29
- 0.0.2 — 2022-09-29
- 0.0.1 — 2022-09-29
- 0.0.0 — 2022-09-29

## README

<div align="center">
  <img src="https://sun9-57.userapi.com/c841338/v841338707/73b88/LsFa65aRXJI.jpg"/>
</div>


## Installation

```
npm i -s luwus
```

Your api key you can get here: https://openweathermap.org/api
## Functions

| Function | Description |
| -------- | ----------- |
| `getWeatherCanvas` | returns the buffer of image with weather of the every city you want (code example 1) |
| `getWeatherObject` | returns the object with weather of the every city you want (code example 2)|

## Code examples:

> # Code example 1:
> ```js
> const { getWeatherCanvas } = require('luwus')
>
> getWeatherCanvas(`city, cuntry`, 'bg url', 'lang', 'your api key').then((res) => {
>    console.log(res)
> });
> ```

> # Code example 2:
> ```js
> const { getWeatherObject } = require('luwus')
> 
> getWeatherObject(`city, country`, 'your api key').then((res) => {
>     console.log(res)
> });
> ```

> # Simple discord bot example:
> ```js
> const Discord = require('discord.js');
> const client = new Discord.Client({
>	intents: ['Guilds', 'GuildVoiceStates', 'GuildMessages'],
> });
> const config = {
>	prefix: '<prefix>',
>	token: '<token>',
> };
>
> client.on('ready', client => {
>	console.log(`I am ready to work!`);
> });
>
> client.on('messageCreate', message => {
>    if(message.author.bot) return
>    const args = message.content.slice(config.prefix.length).trim().split(/ +/g);
>    const command = args.shift();
>
>    if(command === "weather"){
>      getWeatherInCityWithCanvas(`${args}`, '<bg url>', 'eng', '<api key>').then((res) => {
>            message.reply({
>                files: [res]
>            }).catch((error) => { message.reply(res) })
>        });
>    }
> })
>
> client.login(config.token);
> ```
> ![result](https://cdn.discordapp.com/attachments/1009089069793419304/1025159947949985892/weather_in_the_bot.PNG)

## Return examples

### Return example 1:
```js
<Buffer 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 03 84 00 00 01 c2 08 06 00 00 00 b7 d0 07 63 00 00 00 01 73 52 47 42 00 ae ce1c e9 00 00 00 04 ... 123423 more bytes>
```

### Return example 2:
```js
{
  name: 'Moscow',
  temp: { Kelvin: 284.2, Celsius: 11.1, Fahrenheit: 52 },
  temp_min: { Kelvin: 282.29, Celsius: 9.1, Fahrenheit: 48.5 },
  temp_max: { Kelvin: 285.5, Celsius: 12.4, Fahrenheit: 54.2 },
  sea_level: 1019,
  grnd_level: 1001,
  feels_like: { Kelvin: 283, Celsius: 9.9, Fahrenheit: 49.7 },
  visibility: 10000,
  clouds: 100,
  country: 'RU',
  sunrise: 1662864792,
  sunset: 1662911980,
  coord: { lon: 37.6156, lat: 55.7522 },
  main: { main: 'Clouds', description: 'overcast clouds' },
  wind: { speed: 1.42, deg: 206, gust: 2.61 }
}
```

### Lib using:
* [axios](https://www.npmjs.com/package/axios)
* [typescript](https://www.npmjs.com/package/typescript)
* [@napi-rs/canvas](https://www.npmjs.com/package/@napi-rs/canvas)
* [node-google-translate-skidz](https://www.npmjs.com/package/node-google-translate-skidz)
* [undici](https://www.npmjs.com/package/undici)

## [Your api key you can get here](https://openweathermap.org/api)

---
_Source: https://npm.io/package/open-weather-search · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
