open-index/open-npm huggingface dataset:
npm package: @sbor767-lab/weather-cli-playground
Description: Experimental weather CLI tool used for personal tests and prototypes. Not intended for production use.
Author: Aleksandr Borkov
Latest version: 0.1.0

# weather-cli-playground

Experimental weather CLI tool for personal Node.js/CLI tests and prototypes. Not intended for production use.  
NPM package: `@sbor767-lab/weather-cli-playground`

## Features

- Fetches current weather for a configured city or any city passed as argument using OpenWeatherMap API
- Stores API token and default city in a simple JSON config in the user's home directory
- Simple CLI interface with a small set of flags
- Pass a city name as an argument to get weather without modifying the saved configuration

## Installation

### Global install from npm

```bash
npm install -g @sbor767-lab/weather-cli-playground
```

After a global install, the `weather` command becomes available in your shell.

### Local clone (development)

```bash
git clone https://github.com/sbor767/weather-cli-playground.git
cd weather-cli-playground
npm install
```

Run locally without installing globally:

```bash
node weather.js -h
```

Or link globally for development:

```bash
npm link
weather -h
```

### Development notes

On Unix-like systems, make sure the CLI entry file is executable:

```bash
chmod +x weather.js
```

## Configuration

The CLI uses the OpenWeatherMap API for current weather data. You need an API token from:  
[https://openweathermap.org/](https://openweathermap.org/) (free tier is enough).

On first run you can provide:

- `-t <token>` - OpenWeatherMap API token
- `-s <city>` - default city name

Both values are stored in a config file:

- `weather-cli.json` in the current user's home directory

## Usage

### Basic usage

Show help:

```bash
weather -h
```

Set token and default city:

```bash
weather -t YOUR_API_TOKEN -s "London"
```

Change only the city:

```bash
weather -s "New York"
```

Change only the token:

```bash
weather -t NEW_API_TOKEN
```

Show current weather for the saved city (no flags):

```bash
weather
```

Show current weather for a specific city (without saving):

```bash
weather "Paris"
```

### CLI options

- `-h`  
	Show help and usage information.
- `-t <token>`  
	Set and store the OpenWeatherMap API token in `weather-cli.json`.
- `-s <city>`  
	Set and store the default city in `weather-cli.json`.
- `<city>`  
	Show current weather for the specified city without modifying the saved configuration.

## Status

Experimental / playground project. APIs, flags and behavior may change at any time.
npm package: @sbourouis/idle-js
Description: Detect user idleness. In other words, play with activity state.
Author: hugohil
Latest version: 2.0.0-beta.2

# idle-js

⏲

A really simple utility module for tracking user activity on a tab. Usefull to change the tab name, or creating micro interaction in your webapp.

- returning to a particular after no activity identified
- display a modal depending on activity
- change things while the user is away
- create anything funny :)

>Warning IE11 is not supported by default anymore. If you want to use it, you might want to add a polyfill for `Object.assign` -> https://www.jsdelivr.com/package/npm/polyfill-object-assign

## Install

`npm i idle-js`

## Browsers support

