open-index/open-npm huggingface dataset:
npm package: @superflows/rollup-plugin-tailwindcss
Description: Bundle Tailwind CSS stylesheet as a Rollup asset
Author: Alex Dilley
Latest version: 1.1.0

# rollup-plugin-tailwindcss

Bundle Tailwind CSS stylesheet as a [Rollup](https://rollupjs.org/) asset.

## Install

```sh
npm i --save-dev rollup-plugin-tailwindcss # or yarn add -D rollup-plugin-tailwindcss
```

## Usage

```js
// rollup.config.js
import tailwind from 'rollup-plugin-tailwindcss';

export default {
  plugins: [
    tailwind({
      input: 'path/to/entry.css', // required
      // Tailor the emitted stylesheet to the bundle by removing any unused CSS
      // (highly recommended when packaging for distribution).
      purge: false,
    }),
  ],
};
```

## License

[MIT](https://github.com/alexdilley/rollup-plugin-tailwindcss/blob/master/LICENSE)
npm package: @superfluid-finance/tokenlist
Description: This package provides an extended token list format, based on the Uniswap token list specification, with additional fields specifically catered to Superfluid Protocol tokens. This package can be used to interact with the latest Superfluid Token List, and 
Latest version: 5.39.0

# Superfluid Token List NPM Package

This package provides an extended token list format, based on the Uniswap token list specification, with additional fields specifically catered to Superfluid Protocol tokens. This package can be used to interact with the latest Superfluid Token List, and also provides TypeScript types for type safety.

## Installation

You can install the package via NPM:

```bash
npm install @superfluid-finance/tokenlist
```

Alternatively, if you are using Yarn:

```bash
yarn add @superfluid-finance/tokenlist
```

Alternatively, if you are using pnpm:

```bash
pnpm add @superfluid-finance/tokenlist
```

## Example Usages

Here is a basic example of how to import and use the SuperTokenList:

### Get Super Tokens

Super Tokens can be identified using the `superTokenInfo` extension or the "supertoken" tag. Use the following code to filter out Super Tokens:

```ts
import superTokenList from '@superfluid-finance/tokenlist';

console.log(superTokenList); // Contains both Super Tokens and underlying tokens.
```

```ts
const superTokens: SuperTokenInfo[] = superTokenList.tokens.filter(token => 
    token.extensions?.superTokenInfo // Alternatively: token.tags?.includes("supertoken")
);

console.log(superTokens);
```

### Get Underlying Tokens

Underlying tokens are those tokens that do not have the `superTokenInfo` extension or have the "underlying" tag. Use the following code to filter out underlying tokens:

```ts
const underlyingTokens: TokenInfo[] = superTokenList.tokens.filter(token => 
    !token.extensions?.superTokenInfo // Alternatively: token.tags?.includes("underlying")
);

console.log(underlyingTokens);
```

## Types

The package also exports several TypeScript types that you can use to ensure type safety in your own code. Here are the main types:

- `SuperTokenExtensions`: An extension to the Uniswap's `TokenInfo` type with Superfluid specific fields.
- `SuperTokenInfo`: A type that combines the Uniswap's `TokenInfo` type and the `SuperTokenExtensions` type.

The package also re-exports the main consumer types from `@uniswap/token-lists` for convenience: `TokenInfo`, `TokenList`, `Version`, `Tags`.

## Contributing

We welcome contributions! Please feel free to submit a pull request if you have any updates or improvements to suggest.

## License

This package is licensed under the MIT License.
npm package: @superflycss/component-body
Description: Body component
Author: Ole Ersoy
Latest version: 1.0.4

# Body component

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/component-body.svg)](https://greenkeeper.io/)

[![Build Status](https://travis-ci.org/superflycss/component-body.svg?branch=master)](https://travis-ci.org/superflycss/component-body)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS Site Component Tests](https://superflycss.github.io/component-body/deploy/test/html/)
npm package: @superflycss/component-breadcrumb
Description: Breadcrumb component
Author: Ole Ersoy
Latest version: 1.0.0

# component-breadcrumb

[![Build Status](https://travis-ci.org/superflycss/component-breadcrumb.svg?branch=master)](https://travis-ci.org/superflycss/component-breadcrumb)

## Overview 

Offers a semantic view of the resource location within a navigation tree.

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

### Accessibility

Breadcrumbs provide navigation oversight.  As recommended by respect [WAI-ARIA Authoring Practices](https://www.w3.org/TR/wai-aria-practices/#breadcrumb) content becomes more accessible when attributes such as `aria-label="Breadcrumb"` decorate the elements that provide the navigational features.

See [SuperflyCSS Breadcrumb Component Tests](https://superflycss.github.io/component-breadcrumb/target/test/html/) for specific markup examples.

## Tests

[SuperflyCSS Breadcrumb Component Tests](https://superflycss.github.io/component-breadcrumb/target/test/html/)

## Design

[Container vs. Item](https://medium.com/@ole.ersoy/container-vs-item-423586b1b21e)
npm package: @superflycss/component-button
Description: Button component
Author: Ole Ersoy
Latest version: 2.0.10

# Button component

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/component-button.svg)](https://greenkeeper.io/)

[![Build Status](https://travis-ci.org/superflycss/component-button.svg?branch=master)](https://travis-ci.org/superflycss/component-button)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

- [Superfly CSS Base Button Component Tests](https://superflycss.github.io/component-button/target/test/html/)
- [Superfly CSS Bootstrap Button Component Tests](https://superflycss.github.io/component-button/target/test/html/bootstrap)
npm package: @superflycss/component-display
Description: Display heading component
Author: Ole Ersoy
Latest version: 1.0.10

# Display component

Responsive display component.  If applying mobile first design
see `sm.css`, `md.css`, `lg.css` in `src/main/css`.

## Snippets / Built CSS

[index.css](https://github.com/superflycss/component-display/blob/master/target/main/css/index.css)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)


## Tests

[SuperflyCSS Display Component Tests](https://superflycss.github.io/component-display/target/test/html/)
npm package: @superflycss/component-gherkin
Description: Gherkin css components and nunjucks templates.
Author: Ole Ersoy
Latest version: 1.0.9

# Gherkin Component

Gherkin components and nunjucks templates.

[![Build Status](https://travis-ci.org/superflycss/component-gherkin.svg?branch=master)](https://travis-ci.org/superflycss/component-gherkin)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS test Component Tests](https://superflycss.github.io/component-gherkin/target/test/html/)
npm package: @superflycss/component-grid
Description: Grid component
Author: Ole Ersoy
Latest version: 1.0.3

# Grid component

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/component-grid.svg)](https://greenkeeper.io/)

[![Build Status](https://travis-ci.org/superflycss/component-grid.svg?branch=master)](https://travis-ci.org/superflycss/component-grid)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS test Component Tests](https://superflycss.github.io/component-grid/target/test/html/)
npm package: @superflycss/component-header
Description: Header component
Author: Ole Ersoy
Latest version: 2.1.2

# Header component

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/component-header.svg)](https://greenkeeper.io/)

[![Build Status](https://travis-ci.org/superflycss/component-header.svg?branch=master)](https://travis-ci.org/superflycss/component-header)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS Header Component Tests](https://superflycss.github.io/component-header/target/test/html/)
npm package: @superflycss/component-link
Description: Link component
Author: Ole Ersoy
Latest version: 1.0.11

# component-link

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/component-link.svg)](https://greenkeeper.io/)
Link component

[![Build Status](https://travis-ci.org/superflycss/component-button.svg?branch=master)](https://travis-ci.org/superflycss/component-link)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS Link Component Tests](https://superflycss.github.io/component-link/target/test/html/)
npm package: @superflycss/component-navbox
Description: Navbox component
Latest version: 1.0.9

# Navbox component

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/component-navbox.svg)](https://greenkeeper.io/)

[![Build Status](https://travis-ci.org/superflycss/component-navbox.svg?branch=master)](https://travis-ci.org/superflycss/component-navbox)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS Navbox Component Tests](https://superflycss.github.io/component-navbox/target/test/html/)
npm package: @superflycss/component-site
Description: Site component
Author: Ole Ersoy
Latest version: 1.0.10

# Site component

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/component-site.svg)](https://greenkeeper.io/)

[![Build Status](https://travis-ci.org/superflycss/component-site.svg?branch=master)](https://travis-ci.org/superflycss/component-site)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

In general see [Usage](https://github.com/superflycss/superflycss/#usage)

### Generate a head Element for this Components Test Page

```
{% import "@superflycss/component-site/SiteHead.njk" as SiteHead %}
{{ SiteHead.head( 'SuperflyCSS Component Site' ) }}
```
View `src/main/njk` to see other variations for filtered and minified css imports.

## sites

[SuperflyCSS Site Component Tests](https://superflycss.github.io/component-site/deploy/)
npm package: @superflycss/component-test
Description: Test component
Author: Ole Ersoy
Latest version: 3.6.30

# Test component

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/component-test.svg)](https://greenkeeper.io/)

[![Build Status](https://travis-ci.org/superflycss/component-test.svg?branch=master)](https://travis-ci.org/superflycss/component-test)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS test Component Tests](https://superflycss.github.io/component-test/target/test/html/)
npm package: @superflycss/task-build
Description: Build task for superflycss modules
Author: Ole Ersoy
Latest version: 1.0.5

# Build task

[Gulp](http://gulpjs.com/) [PostCSS](http://postcss.org/) build task for [superflycss](https://github.com/superflycss) modules.  The build task builds css files in `src/main/css` and `src/test/css` and outputs the result files to `target/main/css` and `target/test/css` correspondingly.  See the [Build Task PostCSS Plugins](https://github.com/superflycss/task-build#plugins) list for a list of plugins currently supported.

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Plugins

| Plugin Name                  | Plugin URL                                             |
|:-----------------------------|:-------------------------------------------------------|
| autoprefixer                 | https://github.com/postcss/autoprefixer                |
| postcss-import               | https://github.com/postcss/postcss-import              |
| postcss-apply                | https://github.com/pascalduez/postcss-apply            |
| postcss-calc                 | https://github.com/postcss/postcss-calc                |
| postcss-color-function       | https://github.com/postcss/postcss-color-function      |
| postcss-custom-media         | https://github.com/postcss/postcss-custom-media        |
| postcss-custom-properties    | https://github.com/postcss/postcss-custom-properties   |
| postcss-each                 | https://github.com/outpunk/postcss-each                |
| postcss-font-magician        | https://github.com/jonathantneal/postcss-font-magician |
| postcss-for                  | https://github.com/antyakushev/postcss-for             |
| postcss-reporter             | https://github.com/postcss/postcss-reporter            |
| postcss-sass-color-functions | https://github.com/adam-h/postcss-sass-color-functions |
npm package: @superflycss/task-deploy
Description: Deploy task for superflycss modules
Author: Ole Ersoy
Latest version: 2.1.2

# Deploy task

[Gulp](http://gulpjs.com/) [PostCSS](http://postcss.org/) deploy task for [superflycss](https://github.com/superflycss) modules.  The primary purpose of running this task is
to remove css not used in test `src/main/html` and `src/test/html` files in order to make deployed content load faster (Some of the CSS modules are quite large).  The deploy task uses the [pli - project layout instance](https://github.com/superflycss/pli) and deploys css files in `src/main/css` and `src/test/css` to `deploy/main/css` and `deploy/test/css` correspondingly.  The primary purpose of doing this is to remove css that is not used in the `target/main/html` and `target/test/html` files.  See the [Deploy Task PostCSS Plugins](https://github.com/superflycss/deploy-build#plugins) list for a list of plugins currently supported.

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Plugins

| Plugin Name                  | Plugin URL                                             |
|:-----------------------------|:-------------------------------------------------------|
| autoprefixer                 | https://github.com/postcss/autoprefixer                |
| postcss-import               | https://github.com/postcss/postcss-import              |
| postcss-apply                | https://github.com/pascalduez/postcss-apply            |
| postcss-calc                 | https://github.com/postcss/postcss-calc                |
| postcss-color-function       | https://github.com/postcss/postcss-color-function      |
| postcss-custom-media         | https://github.com/postcss/postcss-custom-media        |
| postcss-custom-properties    | https://github.com/postcss/postcss-custom-properties   |
| postcss-each                 | https://github.com/outpunk/postcss-each                |
| postcss-font-magician        | https://github.com/jonathantneal/postcss-font-magician |
| postcss-for                  | https://github.com/antyakushev/postcss-for             |
| postcss-reporter             | https://github.com/postcss/postcss-reporter            |
| postcss-sass-color-functions | https://github.com/adam-h/postcss-sass-color-functions |
| postcss-sass-color-functions | https://github.com/adam-h/postcss-sass-color-functions |
| gulp-uncss                   | https://github.com/ben-eb/gulp-uncss                   |
npm package: @superflycss/task-lint
Description: Lints built superflycss modules after performing autocorretion
Author: Ole Ersoy
Latest version: 1.0.0

# Lint task

Lint task for superflycss modules

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)
npm package: @superflycss/utilities-colors
Description: Color utilities
Author: Ole Ersoy
Latest version: 3.2.9

# Color Utilities

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/utilities-colors.svg)](https://greenkeeper.io/)

[![Build Status](https://travis-ci.org/superflycss/utilities-colors.svg?branch=master)](https://travis-ci.org/superflycss/utilities-colors)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[SuperflyCSS Color Utility Tests](https://superflycss.github.io/utilities-colors/target/test/html/)
npm package: @superflycss/utilities-effects
Description: Effects utilities
Author: Ole Ersoy
Latest version: 2.1.3

# Effect utilities

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/utilities-effects.svg)](https://greenkeeper.io/)

[![Build Status](https://travis-ci.org/superflycss/utilities-effects.svg?branch=master)](https://travis-ci.org/superflycss/utilities-effects)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS Header Component Tests](https://superflycss.github.io/utilities-effects/target/test/html/)
npm package: @superflycss/utilities-fonts
Description: Font utilities
Author: Ole Ersoy
Latest version: 4.0.4

# Font utilities

## Installation

```
npm i @superflycss/utilities-fonts
```

## Usage

The root package contains all Google Fonts Utilities.  [That means all the fonts and all the supporting weights.](https://github.com/superflycss/utilities-fonts/blob/master/src/main/css/index.css).

Load all fonts utilities like this:
``` css
@import '@superflycss/utilities-fonts';
...

Or load them by idividual sub packages.  For example:

``` css
@import '@superflycss/utilities-fonts/lato';
...

```

To use the `lato` font at normal weight apply the utility
like this:

``` html
<h1 class="u-font-lato-400">A Font Lato Heading Normal Font Weight (400)</h1>
```

To use the italic `lato` font at normal weight apply the utility like this:

``` html
<h1 class="u-font-lato-400-italic">A Font Lato Heading Normal Font Weight (400)</h1>
```


Now run the build with `sfc build` and `postcss font-magician` will create the font face rules in the target build file.

[Have a look here for all the font face rules the build generates.](https://raw.githubusercontent.com/superflycss/utilities-fonts/master/target/main/css/index.css)


## Dependency Install

This will install all dependencies
including the SuperflyCSS CLI.

```
npm run i
```

## Clone

```
git clone git@github.com:superflycss/utilities-fonts.git
```

## Build

```
npm run pub
```

## Publish

```
npm run pub
```

## Related Articles

- [Quickly Generate Google Fonts Preview](https://medium.com/@jmatix/quickly-generate-google-fonts-preview-954dc9974a62)

## Snippets

This snippet contains `@import` statements for all the font utility pakcage.  This enables developers to quickly add imports for the fonts of their choosing. 

- [Imports for all Font Utility Packages](https://github.com/superflycss/utilities-fonts/tree/master/src/main/snippets/imports/index.css)
npm package: @superflycss/utilities-format
Description: Format utilities
Author: Ole Ersoy
Latest version: 2.0.0

# Format utilities


[![Build Status](https://travis-ci.org/superflycss/utilities-format.svg?branch=master)](https://travis-ci.org/superflycss/utilities-format)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS Utilies Format Tests](https://superflycss.github.io/utilities-format/target/test/html/)
npm package: @superflycss/utilities-icons
Description: Icon utilities
Author: Ole Ersoy
Latest version: 2.0.5

# Icon Utilities

[![Greenkeeper badge](https://badges.greenkeeper.io/superflycss/utilities-icons.svg)](https://greenkeeper.io/)

[![Build Status](https://travis-ci.org/superflycss/utilities-icons.svg?branch=master)](https://travis-ci.org/superflycss/utilities-icons)

The [utilities-icons](https://github.com/superflycss/utilities-icons/) module uses HTML Entities (special characters) for simple shapes. For example for star ratings the entity &#9733; can be used to create a solid star (★).  The corresponding icon utilty would be `u-icon-star-operator`.  Correspondingly, the html entity &#9734; can be used to to create empty stars (☆).   Since these are vector shapes resolution stays crips at any zoom level.

Note that some html entities, like [thin space](https://en.wikipedia.org/wiki/Thin_space) `&thinsp` do not have a visual rendering, but can be used to alter content rendering. 

The soft hyphen html entity will only render in specific contexts.

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[SuperflyCSS Utilities Icons Tests](https://superflycss.github.io/utilities-icons/target/test/html/)
npm package: @superflycss/utilities-layout
Description: Layout utilities
Author: Ole Ersoy
Latest version: 4.0.25

# Layout utilities

[![Build Status](https://travis-ci.org/superflycss/utilities-layout.svg?branch=master)](https://travis-ci.org/superflycss/utilities-layout)

# Layout utilities

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS Utilities Layout Tests](https://superflycss.github.io/utilities-layout/target/test/html/)

## Blog Posts

- [Learning Flexbox with SuperflyCSS](https://medium.com/@ole.ersoy/learning-flexbox-with-superflycss-4c85fef761b1)
npm package: @superflycss/variables-colors
Description: Color variables
Author: Ole Ersoy
Latest version: 3.1.12

# Color variables

## Installation

See [Installation](https://github.com/superfly-css/superfly-css/#installation).

## Usage

See [Usage](https://github.com/superfly-css/superfly-css/#usage)

## Tests

See [@superflycss/utilities-colors](https://superflycss.github.io/utilities-colors/target/test/html/)
npm package: @superflycss/variables-dimension
Description: Dimension variables
Author: Ole Ersoy
Latest version: 2.0.5

# Dimension Variables

This module provides shared dimension variables including:

- z-index values for dropdowns, modals, sticky headers, etc.
- Default media query breakpoint values for small, medium, large, and xl displays.

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)
npm package: @superflycss/variables-layout
Description: Layout variables
Author: Ole Ersoy
Latest version: 2.0.0

# Layout variables

[![Build Status](https://travis-ci.org/superflycss/variables-layout.svg?branch=master)](https://travis-ci.org/superflycss/variables-layout)

## Installation

See [Installation](https://github.com/superflycss/superflycss/#installation).

## Usage

See [Usage](https://github.com/superflycss/superflycss/#usage)

## Tests

[Superfly CSS Utilities Layout Tests](https://superflycss.github.io/utilities-layout/deploy/test/html/)
npm package: @superfood/md2html
Description: cli tool to convert markdown files to html
Latest version: 1.0.6

<h1 style="color:blue">@superfood/md2html</h1>

A tiny, zero-configuration CLI that converts Markdown files into HTML.
---

## Features

- Convert a Markdown file to HTML quickly from the terminal
- Optional `--full` flag to wrap the output in a minimal HTML document (doctype, head, body)

## Install

Install globally with npm:

```bash
npm install -g @superfood/md2html
```


> Requires Node.js and npm.

## Usage

Basic usage:

```bash
md2html <input.md> <output.html> [--full]
```

Options:

- `<input.md>` — Path to the source Markdown file to convert.
- `<output.html>` — Path to write the resulting HTML to.
- `--full` — When provided, output will be wrapped in a minimal HTML document (including `<!DOCTYPE html>`, `<head>` and `<body>`).


## Examples

Convert `README.md` to a standalone HTML fragment (no wrapper):

```bash
md2html README.md README.html
```

Convert and create a complete HTML document:

```bash
md2html README.md README-full.html --full
```

## How it works

The CLI reads the input file, parses the Markdown, and writes the output HTML. When `--full` is passed, it wraps the generated HTML into a minimal HTML document.
npm package: @superform-xyz/sup-core-ui
Description: Superform UI components
Author: Superform
Latest version: 1.70.1

<h1>Welcome to Superform Core UI library 👋</h1>
<p>
  <img alt="Version" src="https://img.shields.io/badge/version-0.1.3-blue.svg?cacheSeconds=2592000" />
  <a href="https://ui.superform.tech" target="_blank">
    <img alt="Documentation" src="https://img.shields.io/badge/documentation-yes-brightgreen.svg" />
  </a>
  <a href="https://opensource.org/license/mit/" target="_blank">
    <img alt="License: MIT" src="https://img.shields.io/badge/License-MIT-yellow.svg" />
  </a>
  <a href="https://twitter.com/superformxyz" target="_blank">
    <img alt="Twitter: superformxyz" src="https://img.shields.io/twitter/follow/superformxyz.svg?style=social" />
  </a>
</p>

> Superform UI components

### 🏠 [Storybook](https://ui.superform.tech)

## Requirements

- `node` >=18.16.0
- `nvm` >=0.38.0
- `npm` >=6.14.0

## Development

```sh
# make sure you have node v18.16.0 installed or nvm installed & configured to use .nvmrc
npm install

# build the library to release / use it as a dependency locally
npm run build
# or run the storybook instance to develop components
npm run storybook
```

## Storybook

```sh
npm run storybook # run storybook instance on http://localhost:6006
npm run storybook:build # build storybook static version to /.next folder
```

## Run tests

```sh
npm run test
# or run tests in CI-mode
npm run test:ci
```

## Author

👤 **Superform**

- Website: https://superform.xyz/
- Twitter: [@superformxyz](https://twitter.com/superformxyz)
- Github: [@superform-xyz](https://github.com/superform-xyz)

## Show your support

Give a ⭐️ if this project helped you!

---

_This README was generated with ❤️ by [readme-md-generator](https://github.com/kefranabg/readme-md-generator)_
npm package: @superform-xyz/sup-widgets
Description: Superform UI widgets
Author: Superform
Latest version: 1.35.0

<h1>Welcome to Superform Widgets library 👋</h1>
<p>
  <img alt="Version" src="https://img.shields.io/badge/version-0.1.3-blue.svg?cacheSeconds=2592000" />
  <a href="https://widgets.superform.tech" target="_blank">
    <img alt="Documentation" src="https://img.shields.io/badge/documentation-yes-brightgreen.svg" />
  </a>
  <a href="https://opensource.org/license/mit/" target="_blank">
    <img alt="License: MIT" src="https://img.shields.io/badge/License-MIT-yellow.svg" />
  </a>
  <a href="https://twitter.com/superformxyz" target="_blank">
    <img alt="Twitter: superformxyz" src="https://img.shields.io/twitter/follow/superformxyz.svg?style=social" />
  </a>
</p>

> Superform UI Widgets

### 🏠 [Storybook](https://widgets.superform.tech)

## Requirements

- `node` >=18.16.0
- `nvm` >=0.38.0
- `npm` >=6.14.0

## Development

```sh
# make sure you have node v18.16.0 installed or nvm installed & configured to use .nvmrc
npm install

# build the library to release / use it as a dependency locally
npm run build
# or run the storybook instance to develop components
npm run storybook
```

## Storybook

```sh
npm run storybook # run storybook instance on http://localhost:6006
npm run storybook:build # build storybook static version to /.next folder
```

## Run tests

```sh
npm run test
# or run tests in CI-mode
npm run test:ci
```

## Author

👤 **Superform**

- Website: https://superform.xyz/
- Twitter: [@superformxyz](https://twitter.com/superformxyz)
- GitHub: [@superform-xyz](https://github.com/superform-xyz)

## Show your support

Give a ⭐️ if this project helped you!

---

_This README was generated with ❤️ by [readme-md-generator](https://github.com/kefranabg/readme-md-generator)_
npm package: @superfunctions/http-next
Description: Next.js App Router adapter for @superfunctions/http
Author: 21n
Latest version: 0.1.1

# @superfunctions/http-next

Next.js App Router adapter for [@superfunctions/http](../http) - Use framework-agnostic routers with Next.js 13+ (App Router).

## Installation

```bash
npm install @superfunctions/http @superfunctions/http-next next react react-dom
```

## Quick Start (App Router)

Create `app/api/route.ts`:

```typescript
import { createRouter } from '@superfunctions/http';
import { toNextHandlers } from '@superfunctions/http-next';

const router = createRouter({
  routes: [
    {
      method: 'GET',
      path: '/',
      handler: async () => Response.json({ ok: true }),
    },
    {
      method: 'GET',
      path: '/users/:id',
      handler: async (_req, ctx) => Response.json({ id: ctx.params.id }),
    },
  ],
});

export const { GET, POST, PUT, PATCH, DELETE, OPTIONS, HEAD } = toNextHandlers(router);
```

Now requests to `/api`, `/api/users/123`, etc. are handled by your framework-agnostic router.

## Dynamic Routes

Create `app/api/users/[id]/route.ts`:

```typescript
import { createRouter } from '@superfunctions/http';
import { toNextHandlers } from '@superfunctions/http-next';

const router = createRouter({
  routes: [
    {
      method: 'GET',
      path: '/users/:id',
      handler: async (_req, ctx) => Response.json({ id: ctx.params.id }),
    },
  ],
});

export const { GET } = toNextHandlers(router);
```

## API

### `toNextHandlers(router)`

Returns an object with App Router exports: `{ GET, POST, PUT, PATCH, DELETE, OPTIONS, HEAD }`.

**Parameters:**
- `router`: Router instance from `@superfunctions/http`

**Returns:** object with Next handler functions

## Notes

- Works in both Node.js and Edge runtimes.
- Body streams are passed through to the router.
- The router sees the original request URL; use `basePath` in your router if mounting below a path (e.g., `/api`).
- Dynamic segment params from the file path are available via `ctx.params` in your handlers.

## Example with Base Path

```typescript
// app/api/route.ts
import { createRouter } from '@superfunctions/http';
import { toNextHandlers } from '@superfunctions/http-next';

const router = createRouter({
  basePath: '/api',
  routes: [
    { method: 'GET', path: '/hello', handler: () => Response.json({ msg: 'hi' }) }
  ],
});

export const { GET } = toNextHandlers(router);
```

## TypeScript

```typescript
import type { Router } from '@superfunctions/http';
import type { NextHandler } from '@superfunctions/http-next';
```

## Compatibility

- Next.js 13.4+ (App Router)

## License

MIT
npm package: @supergeneric/express-server
Description: Quickstart kit serving Express apps with all the usual settings
Author: Kevin R. Whitley
Latest version: 1.1.2

A simplified Express.js environment to serve server + client code.
=======
#### Supports Redis or built-in memory engine with auto-clearing.

# Includes
- [x] gzip compression
- [x] body parsing for form data
- [x] favicon serving
- [x] sessions
- [x] cookies
- [ ] authentication

# Installation
```bash
yarn add @supergeneric/express-server
```

# Usage
```js
/* import instantiated express app from our starter kit...
   this is a full-fledged express app, ready to accept middleware,
   plugins, routers, etc.  We've added the .start() method to fire
   up the server directly, although you could always start it any other way
   you like.
*/
import app from '@supergeneric/express-server'

app.start()
```

# Examples
### Usage with custom API

###### index.js
```js
import express from '@supergeneric/express-server'
import api from './api'

const app = express() // same way you instantiate express

app.use('/api', api)
app.start()
```

###### api.js
```js
import express from 'express'

const app = express()

// example route... will be callable from /api/foo
app.get('/foo', (req, res) => {
  res.json({
    success: true,
    path: req.path,
  })
})

export default app
```

# What goes on under the hood?
This library basically abstracts the basic setup of the express http server, complete with
static routing, compression, sessions, cookies, etc.  It's basically super shorthand for something like the following:

```js
require('dotenv').config()

// include other main deps
import express from 'express'
import bodyParser from 'body-parser'
import cookieParser from 'cookie-parser'
import compression from 'compression'
import session from 'express-session'
import sslRedirect from 'heroku-ssl-redirect'
import path from 'path'
import http from 'http'
import fs from 'fs'
import favicon from 'serve-favicon'
import { clientPath } from './paths'

// instantiate express
const app = express()
const isProduction = process.env.NODE_ENV === 'production'

// force SSL on production
app.use(sslRedirect([
  'production',
]))

app.use(session({
  secret: 'secret: 'Puppies are the new secretness. ' + new Date(),' + new Date(),
  resave: false,
  saveUninitialized: true,
}))
app.use(cookieParser())
app.use(bodyParser.json())
app.use(bodyParser.urlencoded({ extended: false }))
app.use(compression())

// static serving of assets, files, scripts
console.log(`serving static content from ${clientPath}`)
app.use(express.static(clientPath))

// serves favicon
app.use(favicon(path.join(__dirname, 'favicon.ico')))

// all unmatched get 404
app.get('*', (req, res) => {
  res.sendStatus(404)
})

const server = http.createServer(app)
console.log(`Express server @ http://localhost:3000 (${isProduction ? 'production' : 'development'})\n`)
server.listen(3000)
```
npm package: @supergeneric/yarn-release
Description: Simplifies module releases to NPM via Yarn
Latest version: 1.0.32

Simplifies module releases to NPM via Yarn
===

# Why?
For simplifying the steps when publishing to NPM (especially if from a subfolder):
- copying the root package.json into the build folder
- cleaning it up to remove dev deps
- navigating into that folder
- incrementing the appropriate version number
- publishing
- making sure that version number makes it back down to the root project to keep it all in sync
- navigating back out to the root

# Installation
```
yarn add -D @supergeneric/yarn-release
```

# Exposed Commands
- Just one: `yarn release --major|minor|patch [options]`

### Options
```bash
-V, --version     output the version number
-M, --major       major release X.#.# for breaking changes
-m, --minor       minor release #.X.# non-breaking for feature additions
-p, --patch       patch release #.#.X for patch fixes/tweaks
-s, --src <dir>   directory to build/release from (default=./src)
-d, --dest <dir>  temporary build directory (default=./.dist)
-t, --test        build, but do not publish (great for testing locally)
-c, --nocleanup   leave build folder after publishing (great for testing locally)
-v, --verbose     writes a bunch of extra stuff to the console
-h, --help        output usage information
--public          equivalent to npm publish --access=public
```

### Example Usage (package.json)
```js
{
  "scripts": {
    "build": "do some stuff",
    "release:major": "yarn build && release --major --src=build",
    "release:minor": "yarn build && release --minor --src=build",
    "release:patch": "yarn build && release --patch --src=build",
  }
}
```

### Caveats
- This build will do a generic `yarn publish` without specific `--access=public` flag,
meaning it will default to private if it's never been published.  Solution is to publish once with that
flag set, then use `release` to maintain.