open-index/open-npm huggingface dataset:
npm package: @lund-org/cherry-handlebars-connector
Description: A plugin to use handlebars as the html renderer
Author: Lund-Org
Latest version: 0.0.9

# Cherry Handlebars Connector

[![Build Status](https://travis-ci.com/Lund-Org/cherry-handlebars-connector.svg?branch=master)](https://travis-ci.com/Lund-Org/cherry-handlebars-connector) [![Maintainability](https://api.codeclimate.com/v1/badges/88259eabd94df27161bd/maintainability)](https://codeclimate.com/github/Lund-Org/cherry-handlebars-connector/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/88259eabd94df27161bd/test_coverage)](https://codeclimate.com/github/Lund-Org/cherry-handlebars-connector/test_coverage)

A plugin to use [handlebars](https://github.com/wycats/handlebars.js/) as the html renderer in cherry 🍒

## Installation

Use the package manager [npm](http://npmjs.com) to install Cherry Handlebars Connector.

```bash
npm install @lund-org/cherry-handlebars-connector
```

## Usage

Checkout the example in the [example folder of cherry](https://github.com/Lund-Org/cherry/tree/master/example/02-multiple-response-type/).
Of course, you need a cherry app to use this connector :

```javascript
const Cherry = require('@lund-org/cherry')
const CherryHandlebarsConnector = require('@lund-org/cherry-handlebars-connector')

const options = {
  ...
  plugins: [CherryHandlebarsConnector]
  ...
}

const cherry = new Cherry()
cherry.configure(options)
cherry.start(options)
```

## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

## License
[MIT](https://github.com/Lund-Org/cherry-handlebars-connector/blob/master/LICENSE)
npm package: @lund-org/cherry-pug-connector
Description: A plugin to use pug as the html renderer
Author: Lund-Org
Latest version: 0.0.4

# Cherry Pug Connector

[![Build Status](https://travis-ci.com/Lund-Org/cherry-pug-connector.svg?branch=master)](https://travis-ci.com/Lund-Org/cherry-pug-connector) [![Maintainability](https://api.codeclimate.com/v1/badges/081351282dd136f8fb0f/maintainability)](https://codeclimate.com/github/Lund-Org/cherry-pug-connector/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/081351282dd136f8fb0f/test_coverage)](https://codeclimate.com/github/Lund-Org/cherry-pug-connector/test_coverage)

A plugin to use [pug](https://github.com/pugjs/pug) as the html renderer in cherry 🍒

## Installation

Use the package manager [npm](http://npmjs.com) to install Cherry Pug Connector.

```bash
npm install @lund-org/cherry-pug-connector
```

## Usage

Checkout the example in the [example folder of cherry](https://github.com/Lund-Org/cherry/tree/master/example/02-multiple-response-type/).
Of course, you need a cherry app to use this connector :

```javascript
const Cherry = require('@lund-org/cherry')
const CherryPugConnector = require('@lund-org/cherry-pug-connector')

const options = {
  ...
  plugins: [CherryPugConnector]
  ...
}

const cherry = new Cherry()
cherry.configure(options)
cherry.start(options)
```

## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

## License
[MIT](https://github.com/Lund-Org/cherry-pug-connector/blob/master/LICENSE)
npm package: @lund-org/cherry-sequelize-connector
Description: A plugin to use sequelize as the ORM of the framework
Author: Lund-Org
Latest version: 0.0.6

# Cherry Sequelize Connector

[![Build Status](https://travis-ci.com/Lund-Org/cherry-sequelize-connector.svg?branch=master)](https://travis-ci.com/Lund-Org/cherry-sequelize-connector) [![Maintainability](https://api.codeclimate.com/v1/badges/c2aa8e3c0c31f742fc0d/maintainability)](https://codeclimate.com/github/Lund-Org/cherry-sequelize-connector/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/c2aa8e3c0c31f742fc0d/test_coverage)](https://codeclimate.com/github/Lund-Org/cherry-sequelize-connector/test_coverage)

A plugin to use [Sequelize](https://github.com/sequelize/sequelize) as the orm in cherry 🍒

## Installation

Use the package manager [npm](http://npmjs.com) to install Cherry Sequelize Connector.

```bash
npm install @lund-org/cherry-sequelize-connector
```

To start the tests, a [docker](https://docker.com)-compose is available.

```bash
docker-compose.exe -f etc/docker-compose.yml up -d
```

## Usage

Checkout the example in the [example folder of cherry](https://github.com/Lund-Org/cherry/tree/master/example/04-orm/).
Of course, you need a cherry app to use this connector :

```javascript
const Cherry = require('@lund-org/cherry')
const CherrySequelizeConnector = require('@lund-org/cherry-sequelize-connector')

const options = {
  ...
  plugins: [CherrySequelizeConnector]
  ...
}

const cherry = new Cherry()
cherry.configure(options)
cherry.start(options)
```

## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

## License
[MIT](https://github.com/Lund-Org/cherry-sequelize-connector/blob/master/LICENSE)
npm package: @lund-org/cherry-typeorm-connector
Description: A plugin to use typeorm as the ORM of the framework
Author: Lund-Org
Latest version: 0.0.6

# Cherry Typeorm Connector

[![Build Status](https://travis-ci.com/Lund-Org/cherry-typeorm-connector.svg?branch=master)](https://travis-ci.com/Lund-Org/cherry-typeorm-connector) [![Maintainability](https://api.codeclimate.com/v1/badges/4e54dd4cbf0bb911d0e2/maintainability)](https://codeclimate.com/github/Lund-Org/cherry-typeorm-connector/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/4e54dd4cbf0bb911d0e2/test_coverage)](https://codeclimate.com/github/Lund-Org/cherry-typeorm-connector/test_coverage)

A plugin to use [Typeorm](https://github.com/typeorm/typeorm) as the orm in cherry 🍒

## Installation

Use the package manager [npm](http://npmjs.com) to install Cherry Typeorm Connector.

```bash
npm install @lund-org/cherry-typeorm-connector
```

To start the tests, a [docker](https://docker.com)-compose is available.

```bash
docker-compose.exe -f etc/docker-compose.yml up -d
```

## Usage

Checkout the example in the [example folder of cherry](https://github.com/Lund-Org/cherry/tree/master/example/04-orm/).
Of course, you need a cherry app to use this connector :

```javascript
const Cherry = require('@lund-org/cherry')
const CherryTypeormConnector = require('@lund-org/cherry-typeorm-connector')

const options = {
  ...
  plugins: [CherryTypeormConnector]
  ...
}

const cherry = new Cherry()
cherry.configure(options)
cherry.start(options)
```

## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

## License
[MIT](https://github.com/Lund-Org/cherry-typeorm-connector/blob/master/LICENSE)
npm package: @lunde-cloud/create-migration
Description: ## Installation `yarn add parameter-store-to-object`
Author: Jared Lunde
Latest version: 1.0.4

# parameter-store-to-object

## Installation
`yarn add parameter-store-to-object`

## Usage
```js
import ssmParamsToObj from 'parameter-store-to-object'
import * as aws from 'aws-sdk'


const getSSMParameters = async () => {
  let ssm = new aws.SSM({region: 'us-east-1'})
  return await ssmParamsToObj(
    ssm, 
    ['path:/foo/bar', '/foo/boz/baz'], 
    {relativeTo: '/foo'}
  )
}
```
npm package: @lunde/babel-preset-es
Description: Default Babel packages and configs for Jared's open source JavaScript work
Author: Jared Lunde
Latest version: 1.0.1

# @lunde/babel-preset-es
A babel preset for configuring ECMAScript features to apps and packages

## Installation
`yarn add --dev @lunde/babel-preset-es`

## Usage
### `.babelrc`
```json
{
  "presets": [
    [
      "@lunde/es", {
        "env": {
          "modules": false
        }
      }
    ]
  ]
}
```
## Included packages
- `@babel/cli`
- `@babel/core`

## Included presets
- `@babel/preset-env`
- `@babel/preset-typescript`

## Included plugins
- `@babel/plugin-transform-runtime`
- `@babel/plugin-proposal-class-properties`
- `@babel/plugin-proposal-export-default-from`
- `@babel/plugin-proposal-export-namespace-from`
- `@babel/plugin-proposal-logical-assignment-operators`
- `@babel/plugin-proposal-nullish-coalescing-operator`
- `@babel/plugin-transform-object-assign`
- `@babel/plugin-proposal-object-rest-spread`
- `@babel/plugin-proposal-optional-chaining`
- `@babel/plugin-syntax-dynamic-import`
- `@babel/plugin-syntax-import-meta`
- `babel-plugin-closure-elimination`
- `babel-plugin-macros`
- `babel-plugin-dev-expression`

## Options
### `env`
Defaults
```json
{
  "loose": true, 
  "useBuiltIns": false, 
  "ignoreBrowserslistConfig": true,
  "exclude": ["transform-typeof-symbol"]
}
```
- Define `"env": false` to turn off `@babel/env`

### `typescript`
- Define `"typescript": false` to turn off `@babel/typescript`


### `runtime`
- *default* `false`
- Define `"runtime": {...}` to turn on `@babel/transform-runtime`

### `classProps`
- *default* `{loose: true}`

### `macros`
- Define `"macros": false` to turn off `@babel/macros`

### `objectAssign`
- Define `"objectAssign": false` to turn off `@babel/transform-object-assign`

### `restSpread`
- Define `"restSpread": false` to turn off `@babel/proposal-rest-spread`

### `closureElimination`
- Define `"closureElimination": false` to turn off `babel-plugin-closure-elimination`

### `devExpression`
- Define `"devExpression": false` to turn off `babel-plugin-dev-expression`
npm package: @lunde/babel-preset-react-app
Description: Default Babel packages and configs for Jared's React apps
Author: Jared Lunde
Latest version: 1.0.5

# @lunde/babel-preset-react-app

Default Babel packages and configs for my React apps

## Installation

`yarn add --dev @lunde/babel-preset-react-app`

## Usage

### `.babelrc`

```json
{
  "presets": [
    [
      "@lunde/react-app",
      {
        "es": {
          "env": {
            "modules": false
          }
        }
      }
    ]
  ]
}
```

## Included packages

- `core-js@3`
- `@babel/runtime-corejs3`

## Included presets

- `@lunde/babel-preset-es`
- `@babel/preset-react`
- `@emotion/babel-preset-css-prop`

## Included plugins

- `babel-plugin-transform-react-remove-prop-types`
- `babel-plugin-transform-react-pure-class-to-function`
- `babel-plugin-polished`

## Options

### `es`

Accepts all options from [@lunde/babel-preset-es](https://github.com/jaredLunde/lunde/tree/master/packages/babel-preset-es)

- Define `"es": false` to turn off `@lunde/babel-preset-es`

### `removePropTypes`

- Define `"removePropTypes": false` to turn off `babel-plugin-transform-react-remove-prop-types`

### `transformPure`

- Define `"transformPure": false` to turn off `babel-plugin-transform-react-pure-class-to-function`

### `emotion`

- Define `"emotion": false` to turn off `@emotion/babel-preset-css-prop`

### `polished`

- Define `"polished": false` to turn off `babel-plugin-polished`
npm package: @lunde/build-react-app
Description: Utilities for building and developing React apps
Author: Jared Lunde
Latest version: 1.1.3

[![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://jaredlunde.mit-license.org/)

---

# @lunde/build-react-app

Utilities for building, serving, and developing React apps

## Installation

#### `npm i @lunde/build-react-app`

#### `yarn add @lunde/build-react-app`

## LICENSE

MIT
npm package: @lunde/configure-react-app
Description: Utilities for creating and maintaining React applications
Author: Jared Lunde
Latest version: 1.0.5

[![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://jaredlunde.mit-license.org/)

---

# @lunde/configure-react-app

Utilities for creating and maintaining Webpack and Babel configurations for React application

## Installation

#### `npm i @lunde/configure-react-app`

#### `yarn add @lunde/configure-react-app`

## LICENSE

MIT
npm package: @lunde/create-pkg
Description: An @inst-pkg template for creating new TypeScript packages
Author: Jared Lunde
Latest version: 1.7.9

# @lunde/create-pkg

This is an [`inst`](https://github.com/jaredLunde/inst-pkg) template for creating
ES6 packages with or without TypeScript.

## 📦 What's in the \*\*\*\*ing box?

Packages are created with a variety of build tools that make your life easier

### Build tools

| Library    | Description                                            |
| ---------- | ------------------------------------------------------ |
| Babel 7    | For compiling ES6 code to ES5                          |
| Jest       | For testing components                                 |
| Prettier   | For formatting code, READMEs, and configs              |
| ESLint     | For linting the application                            |
| Yarn       | For deterministic builds and monorepos                 |
| Travis CI  | (Optional) For continuous integration                  |
| TypeScript | (Optional) For adding type definitions to your package |

## 🔧 Usage

```shell script
# Use `npx`
npx @lunde/create-pkg my-pkg

# Or install it globally
yarn global add @lunde/create-pkg
create-pkg my-pkg --ts
```

## Arguments

#### `create-pkg <name> [--ts]`

| Argument | Type      | Required | Description                                                                                                     |
| -------- | --------- | -------- | --------------------------------------------------------------------------------------------------------------- |
| name     | `string`  | `true`   | The name of the package you're creating. This is also the name of the directory the package will be created in. |
| --ts     | `boolean` | `false`  | Creates a TypeScript package                                                                                    |

## 📜 Package scripts

### `build`

Builds types (if `--ts`), commonjs, and ECMAScript distributions

### `build-main`

Builds the commonjs distribution

### `build-module`

Builds the ECMAScript distribution

### `format`

Formats `src` and `dist` directories with prettier as defined by `.prettierrc`

### `lint`

Runs `eslint` on the package source

### `prepublishOnly`

Runs before the package is published. This calls `lint`, `build`, `test`, and `format` scripts

### `test`

Tests the package with `jest` as defined by options in `package.json -> jest`

### `validate`

Runs `check-types` (if `--ts`), `lint`, `test`, and `format` scripts

## 🚨 TypeScript-specific scripts

### `build-types`

Builds the TypeScript type definitions

### `check-types`

Runs a type check on the project using the local `tsconfig.json`

## 🐺 Husky hooks

### `pre-commit`

Runs `lint-staged` and the `build-types` script

## 💨 Lint staged

Used for calling commands on git staged files that match a glob pattern

### `**/*.{ts,tsx,js,jsx}`

Calls `eslint` and `prettier --write` to lint and format the staged files

### `**/*.{md,yml,json,eslintrc,prettierrc}`

Calls `prettier --write` to format the staged files

## LICENSE

MIT
npm package: @lunde/create-preact-app
Description: A command line tool for creating Preact apps out of thin air with deployment strategies for [Now](https://zeit.co).
Author: Jared Lunde
Latest version: 1.1.4

# @lunde/create-preact-app

A command line tool for creating Preact apps out of thin air with deployment
strategies for [Now](https://zeit.co).

## 🔧 Usage

```shell script
# Use `npx`
npx @lunde/create-preact-app my-app --now

# Or install it globally
yarn global add @lunde/create-preact-app
create-preact-app my-app
```

#### `create-react-app <name> [--now]`

When none of the optional arguments are defined, an SSR React app and no deployment strategy is created.

| Argument       | Type      | Required | Description                                                                         |
| -------------- | --------- | -------- | ----------------------------------------------------------------------------------- |
| name           | `string`  | `true`   | The name of your app. This is also the name of the directory that will be created.  |
| --now          | `boolean` | `false`  | Creates a static React app with a Now deployment strategy                           |

## LICENSE

MIT
npm package: @lunde/create-react-hook
Description: An @inst-pkg template for creating new TypeScript packages
Author: Jared Lunde
Latest version: 1.0.7

# @lunde/create-react-hook
This is an [`inst`](https://github.com/jaredLunde/inst-pkg) template for creating React hooks with TypeScript.

## Installation
### Installing `inst`
```bash
npm i -g @inst-pkg/cli
# or `yarn global add @inst-pkg/cli`
```

### Creating a new React hook
```bash
# creates a new React package named [Name] in the [Name] directory
inst add @lunde/create-react-hook [Name]

# validates the new package was successfully created
cd [Name]
npm run validate
```

## Installation options
#### `Name`
The name of the package you're creating

## Package scripts
### `build`
Builds types, commonjs, and ECMAScript distributions

### `build:cjs`
Builds the commonjs distribution

### `build:es`
Builds the ECMAScript distribution

### `build:types`
Builds the TypeScript type definitions

### `check-types`
Runs a type check on the project using the local `tsconfig.json`

### `format`
Formats `src` and `dist` directories with prettier as defined by `.prettierrc`

### `format:cjs`
Formats the commonjs dist with prettier as defined by `.prettierrc`. Weird right? But useful
for debugging.

### `format:es`
Formats the ECMAScript dist with prettier as defined by `.prettierrc`. Weird right? But useful
for debugging.

### `format:src`
Formats the package source with prettier as defined by `.prettierrc`

### `lint`
Runs `eslint` on the package source

### `prepublishOnly`
Runs before the package is published. This calls `lint`, `build`, `test`, and `format` scripts

### `test`
Tests the package with `jest` as defined by options in `package.json -> jest`

### `validate`
Runs `check-types`, `lint`, `test`, and `format:src` scripts

## Husky hooks
### `pre-commit`
Runs `lint-staged` and the `build:types` script

## Lint staged
Used for calling commands on git staged files that match a glob pattern
### `src/**/*.{js,jsx,ts,tsx}`
Calls `eslint` and `pretty-quick --staged` to lint and format the staged files
npm package: @lunde/create-react-pkg
Description: An @inst-pkg template for creating new TypeScript packages
Author: Jared Lunde
Latest version: 1.7.13

# @lunde/create-react-pkg

This is an [`inst`](https://github.com/jaredLunde/inst-pkg) template for creating
React packages with or without TypeScript.

## 📦 What's in the \*\*\*\*ing box?

Packages are created with a variety of build tools that make your life easier

### Build tools

| Library    | Description                                            |
| ---------- | ------------------------------------------------------ |
| Babel 7    | For compiling jsx and ES6 code to ES5                  |
| Jest       | For testing components                                 |
| Prettier   | For formatting code, READMEs, and configs              |
| ESLint     | For linting the application                            |
| Yarn       | For deterministic builds and monorepos                 |
| Travis CI  | (Optional) For continuous integration                  |
| TypeScript | (Optional) For adding type definitions to your package |

## 🔧 Usage

```shell script
# Use `npx`
npx @lunde/create-react-pkg my-pkg

# Or install it globally
yarn global add @lunde/create-react-pkg
create-react-pkg my-pkg --ts
```

## Arguments

#### `create-react-pkg <name> [--ts]`

| Argument | Type      | Required | Description                                                                                                     |
| -------- | --------- | -------- | --------------------------------------------------------------------------------------------------------------- |
| name     | `string`  | `true`   | The name of the package you're creating. This is also the name of the directory the package will be created in. |
| --ts     | `boolean` | `false`  | Creates a TypeScript package                                                                                    |

## 📜 Package scripts

### `build`

Builds types (if `--ts`), commonjs, and ECMAScript distributions

### `build-main`

Builds the commonjs distribution

### `build-module`

Builds the ECMAScript distribution

### `format`

Formats `src` and `dist` directories with prettier as defined by `.prettierrc`

### `lint`

Runs `eslint` on the package source

### `prepublishOnly`

Runs before the package is published. This calls `lint`, `build`, `test`, and `format` scripts

### `test`

Tests the package with `jest` as defined by options in `package.json -> jest`

### `validate`

Runs `check-types` (if `--ts`), `lint`, `test`, and `format` scripts

## 🚨 TypeScript-specific scripts

### `build-types`

Builds the TypeScript type definitions

### `check-types`

Runs a type check on the project using the local `tsconfig.json`

## 🐺 Husky hooks

### `pre-commit`

Runs `lint-staged` and the `build-types` script

## 💨 Lint staged

Used for calling commands on git staged files that match a glob pattern

### `**/*.{ts,tsx,js,jsx}`

Calls `eslint` and `prettier --write` to lint and format the staged files

### `**/*.{md,yml,json,eslintrc,prettierrc}`

Calls `prettier --write` to format the staged files

## LICENSE

MIT
npm package: @lunde/deploy-react-app
Description: Several deployment strategies for React apps
Author: Jared Lunde
Latest version: 1.0.16

[![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://jaredlunde.mit-license.org/)

---

# deploy-react-app

Several deployment strategies for React apps

## Installation

#### `npm i deploy-react-app`

#### `yarn add deploy-react-app`

## LICENSE

MIT
npm package: @lunde/render-react-app
Description: A package for rendering React apps on the server
Author: Jared Lunde
Latest version: 1.0.7

[![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://jaredlunde.mit-license.org/)

---

# @lunde/render-react-app
A package for rendering React apps on the server

## Installation
#### `npm i @lunde/render-react-app`
#### `yarn add @lunde/render-react-app`

## LICENSE
MIT
npm package: @lunde/serverless-certificate-manager
Description: A Serverless ACM certificate manager which allows for certificate re-use and re-issuing outside the scope of CloudFormation
Author: Jared Lunde
Latest version: 1.0.0

[![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://jaredlunde.mit-license.org/)

---
# @lunde/serverless-certificate-manager
An ACM certificate manager which allows for certificate re-use and re-issuing outside the scope
of CloudFormation. This plugin will automatically create your ACM certificates before your first deployment and wait 
for them to become valid before continuing your deployment. You can inject the resulting ARNs elsewhere in your config, 
i.e. a CloudFront distribution. It will not run when individual functions are deployed.

## Installation
#### `npm i @lunde/serverless-certificate-manager`
#### `yarn add @lunde/serverless-certificate-manager`

## Usage
```yaml
# serverless.yml
plugins:
  - @lunde/serverless-certificate-manager
 
custom:
  certificateManager:
    - retain: true
      domains:
        - foobar.com
        - '*.foobar.com'
    - refFor: resources.Resource.SomeAWSResource.AcmCertificateArn
      domains:
        - 'foobar.baz'
```

## Configuration
- `domains {array}`
    - **required**
    - An array of domain names to add to your certificate
- `retain {bool}`
    - **default** `false`
    - Retains the certificate on `sls remove` if `true`, otherwise the certificate is deleted
- `refFor {Array<string>}`
    - Object paths (`custom.bar.baz`) to properties in your Serverless configuration where you'd
      like the resulting certificate ARN to be injected. This is useful when sharing wildcard
      certificates between configurations where you don't want to lose the benefits of a pure
      CloudFormation implementation. These are injected on each `sls deploy`.
    - **Example**
 ```yaml
    certificateManager:
       - refFor:
          - resources.Resources.CloudFrontDistribution.Properties.DistributionConfig.ViewerCertificate.AcmCertificateArn
 ```
- `profile {string}`
    - **default** `provider.profile || process.env.AWS_PROFILE`
    - An AWS profile to use when creating the certificate
- `region {string}`
    - **default** `provider.region || process.env.AWS_REGION || 'us-east-1'`
    - The region to create your certificate in
    
## Commands
### `sls create-certs`
Creates certificates for the domains in your configuration if they are not already attached to
other certificates. Also injects the `refFor` properties into your config.

-----

### `sls get-certs`
Gets the JSON object result of `describeCertificate` attached to the domains in your 
configuration.

-----

### `sls remove-certs`
Deletes the certificates defined in your configuration where the `retain` property is not `true`

-----

### `sls has-valid-certs`
Checks to see if your configurations have valid certificates attached to them


## LICENSE

MIT
npm package: @lunde/serverless-dotenv
Description: A Serverless plugin that injects .env files into your serverless.yml based upon the --stage
Author: Jared Lunde
Latest version: 1.0.2

[![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://jaredlunde.mit-license.org/)

---

# @lunde/serverless-dotenv

A Serverless plugin that injects .env files into your serverless.yml based upon the --stage

By default, this plugin will assign all of the environment variables to each function
in your config. You can override this behavior with the `exclude` and `include` options
below.

## Installation

#### `npm i @lunde/serverless-dotenv`

#### `yarn add @lunde/serverless-dotenv`

## Usage

```yaml
# serverless.yml
plugins:
  - '@lunde/serverless-dotenv'

custom:
  dotenv:
    exclude:
      - 'SERVERLESS*'
```

## Options

**NOTE:** When both `include` and `exclude` options are defined `exclude` will take precedence over `include`.
That is, you cannot define both at the same time.

- `path {string}`
  - **default** `.env.[--stage] || .env`
  - The path to your `.env` file relative to your `serverless.yml` file
- `exclude {array|object}`
  - An array of glob patterns which only exclude environment variables whose name match
    the glob
- `include {array|object}`

  - An array of glob patterns which only include environment variables whose name match
    the glob

### Examples using `exclude`

Excludes all environment variables that start with `SERVERLESS` from all functions

```yaml
# serverless.yml
plugins:
  - @lunde/serverless-dotenv

custom:
  dotenv:
    exclude:
      - 'SERVERLESS*'
```

Excludes all environment variables that start with `SERVERLESS` from the `main` function

```yaml
# serverless.yml
plugins:
  - @lunde/serverless-dotenv

custom:
  dotenv:
    exclude:
      main:
        - 'SERVERLESS*'
```

### Examples using `include`

Includes all environment variables that start with `APP` in all functions

```yaml
# serverless.yml
plugins:
  - @lunde/serverless-dotenv

custom:
  dotenv:
    include:
      - 'APP*'
```

Includes all environment variables that start with `APP` in the `main` function

```yaml
# serverless.yml
plugins:
  - @lunde/serverless-dotenv

custom:
  dotenv:
    include:
      main:
        - 'APP*'
```

### Example without `include` or `exclude`

```yaml
# serverless.yml
plugins:
  - @lunde/serverless-dotenv

functions:
  main:
    environment:
      FOO: ${env:FOO}

custom:
  dotenv:
    path: '.env' # NOTE: you don't actually have to define this as this is the default
```

## Credits

Inspiration and some code was derived from [serverless-dotenv-plugin](https://raw.githubusercontent.com/colynb/serverless-dotenv-plugin/master/index.js)

## LICENSE

MIT
npm package: @lunde/webpack
Description: Configures Webpack in a manner consistent with tools like CRA
Author: Jared Lunde
Latest version: 1.0.4

[![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://jaredlunde.mit-license.org/)

---

# webpack

Configures Webpack in a manner consistent with tools like CRA

## Installation

#### `npm i @lunde/webpack`

#### `yarn add @lunde/webpack`

## LICENSE

MIT
npm package: @lundgren/gatsby-theme-lundgren-blog
Description: A Gatsby Theme for my personal site
Author: Tobias Lundgren
Latest version: 1.4.1

# Gatsby Theme Lundgren Blog

![travis](https://travis-ci.org/lundgren2/gatsby-theme-lundgren-blog.svg?branch=master)
[![npm version](https://badge.fury.io/js/%40lundgren%2Fgatsby-theme-lundgren-blog.svg)](https://badge.fury.io/js/%40lundgren%2Fgatsby-theme-lundgren-blog)

A sweet Gatsby theme for awesome projects.

## Features

- Emotion: CSS in JS
- MDX: JSX in Markdown
- ESLint
- Prettier

```sh
yarn install
```

## Deploy (assuming netlify-cli is installed and .netlify file is configured)

Push your site directly to [Netlify](https://www.netlify.com/)

```sh
yarn run deploy
```

## Features

### GraphiQL

View GraphiQL, an in-browser IDE, to explore your site's data and schema

```
http://localhost:8000/___graphql
```

### Format

```sh
yarn run format
```
npm package: @lundium/locale
Description: Locales for lundium component library
Latest version: 1.0.0

# Lundium UI component library internationalization

## Usage

Install dependency into your project:

```bash
yarn add @lundium/locale
```

Import some locale and add it to ThemeProvider:

```javascript
import { en_US } from '@lundium/locale';
...

<ThemeProvider theme={{ isRTL: boolean('isRTL', false), locale: en_US }}>
/* Component tree */
</ThemeProvider>
```
npm package: @lundium/theme-basic
Description: Basic theme for lundium components
Latest version: 1.0.0

## Theming

Theme package from lundium contains basic theme for components. In order to use it, we first have to import library into project:

```bash
yarn add @lundium/theme-basic
```

```bash
npm install @lundium/theme-basic
```

Then, we can load minified styled inside of application root:

```javascript
import '@lundium/theme-basic/dist/index.css';
```

If you want to use only a part of predefined styles, you can use sass source files. They can be imported in a same way as you'd partialy import bootstrap files: (into you root scss file preferably)

```css
@import 'node_modules/@lundium/theme-basic/scss/front.scss';
```
npm package: @lundjrl-npm/repo-cli
Description: Cli tool for pulling templated repos quickly
Author: lundjrl
Latest version: 1.0.5

# repo-cli
A Node.js cli tool to quickly clone templated repos

### How to use:
1. Clone the tool and run `yarn install` to install all dependencies.
2. Try creating a new project by running a command like: `yarn build && yarn start -n -p myproject` to clone the Node.js template into a new project called "myproject"


### Available templates:

Node template 
```sh
yarn build && yarn start -n -p myproject
```

Next.JS template 
```sh 
yarn build && yarn start -njs -p myproject
```

:warning: (WIP) React-Native template 
```sh
yarn build && yarn start -rn -p myproject
```
npm package: @lunelson/sass-calc
Description: Augmented math in Sass via CSS calc()
Author: Lu Nelson
Latest version: 1.2.0

# Sass Calc

[![](https://img.shields.io/travis/lunelson/sass-calc.svg?style=flat-square)](#travis)
[![](https://img.shields.io/npm/v/@lunelson/sass-calc.svg?style=flat-square)](#releases)
[![](https://img.shields.io/github/license/lunelson/sass-calc.svg?style=flat-square)](#license)
[![](https://img.shields.io/npm/dt/@lunelson/sass-calc.svg?style=flat-square)](#download)

Easily build complex `calc()` expressions in Sass. Leverage `calc()` to do math that Sass can't.

!['sass calc'](sass-calc.png)

Use `add()`, `subtract()`, `multiply()` and `divide()` on values which have incompatible or unknown units, or which are `var()` expressions, or which are `calc()` expressions themselves. Return a new `calc()` expression, or use straight math where possible.

```sh
# in your project
npm install --save @lunelson/sass-calc
```
```scss
// in your sass file, assuming you have 'node_modules' in Sass' search path
@import '@lunelson/sass-calc/index';
```
```scss
// test.scss
:root {
  --foo: 20px;
}
$expr: calc(100vw - 50%);
.test {
  test: subtract(1.5em, 1em);
  test: add(1.5em, 1rem);
  test: add(multiply($expr, 2), 10px);
  test: add(multiply(var(--foo), 2), 10px);
  test: divide(subtract(1.5em, 1em), 2);
  test: subtract(divide(subtract(1.5em, 1em), 2), add(1em, 1ex));
}
```
```css
/* test.css */
:root {
  --foo: 20px;
}

.test {
  test: 0.5em;
  test: calc(1.5em + 1rem);
  test: calc(((100vw - 50%) * 2) + 10px);
  test: calc((var(--foo) * 2) + 10px);
  test: 0.25em;
  test: calc(0.25em - (1em + 1ex));
}
```

Refs:

- https://www.sitepoint.com/sass-basics-operators/
- https://www.sitepoint.com/understanding-sass-units/
- http://caniuse.com/#feat=calc

Questions? [Twitter me.](https://twitter.com/lunelson)
npm package: @lunelson/sass-lerp
Description: Create dynamically interpolated values with CSS calc() expressions
Author: Lu Nelson
Latest version: 1.0.0

# Sass Lerp

[![](https://img.shields.io/travis/lunelson/sass-lerp.svg?style=flat-square)](https://travis-ci.org/lunelson/sass-lerp)
[![](https://img.shields.io/npm/v/@lunelson/sass-lerp.svg?style=flat-square)](https://www.npmjs.com/package/@lunelson/sass-lerp)
[![](https://img.shields.io/github/license/lunelson/sass-lerp.svg?style=flat-square)](https://github.com/lunelson/sass-lerp/blob/master/LICENSE)

A "lerp" or [linear interpolation](https://en.wikipedia.org/wiki/Linear_interpolation) is a linear equation that expresses the straight line between two `[x, y]` points on a plane, as a function `y = f(x)`. This function creates a CSS `calc()` expression which resolves an interpolation of two static values, relative to a low/high range of a dynamic value (width, font-size, viewport dimensions) using a combination of relative and absolute units. This enables numerous applications of dynamic values in CSS including for `letter-spacing`, `line-height`, `font-size`, `margin`, `padding`, `width` and `height`.

[Questions?](https://twitter.com/lunelson)
npm package: @lunelson/sass-m
Description: A Sass Media-query and Media-scoped variable system
Author: Lu Nelson
Latest version: 0.9.1

# sass-m

!['sass m'](sass-m.png)

[![npm published v](https://img.shields.io/npm/v/@lunelson/sass-m.svg)]()
[![Build Status](https://travis-ci.org/lunelson/sass-m.svg?branch=master)](https://travis-ci.org/lunelson/sass-m)

A Sass Media-query and Media-scoped variable management system.

```sh
# in terminal, in project dir
npm install --save @lunelson/sass-m

# ...and the peerDependencies
npm install --save @lunelson/sass-throw @lunelson/sass-maps-plus @lunelson/sass-calc @lunelson/sass-u
```
```scss
// in root sass file, assuming 'node_modules' is in Sass' search path
@import '@lunelson/sass-throw/index';
@import '@lunelson/sass-maps-plus/index';
@import '@lunelson/sass-calc/index';
@import '@lunelson/sass-u/index';
@import '@lunelson/sass-m/index';
```
npm package: @lunelson/sass-maps-next
Description: Next generation Sass map features
Author: Lu Nelson
Latest version: 1.0.0

# Sass Maps Next

[![](https://img.shields.io/travis/lunelson/sass-maps-next.svg?style=flat-square)](#travis)
[![](https://img.shields.io/npm/v/@lunelson/sass-maps-next.svg?style=flat-square)](#releases)
[![](https://img.shields.io/github/license/lunelson/sass-maps-next.svg?style=flat-square)](#license)

These functions enable `get`, `set` and `merge` operations on nested values in Sass' `map` data type. They provide a `map-set` function, while patching Sass' native `map-get` and `map-merge` functions to work with nested values. The API of these functions corresponds to [this informal proposal](https://github.com/sass/sass/issues/1739#issuecomment-122435753) at the sass repo.

Some additional utility functions are also provided.

They are fully tested, and compatible with current versions of [libsass]() and [dart-sass]().

## Installation
```sh
# in your project

npm install --save @lunelson/sass-maps-next
```
```scss
// in your sass file, assuming you have 'node_modules' in Sass' search path

@import '@lunelson/sass-maps-next/index';

// ...now you have access to nested map-get, map-merge and map-set
```
npm package: @lunelson/sass-maps-plus
Description: Advanced Sass map manipulation and debugging
Author: Lu Nelson
Latest version: 0.9.0

## sass-maps-plus

!['sass maps'](sass-maps-plus.png)

**Sass-Maps-Plus** is aimed at providing advanced manipulation (and debugging!) for the Sass `map` data type. They are the successor to [Sass List–Maps](http://github.com/lunelson/sass-list-maps), which polyfilled `maps` in earlier versions of Sass; but use the **native** implementation of `maps` which are in [[ruby] Sass](https://github.com/sass/sass) as of version 3.3, and [LibSass](https://github.com/sass/libsass) as of version 3.1.

With version 1.0.0, the main functions (`map-get`, `map-set` and `map-merge`) have been conformed to the feature-descriptions posted by @nex3 in [this issue thread](https://github.com/sass/sass/issues/1739#issuecomment-122435753), which are the basis of a [work-in-progress](https://github.com/sass/sass/pull/1904) for the next version of ruby-sass.

```scss
$map: (a: (b: (c: d)));
.out {
  out: map-get($map, a, b, c); // => d
  out: map-set($map, a, b, c, x); // => (a: (b: (c: x)))
  out: map-merge($map, a, b, (c: x, d: y)); // => (a: (b: (c: x, d: y)))
}
```

Some earlier functions in this library have been deprecated; the one remaining addition here is `map-print`, for debugging maps in pretty-print format.

support Sass `map` data manipulation according to the description

 They provide advanced native map data-type manipulation and inspection in [libsass (as of version 3.1)](http://libsass.org/) and [ruby-sass (as of version 3.3)](http://sass-lang.com/).



### Installation

This is not currently registered in any package directories but can be installed from github via `npm`, and imported in [node-sass](https://github.com/sass/node-sass) and compliant tools, as long as the `includePaths` option includes `'node_modules'`.

```sh
# in your project directory
npm install --save @lunelson/sass-maps-plus
```
```scss
// in your sass file
@import 'sass-maps-plus/index';
```

#### TODO

- [ ] write tests
- [ ] update sassdoc to gh-pages
- [ ] update npm
- [ ] update bower
- [ ] update sache
- [ ] update gemspec
npm package: @lunelson/sass-throw
Description: Testable Sass error/warn/debug directives via proxy functions and mixins
Author: Lu Nelson
Latest version: 2.1.0

# Sass Throw

[![](https://img.shields.io/travis/lunelson/sass-throw.svg?style=flat-square)](#travis)
[![](https://img.shields.io/npm/v/@lunelson/sass-throw.svg?style=flat-square)](#releases)
[![](https://img.shields.io/github/license/lunelson/sass-throw.svg?style=flat-square)](#license)
[![](https://img.shields.io/npm/dt/@lunelson/sass-throw.svg?style=flat-square)](#download)

Functions for using Sass' `@error` `@warn` and `@debug` directives in a way that is capturable and testable.

## Installation
```sh
# install in your project

npm i @lunelson/sass-throw
```
## Basic Usage

The basic API consists of the following functions and mixins, which receive a string, and  will trigger their corresponding directive (e.g. `@warn`) with the given string when the `$throw-catch` global variable is `false`, but will return the string when `$throw-catch` is true.

```scss
// Sass input file
// NB: you need 'node_modules' in Sass' `importPaths` option

@import '@lunelson/sass-throw/index';

$throw-catch: true;

.test {
  error: throw-error('this is an error message via function');
  warn: throw-warn('this is a warn message via function');
  debug: throw-debug('this is a debug message via function');
}

@include throw-error('this is an error message via mixin');
@include throw-warn('this is a warn message via mixin');
@include throw-debug('this is a debug message via mixin');
```
```css
/* CSS output file */

.test {
  error: "this is an error message via function";
  warn: "this is a warn message via function";
  debug: "this is a debug message via function";
}

.sass-throw .error {
  message: "this is an error message via mixin";
}

.sass-throw .warn {
  message: "this is a warn message via mixin";
}

.sass-throw .debug {
  message: "this is a debug message via mixin";
}
```

Questions? File an issue, or [tweet at me](https://twitter.com/lunelson).
npm package: @lunelson/sass-u
Description: Collected Sass utility functions
Author: Lu Nelson
Latest version: 0.11.0

# sass-u

[![npm published v](https://img.shields.io/npm/v/@lunelson/sass-u.svg)]()
[![Build Status](https://travis-ci.org/lunelson/sass-u.svg?branch=master)](https://travis-ci.org/lunelson/sass-u)

"U" = my utilities, but also my learnings 😉 ...use at own risk.

```sh
# in terminal, in project dir
npm install --save @lunelson/sass-u

# ...and the peerDependency ;)
npm install --save @lunelson/sass-throw
```
```scss
// in sass file, assuming 'node_modules' is in Sass' search path
@import '@lunelson/sass-throw/index';
@import '@lunelson/sass-u/index';
```
npm package: @lunesearch/client
Description: Lightweight search client for Lunexa — browser, Node.js, and edge runtimes
Author: Lunexa
Latest version: 0.0.0

# @lunesearch/client

Lightweight search client for [Lunexa](https://ailunexa.com). Works in browser, Node.js 18+, and edge runtimes (Cloudflare Workers, Vercel Edge).

- Zero dependencies (native `fetch`)
- TypeScript-first with full type definitions
- Built-in request caching and deduplication
- < 5KB gzipped

## Installation

```bash
npm install @lunesearch/client
# or
pnpm add @lunesearch/client
# or
yarn add @lunesearch/client
```

## Usage

```ts
import { LuneSearchClient } from "@lunesearch/client";

const client = new LuneSearchClient({
  apiKey: "your-search-api-key",
  host: "https://api.ailunexa.com",
  orgSlug: "your-org",
  projectSlug: "your-project",
});

// Search a collection
const results = await client.search("products", {
  q: "running shoes",
  query_by: "name,description",
  filter_by: "price:<100",
  facet_by: "brand,category",
});

// Multi-collection search
const multi = await client.multiSearch([
  { collection: "products", q: "shoes", query_by: "name" },
  { collection: "articles", q: "shoes", query_by: "title" },
]);

// Get a single document
const doc = await client.getDocument("products", "doc-123");

// Track click events (for relevance feedback)
client.trackClick({
  query: "shoes",
  documentId: "doc-123",
  position: 1,
});
```

## Configuration

```ts
const client = new LuneSearchClient({
  apiKey: "your-search-api-key",   // Required: search-only API key
  host: "https://api.ailunexa.com", // Required: Lunexa API host
  orgSlug: "your-org",              // Required: organization slug
  projectSlug: "your-project",      // Required: project slug
  cacheTTL: 5000,                   // Optional: cache TTL in ms (default: 5000)
});
```

## License

MIT
npm package: @lungchen/llvm-node
Description: Node Bindings for LLVM >=13
Latest version: 0.0.39

# llvm-node

[![Build Status](https://github.com/sbip-sg/llvm-node/workflows/CI/badge.svg)](https://github.com/sbip-sg/llvm-node/actions)
[![npm version](https://badge.fury.io/js/@lungchen%2Fllvm-node.svg)](https://badge.fury.io/js/@lungchen%2Fllvm-node)

Node Bindings for LLVM. The API is mostly identical to the one of LLVM (when possible and not to cumbersom). All supported methods with their signatures are listed in the [TypeScript definition file](./llvm-node.d.ts).

## Getting Started

Install the packages using npm or yarn.

```bash
npm install --save llvm-node
```

Require llvm-node and you're good to go

```js
import * as llvm from "llvm-node";
// or
const llvm = require("llvm-node");

const context = new llvm.LLVMContext();
const module = new llvm.Module("test", context);

const intType = llvm.Type.getInt32Ty(context);
const initializer = llvm.ConstantInt.get(context, 0);
const globalVariable = new llvm.GlobalVariable(module, intType, true, llvm.LinkageTypes.InternalLinkage, initializer);

const ll = module.print(); // prints IR
llvm.writeBitcodeToFile(module, biteCodeFileName); // Writes file to disk
```

## Custom LLVM Installation

You can use the npm configuration options to set the path to the LLVM cmake directory. This is needed if you don't want to use the system default LLVM installation --- e.g. when you want to compile againt the latest dev version.

To change the LLVM version use:

```sh
npm config set cmake_LLVM_DIR $(path-to-llvm/bin/llvm-config --cmakedir)
```

If you want to change the value just for a single project use an [.npmrc](https://docs.npmjs.com/files/npmrc) file in your project.

## Debug Build

If you want to use `Value.dump` or `Module.dump` you need to use the debug build of the library (and, as well, of LLVM).
In this case, run `node-gyp build --debug` or if using `npm install` run `npm_config_DEBUG=true npm install llvm-node`.

There variables can also be set using npm set:

`npm config set [--global] DEBUG True`

## Develop with VS-Code

1. Install the [C++ Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools)
2. Install the [Cmake Tools Extension](https://marketplace.visualstudio.com/items?itemName=vector-of-bool.cmake-tools)
3. Configure the LLVM directory in the user settings by adding the following entry

```json
"cmake.configureSettings": {
    "LLVM_DIR": "/usr/local/Cellar/llvm/7.0.0/lib/cmake/llvm" // Output of llvm-config --cmakedir
}
```

4. Run the `CMake:Configure` Command in Visual Studio Code
5. Run `yarn configure` from the command line
6. Run `CMake:Build` command in Visual Studio Code
npm package: @luniand-ui/accordion
Description: Luniand UI | A component to display accordion in the browser component
Author: Albert Tran
Latest version: 1.0.0

# @luniand-ui/accordion

A Quick description of the component

> This is an internal utility, not intended for public usage.

## Installation

```sh
yarn add @luniand-ui/accordion
# or
npm i @luniand-ui/accordion
```

## Contribution

Yes please! See the
[contributing guidelines](https://github.com/luniand/luniand-ui/blob/master/CONTRIBUTING.md)
for details.

## License

This project is licensed under the terms of the
[MIT license](https://github.com/luniand/luniand-ui/blob/master/LICENSE).
npm package: @luniand-ui/alert
Description: Luniand UI | A component to display alert in the browser component
Author: Albert Tran
Latest version: 1.0.0

# @luniand-ui/alert

A Quick description of the component

> This is an internal utility, not intended for public usage.

## Installation

```sh
yarn add @luniand-ui/alert
# or
npm i @luniand-ui/alert
```

## Contribution

Yes please! See the
[contributing guidelines](https://github.com/luniand/luniand-ui/blob/master/CONTRIBUTING.md)
for details.

## License

This project is licensed under the terms of the
[MIT license](https://github.com/luniand/luniand-ui/blob/master/LICENSE).
npm package: @luniand-ui/anatomy
Description: Luniand UI |  The anatomy of all components
Author: Albert Tran trantoan.fox.97@gmail.com
Latest version: 0.0.1

# @luniand-ui/anatomy

The anatomy of all luniand components

## Installation

```sh
yarn add @luniand-ui/anatomy
# or
npm i @luniand-ui/anatomy
```
npm package: @luniand-ui/avatar
Description: Luniand UI | A component to display avatar in the browser component
Author: Albert Tran
Latest version: 1.0.0

# @luniand-ui/avatar

A Quick description of the component

> This is an internal utility, not intended for public usage.

## Installation

```sh
yarn add @luniand-ui/avatar
# or
npm i @luniand-ui/avatar
```

## Contribution

Yes please! See the
[contributing guidelines](https://github.com/luniand/luniand-ui/blob/master/CONTRIBUTING.md)
for details.

## License

This project is licensed under the terms of the
[MIT license](https://github.com/luniand/luniand-ui/blob/master/LICENSE).
npm package: @luniand-ui/breadcrumb
Description: Luniand UI | A component to display breadcrumb in the browser component
Author: Albert Tran
Latest version: 1.0.0

# @luniand-ui/breadcrumb

A Quick description of the component

> This is an internal utility, not intended for public usage.

## Installation

```sh
yarn add @luniand-ui/breadcrumb
# or
npm i @luniand-ui/breadcrumb
```

## Contribution

Yes please! See the
[contributing guidelines](https://github.com/luniand/luniand-ui/blob/master/CONTRIBUTING.md)
for details.

## License

This project is licensed under the terms of the
[MIT license](https://github.com/luniand/luniand-ui/blob/master/LICENSE).