![Chrome](https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png) | ![Firefox](https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png) | ![IE](https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png) | ![Opera](https://raw.githubusercontent.com/alrra/browser-logos/master/src/opera/opera_48x48.png) | ![Safari](https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png)
--- | --- | --- | --- | --- |
Latest ✔ | Latest ✔ | 10+ ✔ | Latest ✔ | 6.1+ ✔ |

## Usage in your script

```js
// Those are the default values
var idle = new IdleJs({
  idle: 10000, // idle time in ms
  events: ['mousemove', 'keydown', 'mousedown', 'touchstart'], // events that will trigger the idle resetter
  onIdle: , // callback function to be executed after idle time
  onActive: , // callback function to be executed after back form idleness
  onHide: , // callback function to be executed when window become hidden
  onShow: , // callback function to be executed when window become visible
  keepTracking: true, // set it to false if you want to be notified only on the first idleness change
  startAtIdle: false // set it to true if you want to start in the idle state
})
```

To start observing the state of the tab:

`idle.start()`

If you need to stop observing:


`idle.stop()`   // stops all tracking

You can then reset and start again:

```
idle.stop()
    .reset()  // reset visible and idle state to initial values
    .start()  // restart
```

Reset to a specific state

```
idle.reset({
  idle: false,
  visible: ! document.hidden,
})
```

## Running example

### Simply start the server [Vite](https://vitejs.dev/)

`pnpm dev -- --port 3030`

Need to choose an other port ? `pnpm dev -- --port 6060`

Open the local url, in your browser: `http://localhost:3030` or `http://localhost:THE_PORT_YOU_CHOOSE`
npm package: @sbourouis/react-json-viewer
Description: A customizable, interactive JSON viewer component for React with syntax highlighting and collapsible nodes
Author: Nightwatch Team
Latest version: 1.0.2

# @sbourouis/react-json-viewer

A lightweight, interactive JSON viewer component for React with syntax highlighting and collapsible nodes.

## Features

- 🎨 **Syntax Highlighting** - Different colors for strings, numbers, booleans, null values, and dates
- 🔄 **Collapsible Nodes** - Click to expand/collapse objects and arrays
- 🌙 **Dark Mode Support** - Built-in dark mode styling
- 📱 **Responsive** - Works on all screen sizes
- ⚡ **Lightweight** - Minimal dependencies
- 🎯 **TypeScript** - Full TypeScript support

## Installation

```bash
npm install @sbourouis/react-json-viewer
# or
yarn add @sbourouis/react-json-viewer
# or
pnpm add @sbourouis/react-json-viewer
```

## Usage

```tsx
import { JsonViewer } from '@sbourouis/react-json-viewer';

const data = {
  name: "John Doe",
  age: 30,
  isActive: true,
  address: {
    street: "123 Main St",
    city: "New York",
    zipCode: "10001"
  },
  hobbies: ["reading", "swimming", "coding"],
  lastLogin: "2024-01-15T10:30:00Z",
  metadata: null
};

function App() {
  return (
    <div className="p-4">
      <JsonViewer value={data} />
    </div>
  );
}
```

## Props

| Prop | Type | Default | Description |
|------|------|---------|-------------|
| `value` | `Record<string, unknown>` | - | The JSON object to display |
| `className` | `string` | - | Additional CSS classes to apply |
| `styles` | `Record<string, string>` | Tailwind classes to use for each item type |

## Styling

This component uses Tailwind CSS classes. Make sure you have Tailwind CSS installed and configured in your project.

The component supports both light and dark modes automatically based on your Tailwind CSS dark mode configuration.

## Color Scheme

- **Strings**: Red (`text-red-500`)
- **Numbers**: Lime (`text-lime-600`)
- **Booleans**: Orange (`text-orange-500`)
- **Null values**: Gray (`text-neutral-500`)
- **Dates**: Blue (`text-blue-500`)
- **Syntax elements**: Neutral (`text-neutral-500`)

## Requirements

- React 16.8+
- Tailwind CSS (for styling)

## License

MIT
npm package: @sbourouis/vue-chart-3
Description: 📊 A simple wrapper around Chart.js 3 for Vue 2 & 3
Author: Victor Garcia
Latest version: 3.0.8

# 📊 Chart.js 3 for Vue 2 and Vue 3

<p align="center">
  <a href='https://sgts.netlify.com/'>
    <img width='100' src="https://raw.githubusercontent.com/victorgarciaesgi/vue-chart-3/main/media/logo.svg" alt="sgts logo">
  </a>
</p>

[![npm version][npm-version-src]][npm-version-href]
[![npm downloads][npm-downloads-src]][npm-downloads-href]
[![npm downloads][npm-total-downloads-src]][npm-downloads-href]
<img src='https://img.shields.io/npm/l/vue-chart-3.svg'>

[npm-version-src]: https://img.shields.io/npm/v/vue-chart-3.svg
[npm-version-href]: https://www.npmjs.com/package/vue-chart-3
[npm-downloads-src]: https://img.shields.io/npm/dm/vue-chart-3.svg
[npm-total-downloads-src]: https://img.shields.io/npm/dt/vue-chart-3.svg
[npm-downloads-href]: https://www.npmjs.com/package/vue-chart-3

This package is a rewrite of [vue-chartjs](https://github.com/apertureless/vue-chartjs) for Chart.js 3, but written in Typescript with Vue 3 composition api in mind.

# [Documentation](https://vue-chart-3.netlify.app/)

[Full documentation](https://vue-chart-3.netlify.app/)

# ⚠️ Breaking changes and new versions numbers

In previous versions, `vue-demi` was used. It worked really well, but as the project advanced, they were a lot of problems with vue-related typescript definitions, tests and conflict between dependencies.

This new system will keep `vue-chart-3` working for both Vue 2 & 3 with designated versions (`2.x` and `3.x` respectively), but each one designed for their specific Vue version.

Code wise, there is not big breaking changes. But the Vue 3 version will have improved type checking for components template (with Volar extension).

For Vue 3 users, nothing changes.
For Vue 2 users, you will have to keep `2.x` version of `vue-chart-3`

# Installation

## For Vue 3

```bash
npm i vue-chart-3
#or
yarn add vue-chart-3
#or
pnpm i vue-chart-3
```

## For Vue 2

```bash
npm i vue-chart-3@legacy
#or
yarn add vue-chart-3@legacy
#or
pnpm i vue-chart-3@legacy
```

# Important notes

## Using with Vue 3 or Vue 2

This package works with version 2.x and 3.x of Vue.

- Vue 3 works out-of-the-box
- Vue 2 requires `@vue/composition-api` package to also be installed and registered, to provide Vue 3's [Composition API](https://v3.vuejs.org/guide/composition-api-introduction.html) features like `ref, defineComponent, computed, reactive`.

### ⚠️ Since `2.0.3` (for Vue 2 users), Vue composition api will not register itself. Update your project if you didn't do it manually!

# Demos

- Vue 3: [CodeSandbox demo Vue 3](https://codesandbox.io/s/demo-vue-chart-3-ugynm?file=/src/App.vue)
- Vue 2 + composition API: [CodeSandbox demo Vue 2 + composition](https://codesandbox.io/s/vue-chart-3-vue-2-mw54f?file=/src/App.vue)
- Vue 2 + Typescript + class API [CodeSandox demo Vue 2 + class](https://codesandbox.io/s/vue-chart-3-vue-2-class-api-f7gv1?file=/src/App.vue)
- Nuxt 2 + SSR [CodeSandbox demo Nuxt 2 + SSR](https://codesandbox.io/s/vue-chart-3-nuxt-2-mrtej?file=/pages/index.vue)
npm package: @sboutet/strapi-provider-email-mailjet
Description: Mailjet provider for Strapi with attachments support for latest Strapi versions.
Author: Sébastien Boutet
Latest version: 1.0.0

# strapi-provider-email-mailjet

[Mailjet](https://mailjet.com/) provider for Strapi with attachments support for latest Strapi versions.

Made by [Automat-IT](https://www.automat-it.com/)

## Resources

- [MIT License](LICENSE.md)

## Links

- [Strapi website](http://strapi.io/)
- [Strapi community on Slack](http://slack.strapi.io)
- [Strapi news on Twitter](https://twitter.com/strapijs)

## Installation

```bash
npm i strapi-provider-email-mailjet
```
npm package: @sbovyrin/webpack-mini
Description: Minimal webpack config that is easy extending when it's necessary
Author: Sergey Bovyrin
Latest version: 1.1.2

# `webpack-mini`

![NPM](https://img.shields.io/npm/l/@sbovyrin/webpack-mini?color=green&style=flat-square)
![npm](https://img.shields.io/npm/dm/@sbovyrin/webpack-mini?color=green&style=flat-square)
![GitHub issues](https://img.shields.io/github/issues/sbovyrin/webpack-mini?color=green&style=flat-square)
![npm (scoped)](https://img.shields.io/npm/v/@sbovyrin/webpack-mini?color=green&style=flat-square)

> Read [Changelog](CHANGELOG.md) before updating!

Minimal webpack config that is easy extending when it's necessary.

By default:
- input file `index.js` must be located in `src` directory
- html-template file must be located in project root
- output files are located in `dist` directory


## Quick start

1. Create main js file in `src` directory: `/src/index.js`
2. Create index.html template in your project root: `/index.html`
3. Create `webpack.config.js` file in your project root
    - add next code to the file:
        ```javascript
        const { defaultConfig } = require('@sbovyrin/webpack-mini');
        
        module.exports = defaultConfig();
        ```
4. Optionally install webpack-dev-server: `npm i --save-dev webpack-dev-server`
5. Start development server: `npx webpack --watch --env.dev`
    - or: `npx webpack-dev-server --env.dev`
6. Build the project for production: `npx webpack --env.prod`
    - output files are located in `/dist` directory


## Features

- Ready to work out of the box
- Easy to customize
- Output separate files
    - app.js (your application)
    - vendor.js (app's dependencies)
    - runtime.js (wepback runtime)
    - styles.css (app's CSS)
- Production files are optimized (including tree-shaking)
- Hot server reload for development
- Lightweight and low resource consumer


## Customize

### Change entry configuration
- Create `webpack.config.js` file
    ```javascript
    const { defaultConfig } = require('@sbovyrin/webpack-mini');

    module.exports = defaultConfig();
    ```
- Create your customized config function
    ```javascript
    // here 'env' has value passed to --env (i.e '--env.prod' in script command)
    function customizeConfig(env) {
      return {
        entry: 'mysource/app.js'
      }
    }

    module.exports = defaultConfig(customizeConfig);
    ```
- Now your entry point is `mysource/app.js`

### Using React.js

Comming soon...
npm package: @sboxso/devbox
Description: Sbox Devbox wrapper: CSB-compatible preview URL + FS client
Latest version: 0.0.1

# @sbox/devbox

Minimal Sbox Devbox wrapper: CSB-compatible preview URL builder and FS client for sbox.so microVM sandboxes.

## Install

```bash
bun add @sbox/devbox
# or local dev before publish:
bun add file:/home/et/devbox
```

## Usage

```ts
import { Providers, getPreviewUrl, FsClient } from '@sbox/devbox';
const provider = process.env.DEVBOX_PROVIDER === 'SBOX' ? Providers.SBOX : Providers.CSB;
const id = 'abc123';
const preview = getPreviewUrl(provider, id, 3000, process.env.PINK_SBOX_DOMAIN || 'sbox.so');
const fs = new FsClient({ base: preview, token: process.env.PINK_FS_TOKEN });
await fs.writeText('app/page.tsx', 'export default function Home(){return (<main><h1>Sbox</h1></main>)}');
```
npm package: @sbp-datapull/atlassian-origin
Description: Data origin for Atlassian services: pull data from Jira Cloud and Confluence Cloud API
Latest version: 0.9.1

# Datapull Atlassian origin

This origin pulls data from Atlassian Cloud REST API. 
We list all Jira users who are members of a group which name is passed in configuration parameter.

## Example

To collect all users that are members of group XYZ, make your configuration to look like [atlassian-test](../../../examples/atlassian-test.yml)
npm package: @sbp/okturtles.data
Description: Provides a useful in-memory datastore for SBP
Author: Greg Slepak
Latest version: 0.1.7

# `okTurtles.data`

Creates an in-memory key-value datastore for [SBP](https://github.com/okTurtles/sbp-js).

Offers basic set/get/delete actions, and a more interesting `/apply` selector that can be used where normally an instance from OOP would be used.

See [`index.test.js`](index.test.js) for usage examples.

Install:

```
$ npm install --save @sbp/okturtles.data
```

Usage:

```js
import sbp from '@sbp/sbp'
import '@sbp/okturtles.data'

// now you can use any of the okTurtles.data selectors
// note: you only need to import '@sbp/okturtles.data' once!
```

Registers the following selectors. Self-explanatory except for `/apply`:

- `'okTurtles.data/get'`
- `'okTurtles.data/set'`
- `'okTurtles.data/delete'`
- `'okTurtles.data/add'`
- `'okTurtles.data/remove'`
- `'okTurtles.data/apply'` - applies a function to the value of a given key.

## History

See [HISTORY.md](HISTORY.md).

## License

[MIT](LICENSE.txt).
npm package: @sbp/okturtles.eventqueue
Description: Synchronize asynchronous SBP invocations
Latest version: 1.2.1

# `okTurtles.eventQueue`

A serial event queue for asynchronous [SBP](https://github.com/okTurtles/sbp-js) invocations.

Use this to ensure asynchronous SBP invocations get invoked serially, one after another, waiting for the previous invocation to finish completely.

Install:

```
$ npm install --save @sbp/okturtles.eventqueue
```

Usage:

```js
import sbp from '@sbp/sbp'
import '@sbp/okturtles.eventQueue'

async function syncronousHandleEvent (event) {
  // here the SBP invocation to 'state/vuex/dispatch' will be
  // passed to an event queue designated by 'queue1'
  const result = await sbp('okTurtles.eventQueue/queueEvent', 'queue1', [
    'state/vuex/dispatch', 'handleEvent', event
  ])
  return result
}
```

Registers the following selectors:

- `'okTurtles.eventQueue/queueEvent'`
- `'okTurtles.eventQueue/isWaiting'`
- `'okTurtles.eventQueue/queuedInvocations'`

## History

See [HISTORY.md](HISTORY.md).

## License

[MIT](LICENSE.txt).
npm package: @sbp/okturtles.events
Description: SBP-friendly event handling.
Author: Greg Slepak
Latest version: 1.0.1

# `okTurtles.events`

Event handling for [SBP](https://github.com/okTurtles/sbp-js).

See [`index.test.js`](index.test.js) for usage examples.

Install:

```
$ npm install --save @sbp/okturtles.events
```

Usage:

```js
import sbp from '@sbp/sbp'
import '@sbp/okturtles.events'

// now you can use any of the okTurtles.events selectors
// note: you only need to import '@sbp/okturtles.events' once!
```

Registers the following selectors:

- `'okTurtles.events/on'`
- `'okTurtles.events/once'`
- `'okTurtles.events/emit'`
- `'okTurtles.events/off'`

## History

See [HISTORY.md](HISTORY.md).

## License

[MIT](LICENSE.txt).