open-index/open-npm huggingface dataset:
npm package: @iamrokt/prayer-cli
Description: An intuitive CLI to show muslim prayer times
Author: Muhammad Yasser
Latest version: 1.0.3

## A Node.js CLI to show prayer times

## I will discotinue work on the app, you can fork it if you want

#### Install globally using the following command:

```
npm i -g @iamrokt/prayer-cli
```

#### or use without installing using npx:

```
npx @iamrokt/prayer-cli
```

#### Run the app using the following command:

```
pray
```

![Demo](https://i.imgur.com/GXh3Afc.gif)

<p>Developed by: Muhammad Yasser</p>
npm package: @iamsamwen/provider-upload-aws-s3-plus
Description: AWS S3 provider for strapi upload with prefix, defaultPath and baseUrl with customized domain name features
Latest version: 1.0.3

# provider-upload-aws-s3-plus for strapi v4

AWS S3 provider for strapi upload with prefix, defaultPath, baseUrl and customized domain name features.

use @aws-sdk/client-s3

## Installation

```bash
# using yarn
yarn add @iamsamwen/provider-upload-aws-s3-plus

# using npm
npm install @iamsamwen/provider-upload-aws-s3-plus --save
```

## Configurations

replace MY.DOMAIN.NAME with your domain name.

### Provider Configuration

add upload section of following code to ./config/plugins.js

```js
module.exports = ({ env }) => ({
  // ...
  upload: {
    config: {
      provider: '@iamsamwen/provider-upload-aws-s3-plus',
      providerOptions: {
        accessKeyId: env('AWS_ACCESS_KEY_ID'),
        secretAccessKey: env('AWS_ACCESS_SECRET'),
        region: env('AWS_REGION'),
        params: {
            Bucket: env('AWS_BUCKET'),
            Key: env('AWS_KEY'),  // prefix 
        },
        baseUrl: env('AWS_BASE_URL'),
        defaultPath: 'AWS_DEFAULT_PATH', // default path if no file path provided
      },
    },
  },
  // ...
});

```

for example, if you have .env setup as:
```
...
AWS_BUCKET=MY.DOMAIN.NAME
AWS_BASE_URL=https://MY.DOMAIN.NAME
AWS_KEY=products
AWS_DEFAULT_PATH=00-files
...
```

1. if no path is set when file is uploaded, the url looks like https://MY.DOMAIN.NAME/products/00-files/image_63ec2fe493.png.

2. if path is set to t-shirts, and name for the file is color-blue (see <a href="https://github.com/iamsamwen/strapi-api">strapi-api package: example 2 - upload a media file</a>), the url looks like https://MY.DOMAIN.NAME/products/t-shirts/color-blue_63ec2fe493.png


3. For additional key value pairs of ***params***, please refer to <a href='https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-s3/modules/putobjectrequest.html'>the aws reference doc</a>.

### Security Middleware Configuration

To fix the broken images in admin Media Library panel, use {...} block of following code to replace name: 'strapi::security' in ./config/middlewares.js.

```js
module.exports = [
  // ...
  {
    name: 'strapi::security',
    config: {
      contentSecurityPolicy: {
        useDefaults: true,
        directives: {
          'connect-src': ["'self'", 'https:'],
          'img-src': ["'self'", 'data:', 'blob:', 'MY.DOMAIN.NAME'],
          'media-src': ["'self'", 'data:', 'blob:', 'MY.DOMAIN.NAME'],
          upgradeInsecureRequests: null,
        },
      },
    },
  },
  // ...
];
```

## Required AWS Policy Actions

These are the minimum amount of permissions needed for this provider to work.

```json
"Action": [
  "s3:PutObject",
  "s3:GetObject",
  "s3:ListBucket",
  "s3:DeleteObject",
  "s3:PutObjectAcl"
],
```
npm package: @iamsap/find-quotes
Description: A library for identifying and labeling quotes in text.
Author: robbymillsap@gmail.com
Latest version: 0.0.2

# find-quotes
A simple npm library for identifying quotes in a paragraph of text
## Installing
```
npm install --save @iamsap/find-quotes
```

## API
| API   |      Description |
|----------|:-------------|
| [findRawQuoteFragments(text, cb)](#extracting-raw-quote-fragments) |  Extracts all quoted strings as a string array.
| [findQuotesGroupedByParagraph(text, cb)](#extracting-quotes-grouped-by-paragraph) |  Groups quoted strings into a paragraph and combines them. |

## Extracting raw quote fragments
```
var findQuotes = require('find-quotes');
var quoteText = `
That's when Todd knew it was over.  "Get over here," he said. "Now!"
`;

findQuotes.findRawQuoteFragments(quoteText, function cb(err, quotes){
    // returns an array of string fragments
    console.log(JSON.stringify(quotes.length)); 
});
```

**console.log**
```
[Get over here,Now]
```

## Extracting quotes grouped by paragraph 
```
var findQuotes = require('find-quotes');
var quoteText = `
            Minerva and Juno muttered their discontent as they sat side by side
hatching mischief for the Trojans. Minerva scowled at her father,
for she was in a furious passion with him, and said nothing, but Juno
could not contain herself. "Dread son of Saturn," said she, "what,
pray, is the meaning of all this? Is my trouble, then, to go for nothing,
and the sweat that I have sweated, to say nothing of my horses, while
getting the people together against Priam and his children? Do as
you will, but we other gods shall not all of us approve your counsel."

Jove was angry and answered,
`;

findQuotes.findQuotesGroupedByParagraph(quoteText, function cb(err, quotes){
    console.log(JSON.stringify(quotes[0]); 
});
```
***console.log***
```
[ // paragraph array
    { quote: "Dread son of Saturn, what, pray, is the meaning of all this? Is my trouble, then, to go for nothing, and the sweat that I have sweated, to say nothing of my horses, while getting the people together against Priam and his children? Do as you will, but we other gods shall not all of us approve your counsel."
    }
]
```
npm package: @iamsap/jwplayer-s3-upload
Description: A wrapper for JWPlayer that uses S3 to store video files.
Author: robbymillsap@gmail.com
Latest version: 0.0.1-c

# jwplayer-s3-upload
A NodeJS wrapper for uploading videos to JWPlayer via S3.

# How it works
* Uploads your video file to a bucket you own on S3
* Sends a request to JWPlayer to process the uploaded video
* Returns the file id from JWPlayer for your own storage

# installation
```
npm install --save @iamsap/jwplayer-s3-upload
```

# usage
```
var JWPlayerUploader = require('@iamsap/jwplayer-s3-upload');
var uploader = new JWPlayerUploader();
uploader.upload('/path/to/file.m4p', 'Look at me go!', function(err, response){
       console.log(JSON.stringify(response));
});
```

## output
```
{
  "rate_limit": {
    "limit": 60,
    "remaining": 59,
    "reset": 1486914000
  },
  "status": "ok",
  "video": {
    "key": "nU2qBigV"
  }
}
```

## config
.env.sample shows the environment variables jwplayer-s3-upload will use when connecting
```
export region=<aws-region>
export aws_access_key_id=<access-key-id>
export aws_secret_access_key=<secret-access-key-id>
export bucket=<bucket-name>
```

# JWPlayer
You'll need to go to jwplayer.com and setup a free developer account. From there you will find your api key and secret. You will need those later.

## Using Clack
Currently JWPlayer only supports python and php, so to make this work you'll need to install [clack](https://github.com/rmnl/clack) through the python
[package manager](https://en.wikipedia.org/wiki/Pip_(package_manager)).

```
pip install --upgrade clack-cli
click init
```
Then you'll need to install keyring so you're not prompted for the password every time you use clack.
```
sudo pip install keyring
```
Clack requires that you setup the credentials in keyring so you won't be prompted for your api secret. Credentials for clack are stored in your config file at:
```
/Users/<username>/.clack/config.ini
```
npm package: @iamsap/user-simulator
Description: A framework for creating simulated users and generating configurable behavior.
Author: robbymillsap@gmail.com
Latest version: 0.0.2

### User Simulator

Simulates configurable user behavior.

Install via npm
```javascript
npm install @iamsap\user-simulator
```

Import the simulator
```javascript
var sim = require('@iamsap/user-simulator');
```

## To have user-simulator create new users with @sillyname

```javascript
var doThisRandomThing = function doThisRandomThing(user, cb) {
    // ... some action
    cb(null, user.name + ' didThisRandomThing ' + new Date());
}

var doAnotherRandomThing = function doAnotherRandomThing(user, cb) {
    // ... some action
    cb(null, user.name + ' didAnotherRandomThing ' + new Date());
}

var config = {
    actions: [doThisRandomThing, doAnotherRandomThing],
    userCount: 10,
    timeBetweenActions: [1000, 5000],
    actionsPerUser: [1, 5],
    debug: true
}

sim.simulate(config, function onComplete(err, results) {
    console.log('All done: ' + JSON.stringify(results));
});

```

## Or to provide your own users
```javascript
var myUserArr = [{name:'John'}, {name:'Paul'}, {name:'George'}, {name:'Ringo'}];

var config = {
    actions: [doThisRandomThing, doAnotherRandomThing],
    users: myUserArr,
    timeBetweenActions: [50, 500],
    actionsPerUser: [1, 5],
    debug: true
}

sim.simulate(config, function onComplete(err, results) {
    console.log('All done: ' + JSON.stringify(results));
});
```

Note: Actions do not run concurrently (yet).
npm package: @iamsergio/qttest-utils
Description: API for listing QtTest executables from a build directory and which individual test slots each executable contains. Useful for a Text Explorer VSCode extension.
Author: sergio.martins@kdab.com
Latest version: 2.6.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# nodejs qttest-utils

![Build Status](https://github.com/KDAB/qttest-utils/actions/workflows/ci.yml/badge.svg)
![Pre-commit](https://github.com/KDAB/qttest-utils/actions/workflows/pre-commit.yml/badge.svg)

A [nodejs](https://www.npmjs.com/package/@iamsergio/qttest-utils) module for listing Qt Test executables and their individual test slots from a CMake build directory.

To be used by vscode extensions that implement the `Testing API`, but can also be used standalone for whatever reason ;).

Used by [vscode-qttest](https://github.com/KDAB/vscode-qttest) extension.

## Installation

```bash
npm i @iamsergio/qttest-utils
```

## Example

```bash
cd test/qt_test
cmake --preset=dev
cmake --build build-dev/
cd ../..
tsc
node out/example.js test/qt_test/build-dev
```
npm package: @iamsheikh/hello-world
Description: Hello World is blazingly fast JavaScript library
Author: Sheikh Taha Jameel
Latest version: 1.1.2

# Hello World

Hello World is blazingly fast JavaScript library that says Hello, World!

```
yarn add hello-world
```

```
npm install hello-world
```

```javascript
const helloWorld = require("hello-world");

console.log(helloWorld());
```

You can also change languages by using an extra parameter

```javascript
helloWorld("en"); // English
helloWorld("zh"); // Chinese
helloWorld("ja"); // Japanese
helloWorld("fr"); // French
```
npm package: @iamshivam-kumar/keycloak-sso
Description: A complete React Keycloak SSO library with social login support (Google, GitHub)
Author: Your Name
Latest version: 1.0.0

# React + TypeScript + Vite

This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.

Currently, two official plugins are available:

- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Babel](https://babeljs.io/) (or [oxc](https://oxc.rs) when used in [rolldown-vite](https://vite.dev/guide/rolldown)) for Fast Refresh
- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh

## React Compiler

The React Compiler is not enabled on this template because of its impact on dev & build performances. To add it, see [this documentation](https://react.dev/learn/react-compiler/installation).

## Expanding the ESLint configuration

If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:

```js
export default defineConfig([
  globalIgnores(['dist']),
  {
    files: ['**/*.{ts,tsx}'],
    extends: [
      // Other configs...

      // Remove tseslint.configs.recommended and replace with this
      tseslint.configs.recommendedTypeChecked,
      // Alternatively, use this for stricter rules
      tseslint.configs.strictTypeChecked,
      // Optionally, add this for stylistic rules
      tseslint.configs.stylisticTypeChecked,

      // Other configs...
    ],
    languageOptions: {
      parserOptions: {
        project: ['./tsconfig.node.json', './tsconfig.app.json'],
        tsconfigRootDir: import.meta.dirname,
      },
      // other options...
    },
  },
])
```

You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules:

```js
// eslint.config.js
import reactX from 'eslint-plugin-react-x'
import reactDom from 'eslint-plugin-react-dom'

export default defineConfig([
  globalIgnores(['dist']),
  {
    files: ['**/*.{ts,tsx}'],
    extends: [
      // Other configs...
      // Enable lint rules for React
      reactX.configs['recommended-typescript'],
      // Enable lint rules for React DOM
      reactDom.configs.recommended,
    ],
    languageOptions: {
      parserOptions: {
        project: ['./tsconfig.node.json', './tsconfig.app.json'],
        tsconfigRootDir: import.meta.dirname,
      },
      // other options...
    },
  },
])
```
npm package: @iamshrikantjagtap/chat-ui
Description: Minimal React chat window UI for `ai-chat-kit` backends (streaming SSE).
Latest version: 0.1.0

# @iamshrikantjagtap/chat-ui

Minimal React chat window UI for `ai-chat-kit` backends (streaming SSE).

## Install

```bash
npm i @iamshrikantjagtap/chat-ui
```

### Peer dependencies

- `react` (>= 18)
- `react-dom` (>= 18)

## Usage (Vite + React)

```tsx
import { ChatWindow } from "@iamshrikantjagtap/chat-ui";

export default function App() {
  return (
    <div style={{ padding: 24 }}>
      <ChatWindow
        userId="demo-user"
        endpoint="http://localhost:8000/chat/stream"
        showCode
        showSpecification
      />
    </div>
  );
}
```

## Local checks

```bash
cd Frontend/chat-ui
npm run pack:check
```

## Publish

```bash
cd Frontend/chat-ui
npm publish --access public --otp=123456
```

If your npm account (or org) enforces 2FA for publishing, you must pass a current one-time password via `--otp`.
Alternatively, use a granular/automation access token with “bypass 2FA” enabled for publishing.
npm package: @iamshubhankarkhare/cursor-review-cli
Description: AI-powered code review CLI for Cursor IDE
Author: Shubhankar Khare
Latest version: 1.1.2

# Cursor AI Review CLI

🚀 AI-powered code review CLI for Cursor IDE that enables intelligent code review before human review.

## Features

- 🎨 Beautiful CLI interface with gradient banners
- 📊 Progress tracking and status reporting
- 🔍 Git diff analysis for changed files
- 🚀 GitHub integration with commit status API
- 📝 Batch file review support
- ✅ Review completion verification

## Installation

```bash
# Install globally
npm install -g @iamshubhankarkhare/cursor-review-cli

# Or use with npx (recommended)
npx @iamshubhankarkhare/cursor-review-cli start
```

## Usage

### Start Review Process
```bash
cursor-review start
```
Shows banner, analyzes repository, and lists files to review.

### Mark Files as Reviewed
```bash
cursor-review mark src/components/UserProfile.vue src/composables/useAuth.ts
```

### Check Review Status
```bash
cursor-review status
```

### Finalize Review
```bash
cursor-review finalize
```
Posts review completion status to GitHub.

## Configuration

Set up environment variables:

```bash
# GitHub token for API access
export GITHUB_TOKEN="your-github-token"

# Repository (optional, auto-detected)
export GITHUB_REPOSITORY="owner/repo-name"
```

## Workflow

1. **Start Review**: `cursor-review start`
2. **Review Files**: Use Cursor AI to review files in batches
3. **Mark Reviewed**: `cursor-review mark <files>`
4. **Check Progress**: `cursor-review status`
5. **Finalize**: `cursor-review finalize`

## GitHub Integration

The CLI posts commit status checks to GitHub when review is complete:

- ✅ **cursor-ai-review** - AI Review: 12/12 files reviewed

## Requirements

- Node.js 16+ 
- Git repository
- GitHub token (for finalization)

## Development

```bash
# Clone the repository
git clone https://github.com/iamshubhankarkhare/cursor-review-cli.git
cd cursor-review-cli

# Install dependencies
npm install

# Link for local development
npm link

# Test the CLI
cursor-review start
```

## License

MIT

## Author

Shubhankar Khare
npm package: @iamshyam/react-countdown-cards
Description: A customizable countdown card component for React
Author: ssbhattarai
Latest version: 1.0.0

# React Countdown Cards

A customizable countdown card component for React applications with Tailwind CSS styling.

## Installation

```bash
npm install @iamshyam/react-countdown-cards
```

or

```bash
yarn add @iamshyam/react-countdown-cards
```

## Usage

```jsx
import { CountdownCard } from '@iamshyam/react-countdown-cards';
import { Heart } from 'lucide-react';

function App() {
  return (
    <CountdownCard
      title="Valentine's Day"
      date="2025-02-14"
      icon={Heart}
      theme={{
        background: "bg-white",
        titleColor: "text-pink-600",
        numberBackground: "bg-pink-50",
        numberColor: "text-pink-500",
        unitColor: "text-gray-500"
      }}
    />
  );
}
```

## Props

| Prop | Type | Description |
|------|------|-------------|
| title | string | The title of the countdown |
| date | string | Target date for the countdown (YYYY-MM-DD format) |
| icon | Component | Optional icon component (lucide-react icons supported) |
| className | string | Additional CSS classes |
| theme | object | Customization object for colors and styling |

### Theme Object Properties

```typescript
interface Theme {
  background: string;     // Background color class
  titleColor: string;     // Title text color class
  numberBackground: string; // Number container background class
  numberColor: string;    // Number text color class
  unitColor: string;      // Unit text color class
}
```

## Requirements

- React 16.8.0 or higher
- Tailwind CSS 3.0.0 or higher
- lucide-react 0.263.1 or higher

## License

MIT © [Ssbhattarai]
npm package: @iamsimonsmale/nestjs-complete-module
Description: A schematic to generate a NestJS module with a service, controller, TypeORM model.
Author: Simon Smale
Latest version: 1.0.0

# NestJS Complete Module Schematic

I could not find a schematic that created a CRUD module in NestJS. So I build this.

The file structure looks like :

```typescript
app/
├─ controller/
│  ├─ <g>.controller.spec.ts
│  ├─ <g>.controller.ts
├─ models/
│  ├─ <g>.entity.ts
│  ├─ <g>.model.ts
├─ service/
│  ├─ <g>.service.spec.ts
│  ├─ <g>.service.ts
├─ <g>.module.ts

```

# Schema Aims

```
{
  "$schema": "http://json-schema.org/schema",
  "id": "nestjs-complete-module",
  "title": "Generates NestJS Module",
  "description": "A schematic to generate a NestJS module with a service, controller, TypeORM model.",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "The name of the module.",
      "$default": {
        "$source": "argv",
        "index": 0
      },
      "x-prompt": "What is the name of the module?"
    },
    "path": {
      "type": "string",
      "format": "path",
      "description": "The path to create the module.",
      "visible": false
    },
    "project": {
      "type": "string",
      "description": "The name of the project.",
      "$default": {
        "$source": "projectName"
      }
    },
    "module": {
      "type": "string",
      "description": "Allows specification of the declaring module.",
      "alias": "m"
    },
    "flat": {
      "type": "boolean",
      "default": false,
      "description": "Flag to indicate if a dir is created."
    },
    "spec": {
      "type": "boolean",
      "default": true,
      "description": "Specifies if a spec file is generated."
    },
    "lintFix": {
      "type": "boolean",
      "default": false,
      "description": "Specifies whether to apply lint fixes after generating the model."
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}
```
npm package: @iamso/git-checkout-interactive
Description: Quick switch between git branches
Author: Pete Cook
Latest version: 1.1.1

# git-checkout-interactive

Quick switch between git branches.

### Install

```bash
npm install -g @iamso/git-checkout-interactive
```

### Usage

```bash
gci
# or
git interactive-checkout
```

![image](https://user-images.githubusercontent.com/1926029/56238297-11153f00-6086-11e9-93b7-fe22800e0056.png)
npm package: @iamsquare/cookie-parse
Description: Cookie string/file parse utilities.
Author: squaremarco
Latest version: 0.2.1

# Cookie-Parse

[![NPM](https://img.shields.io/npm/v/@iamsquare/cookie-parse.svg?style=flat-square)](https://www.npmjs.com/package/@iamsquare/cookie-parse) [![GitHub issues](https://img.shields.io/github/issues-raw/iamsquare/cookie-parse.svg?style=flat-square)](https://github.com/iamsquare/complex.js/issues) [![GitHub License](https://img.shields.io/github/license/mashape/apistatus.svg?style=flat-square)](https://github.com/iamsquare/cookie-parse/blob/master/LICENSE) [![NPM](https://nodei.co/npm/@iamsquare/cookie-parse.png?mini=true)](https://nodei.co/npm/@iamsquare/cookie-parse)

> Basic cookie string/file parse utilities.

## Getting started

Cookie-Parse utilities can be used in both browsers and Node.js:

Install Cookie-Parse by using [npm](https://www.npmjs.com/package/@iamsquare/cookie-parse):

```shell
npm i @iamsquare/cookie-parse
```

> Since this library is compiled from Typescript, type definition files are provided by default. No additional @types installation required!

## Documentation

You can check the documentation [here](http://iamsquare.it/cookie-parse)

## Building

Just clone this repo and build the library:

```shell
git clone --depth=0 https://github.com/iamsquare/cookie-parse
cd cookie-parse/
npm i
npm run prod
```

`npm run prod` will run Jest and build the library only if it passes all tests. To build without testing:

```shell
npm run build
```

## TODO list

- [x] ~~Documentation~~.
- [ ] `ParsedCookie` serialization.
- [ ] Check edge cases.
- [ ] Add examples.
- [ ] Migrate tests to typescript when I resolve some issues with typescript and custom jest matchers.

## Built With

- [Typescript](https://www.typescriptlang.org/) - Main language.
- [Ramda](https://ramdajs.com/), [Ramda-Adjunct](https://char0n.github.io/ramda-adjunct), [Ramda-Extension](https://ramda-extension.firebaseapp.com/docs/) - Functional programming library.
- [Jest](https://jestjs.io/) - Testing framework.

## Licensing

The code in this project is licensed under MIT License.
npm package: @iamsquare/ra-data-xmysql
Description: A react-admin dataProvider for xmysql's API generator
Author: squaremarco
Latest version: 0.0.5

# @iamsquare/ra-data-xmysql
[Xmysql](https://github.com/o1lab/xmysql) data provider for [react-admin](https://github.com/marmelab/react-admin), the frontend framework for building admin applications on top of REST services.


## Installation

`ra-data-xmysql` is available from `npm`. You can install it using:

```sh
npm install @iamsquare/ra-data-xmysql
```

It can also be installed using `yarn`:
```sh
yarn add @iamsquare/ra-data-xmysql
```


## Usage

First `import` the module in your `App.js` file:
```js
import xmysqlDataProvider from 'ra-data-xmysql';
```
Then pass it to the `Admin`'s `dataProvider` prop:
```js
<Admin dataProvider={xmysqlDataProvider('http://my.api.url/api')} ...>
```

## License

This module is licensed under the [MIT Licence](LICENSE).
npm package: @iamstarkov/jss-theme-reactor
Description: Powerful theming layer for use with the JSS library (CSS in JS)
Author: Vladimir Starkov
Latest version: 0.12.5

# jss-theme-reactor [![Build Status](https://img.shields.io/circleci/project/nathanmarks/jss-theme-reactor/master.svg?style=flat-square)](https://circleci.com/gh/nathanmarks/jss-theme-reactor) [![codecov](https://codecov.io/gh/nathanmarks/jss-theme-reactor/branch/master/graph/badge.svg)](https://codecov.io/gh/nathanmarks/jss-theme-reactor) [![npm](https://img.shields.io/npm/v/jss-theme-reactor.svg?style=flat-square)](https://www.npmjs.com/package/jss-theme-reactor)

## Installation

Install `jss-theme-reactor`.

```bash
$ npm install jss-theme-reactor --save
```

## Usage

- [Basic example](#basic-example)

### Basic example

A super simple example demonstrating the basic functionality.

```javascript
import { create as createJss } from 'jss';
import preset from 'jss-preset-default';
import { createStyleManager, createStyleSheet } from 'jss-theme-reactor';

themeObj = {
  fontFamily: 'Roboto',
  fontSize: 12,
  color: 'red',
};

styleManager = createStyleManager({
  jss: createJss(preset()),
  theme: themeObj,
});

styleSheet = createStyleSheet('button', (theme) => ({
  root: {
    color: theme.color,
    fontSize: theme.fontSize,
    fontFamily: theme.fontFamily,
  },
}));

const classes = styleManager.render(styleSheet);

// classes.root === '.button-root-tr-1'
```

Resulting document head:

```html
<style type="text/css" data-jss="" data-meta="button">
.button-root-tr-1 {
  color: red;
  font-size: 12px;
  font-family: Roboto;
}
</style>
```
npm package: @iamstarkov/listr-update-renderer
Description: Listr update renderer
Author: Sam Verschueren
Latest version: 0.4.1

# listr-update-renderer [![Build Status](https://travis-ci.org/SamVerschueren/listr-update-renderer.svg?branch=master)](https://travis-ci.org/SamVerschueren/listr-update-renderer)

> [Listr](https://github.com/SamVerschueren/listr) update renderer

<img src="screenshot.gif" />


## Install

```
$ npm install --save listr-update-renderer
```


## Usage

```js
const UpdaterRenderer = require('listr-update-renderer');
const Listr = require('listr');

const list = new Listr([
    {
        title: 'foo',
        task: () => Promise.resolve('bar')
    }
], {
    renderer: UpdaterRenderer,
	collapse: false
});

list.run();
```

> Note: This is the default renderer for [Listr](https://github.com/SamVerschueren/listr) and doesn't need to be specified.


## Options

These options should be provided in the [Listr](https://github.com/SamVerschueren/listr) options object.

### showSubtasks

Type: `boolean`<br>
Default: `true`

Set to `false` if you want to disable the rendering of the subtasks. Subtasks will be rendered if an error occurred in one of them.

### collapse

Type: `boolean`<br>
Default: `true`

Set to `false` if you don't want subtasks to be hidden after the main task succeed.

### clearOutput

Type: `boolean`<br>
Default: `false`

Clear the output when all the tasks are executed succesfully.


## Related

- [listr](https://github.com/SamVerschueren/listr) - Terminal task list
- [listr-verbose-renderer](https://github.com/SamVerschueren/listr-verbose-renderer) - Listr verbose renderer
- [listr-silent-renderer](https://github.com/SamVerschueren/listr-silent-renderer) - Suppress Listr rendering output


## License

MIT © [Sam Verschueren](https://github.com/SamVerschueren)
npm package: @iamstarkov/xlso
Description: Node.js package for parsing an excel workbook to an javascript object
Author: Achille Nana Chimi
Latest version: 1.0.1-pull-1

[![Known Vulnerabilities](https://snyk.io/test/npm/xlso/badge.svg)](https://snyk.io/test/npm/xlso) [![bitHound Overall Score](https://www.bithound.io/github/nanachimi/xlso/badges/score.svg)](https://www.bithound.io/github/nanachimi/xlso) [![bitHound Code](https://www.bithound.io/github/nanachimi/xlso/badges/code.svg)](https://www.bithound.io/github/nanachimi/xlso) [![bitHound Dependencies](https://www.bithound.io/github/nanachimi/xlso/badges/dependencies.svg)](https://www.bithound.io/github/nanachimi/xlso/master/dependencies/npm)

# xlso
Node.js package for parsing excel workbooks into an Javascript array of rows. Excel workbooks based on the node.js package [xlsx](https://github.com/SheetJS/js-xlsx).

## how to install the xlso?

```Shell
$ npm install xlso --save
```

## How to use the package?

Let suppose the following table is saved as `testdata.xlsx`.

| Id    | Name  | City  |
| ----- | ----- | ----- |
|  1    | Micky | Loum  |
|  2    | Lapiro| Mbanga|

The following snippet show how to parse `testdata.xlsx` in order to get all data.

```Javascript
var xlso = require('xlso');
var xlsx = require('xlsx');
// the xlsx's workbook to parse by the xlso package.
var workbook = xlsx.readFile("testdata.xlsx");
// parse the workbook to a js array
var rows = xlso.parseWorkbook(workbook, 0, 0);
// display your js array
rows.forEach(function(item, index){
  console.log("Id: " + item.Id + ", Name: " + item.Name + ", City: " + item.City);
});
```

## API Specifications
`xlso` expose one API that expect three parameters:
* the `first parameter` is the workbook that was generated by the package xlsx (see section below).
* the `second parameter` is the position of the sheet in the given workbook (the index 0 is the first sheet).
* the third and `last parameter` is the position of the header row (position 0 means also first row).

PS: the header row must be the first row.

## How to run unit-tests?

```Shell
$ npm test
```