open-index/open-npm huggingface dataset:
npm package: @sphido/emoji
Description: Emoji for Sphido - A 🚀 fast, lightweight, static site generator
Author: Roman Ožana
Latest version: 1.1.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @sphido/emoji

Sphido extender that add support for https://twemoji.twitter.com/
 
## Install

```bash
yarn add @sphido/emoji
```

## Example

```javascript
import globby from 'globby' 
import {getPages} from '@sphido/core';
import {frontmatter} from '@sphido/frontmatter';
import {emoji} from '@sphido/emoji';
import {meta} from '@sphido/meta'; 
import {markdown} from '@sphido/markdown';

(async () => {

	const posts = await getPages(
		await globby('packages/**/*.md'),
		...[
            frontmatter,
            emoji,
            markdown,
            meta,
       ]
	);

})();
```

## Reference

* https://twemoji.twitter.com/

## Source codes

https://github.com/sphido/sphido/tree/main/packages/sphido-emoji
npm package: @sphido/frontmatter
Description: Frontmatter for Sphido - A rocket 🚀 fast, lightweight, static site generator
Author: Roman Ožana
Latest version: 3.0.0

# @sphido/frontmatter

[Front matter](https://jekyllrb.com/docs/front-matter/) is an optional section of valid YAML that is placed at the top
of a page and is used for maintaining metadata for the page and its contents. `@sphido/frontmatter` is a `page` extender
that processes these blocks inside `page.content`. Using the fastest Node.js YAML
Parser [js-yaml](https://github.com/nodeca/js-yaml).

## Install

```bash
pnpm add @sphido/frontmatter
```

## Example

```javascript
#!/usr/bin/env node

import { getPages, allPages } from '@sphido/core';
import { dirname, relative } from 'node:path';
import { frontmatter } from '@sphido/frontmatter';

const pages = await getPages({path: 'content'}, frontmatter);

for (const page of allPages(pages)) {
	console.log(page)
}
```

## How to add front matter block

* Must be first in the file
* Must be valid YAML
* Can be closed between triple-dashed lines `---` and `---` or HTML comments `<!-- -->`

```markdown
---
title: Page title
tags: [one, two, other]
---

# Content

Lorem ipsum...
```

or

```markdown
<!--
title: Page title
tags: [one, two, other]
-->

# Content

Lorem ipsum...
```

## Source code

[@sphido/frontmatter](https://github.com/sphido/sphido/tree/main/packages/sphido-frontmatter)
npm package: @sphido/hashtags
Description: Parse hashtags from string
Author: Roman Ožana
Latest version: 3.0.0

# @sphido/hashtags

Searches Markdown for hashtags and replaces them with links in the format `[#hashtag](/tag/hashtag)`.

## Install

```bash
pnpm add @sphido/hashtags
```

## API

### `getHashtags(content)`

The `getHashtags()` function searches the string for all hashtags and returns them as an array. The input `content`
parameter is expected to be in Markdown format. The function automatically skips preformatted text in Markdown syntax.

```javascript
import { getHashtags } from '@sphido/hashtags';

const tags = getHashtags('#one #two #three `color: #red`');
console.log(tags); // will be ['#one', '#two', '#three']; 
```

### `tagsToMarkdown(content, tags = [], options?)`

The `tagsToMarkdown()` function expects at least two input parameters — `content` and `tags`. It replaces hashtags with
Markdown syntax for links in the format `[#hash](/tag/hash)`.

```javascript
import { getPages, allPages, readFile } from '@sphido/core';
import { getHashtags, tagsToMarkdown } from '@sphido/hashtags';

const pages = await getPages({path: 'content'});

for (const page of allPages(pages)) {
	page.content = await readFile(page.path);
	page.tags = getHashtags(page.content);

	// 
	page.content = tagsToMarkdown(page.content, page.tags);
}
```

### `hashtags(page, dirent)`

The `hashtags()` function searches for all hashtags in `page.content`. If the `page.content` property is empty, the function
will automatically load the file content. All found tags are then stored in the `page.tags` property as an array. The
function also automatically replaces hashtags with Markdown syntax for links in the format `[#hash](/tag/hash)`.

```javascript
import { getPages, allPages } from '@sphido/core';
import { hashtags } from '@sphido/hashtags';

const pages = await getPages({path: 'content'}, hashtags);

for (const page of allPages(pages)) {
	console.log(page.tags, page.content);
}
```

## Source code

[@sphido/hashtags](https://github.com/sphido/sphido/tree/main/packages/sphido-hashtags)
npm package: @sphido/link
Description: Link function for pages
Author: Roman Ožana
Latest version: 1.1.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @sphido/link

`@sphido/link` is **extender function** that add `link()` to `page` and allow create valid URL link to `page` 


## Install

```bash
yarn add @sphido/link
```

## Example

```javascript
import {link} from '@sphido/link';
import {frontmatter} from '@sphido/frontmatter';
import {meta} from '@sphido/meta';
import {markdown} from '@sphido/markdown'; 
import {getPage} from '@sphido/core';

(async () => {

	const page = await getPage('/example.html',
		...[
            frontmatter,
            markdown,
            meta,
			{link}
		]
	);

	console.log(page.link());
})();
```

## Source codes

https://github.com/sphido/sphido/tree/main/packages/sphido-link
npm package: @sphido/meta
Description: Page extender that add follow properties to `page` object:
Author: Roman Ožana
Latest version: 1.1.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @sphido/meta

Page extender that add follow properties to `page` object:

* `page.title` - try detect correct title from `page.content` 
* `page.date` - detect date if is not set by date of last change 
* `page.slug` - using [slugify](https://github.com/sindresorhus/slugify) to made url safe slug
* `page.tags` - create Set from tags

## Install

```bash
yarn add @sphido/marked
```

```javascript
import globby from 'globby';
import {getPages} from '@sphido/core';
import {frontmatter} from '@sphido/frontmatter';
import {meta} from '@sphido/meta';
import {markdown} from '@sphido/markdown';

(async () => {

	const pages = await getPages(
		await globby('content/**/*.md'),
		...[
			frontmatter,
            markdown,
            meta,
		],
	);

})();
```

## Source codes

https://github.com/sphido/sphido/tree/main/packages/sphido-meta
npm package: @sphido/nunjucks
Description: Nunjucks template for sphido
Author: Roman Ožana
Latest version: 1.1.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @sphido/nunjucks

This package allow use [nunjucks](https://mozilla.github.io/nunjucks/) - a rich and powerful templating language for JavaScript from Mozilla
for rendering HTML files from page object.

Functions:

- `env.addFilter(name, func, [async])` -  allow [addFilter](https://mozilla.github.io/nunjucks/api.html#getfilter) to [nunjucks](https://mozilla.github.io/nunjucks) template engine.
- `nunjucks.render(name, [context], [callback])` - render the template see [nunjucks docs](https://mozilla.github.io/nunjucks/api.html#render)
- `nunjucks.renderString(str, context, [callback])` - 
- `renderToFile(file, template, vars = undefined)` - render the template to file

Extenders: 

- `save(dir, template = 'theme/page.html')` - function extender allow save page to file

## Install

```bash
yarn add @sphido/nunjucks
```

## Usage

```javascript
import globby from 'globby';
import {save} from '@sphido/nunjucks';
import {getPages} from '@sphido/core';
import {frontmatter} from '@sphido/frontmatter';
import {markdown} from '@sphido/markdown';
import {meta} from '@sphido/meta';

(async () => {

	// 1. get list of pages...
	const posts = await getPages(
		await globby('content/**/*.md'),
		...[
            frontmatter,			
            markdown,
            meta,
            {save}			
		],
	);

	// 2. save to html with default template
	for await (const page of posts) {
		page.save(
			page.dir.replace('content', 'public')
		);
	}
})();
```

## Source codes

https://github.com/sphido/sphido/tree/main/packages/sphido-nunjucks
npm package: @sphido/pagination
Description: Pagination for Sphido CMS
Author: Roman Ožana
Latest version: 1.1.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @sphido/pagination

Allow paginate over pages return follow structure: 

```json
{
  "posts": [ "... array of pages" ],
  "current": "number of current page",
  "pages": ["... array of other pages"]
}
```

## Install

```bash
yarn add @sphido/pagination
```

## Usage

```javascript
import {pagination} from "@sphido/pagination";

const posts = [
  {title: 'First title'},
  {title: 'Second title'},
  {title: 'Another title'},
  {title: 'And last one'}
];

(async () => {
  const pages = pagination(posts, 3);
  for await (const page of pages) {
	console.log(page.posts); // list of posts on current page
	console.log(page.current); // current page no
	console.log(page.pages); // array of other pages
  }
})();
```

## Source codes

https://github.com/sphido/sphido/tree/main/packages/sphido-pagination
npm package: @sphido/sitemap
Description: Sitemap XML for Sphido CMS
Author: Roman Ožana
Latest version: 3.0.1

# @sphido/sitemap

Generates [XML sitemap](https://www.sitemaps.org/protocol.html) files for Sphido CMS.

## Install

```bash
pnpm add @sphido/sitemap
```

## Example

```javascript
#!/usr/bin/env node

import { dirname, relative, join } from 'node:path';
import { getPages, allPages } from '@sphido/core';
import slugify from '@sindresorhus/slugify';
import { createSitemap } from '@sphido/sitemap';

const pages = await getPages({path: 'content'});
const map = await createSitemap('sitemap.xml');

map.add({url: 'https://sphido.cz', priority: 1});

for (const page of await allPages(pages)) {
	page.slug = slugify(page.name) + '.html';
	page.output = join('/', relative('content', dirname(page.path)), page.slug);

	// prepare sitemap item properties
	page.url = new URL(page.slug, 'https://sphido.cz');
	page.date = new Date();
	page.priority = 0.5;
	page.changefreq = 'daily';

	// add page to sitemap
	map.add(page);
}

await map.end();
```

## Source code

[@sphido/sitemap](https://github.com/sphido/sphido/tree/main/packages/sphido-sitemap)
npm package: @sphido/twemoji
Description: Twemoji for Sphido - A 🚀 fast, lightweight, static site generator
Author: Roman Ožana
Latest version: 0.0.8
Deprecated: Depraceted replace with @sphido/emoji

# @sphido/twemoji

Sphido extender that add support for https://twemoji.twitter.com/
 
## Install

```bash
yarn add @sphido/twemoji
```

## Example

```javascript
const globby = require('globby');
const {getPages} = require('@sphido/core');


(async () => {

	const posts = await getPages(
		await globby('packages/**/*.md'),
		...[
	require('@sphido/frontmatter'),
	require('@sphido/twemoji'),
	require('@sphido/marked'),
	require('@sphido/meta'),
       ]
	);

})();
```

## Reference

* https://twemoji.twitter.com/

## Source codes

https://github.com/sphido/sphido/tree/master/packages/sphido-twemoji
npm package: @sphinx-software/laravel-antenna
Description: The Antenna transport that using built on top of Laravel Echo
Author: monkey-programmer
Latest version: 1.0.2

# @sphinx-software/laravel-antenna

> The Antenna transport that built on top of Laravel Echo

[![NPM](https://img.shields.io/npm/v/@sphinx-software/laravel-antenna.svg)](https://www.npmjs.com/package/@sphinx-software/laravel-echo-antenna-transport) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save @sphinx-software/laravel-antenna
```

## Usage

```tsx
import { echo } from '@sphinx-software/laravel-antenna'
import { AntennaProvider } from '@sphinx-software/antenna'

import Echo from 'laravel-echo'

const transport = echo({
  echo: new Echo({ 
      // ... your Laravel echo config here
  }),
  events: [ 
    // List of your events
  ]
})


const App = () => {
  return (
    <AntennaProvider transport={transport}>
      {/* Your app code here */}
    </AntennaProvider>
  )
}
```

## License

MIT © [monkey-programmer](https://github.com/monkey-programmer)
npm package: @sphinx-software/manifestor
Description: Sphinx Manifestor
Author: rikky
Latest version: 0.0.4

# Manifestor v0.0.1


## Installation

```
npm install -g manifestor
```


## Usage

In your `package.json` file, add the field `manifestor`

```json
// The package.json file

{
    "manifestor": [
        {
            "directory": "./src",
        },
        {
           "directory": "./other-package",
           "options": [
              "**/.test.js"
           ]
        }
    ] 
}
```

then run

```
$ manifestor
```

You should see the output about the `manifest.js` file:

```
Generated manifest file at /your/project/manifest.js
```

This file is already requires source files from the `src` directory and the `other-package` directory (except the files end with `.test.js`)

The exclude option is following [minimatch](https://github.com/isaacs/minimatch) library

That's it!
npm package: @sphinx-software/queue
Description: @sphinx-software/queue ===============
Author: dvha
Latest version: 0.2.0

@sphinx-software/queue
===============

## A queue for sphinx-fusion 
 - support [`rabitmq`](https://www.rabbitmq.com/) using [amqp](https://github.com/squaremo/amqp.node)
 - support [`sqs`](https://aws.amazon.com/sqs/) using [aws-sdk](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html)
 - support [`redis-queue`](https://redis.io/) using [rsmq](https://github.com/smrchy/rsmq)
 - support `database-queue` using [knex](http://knexjs.org/) for Postgres, MSSQL, MySQL, MariaDB, SQLite3, and Oracle 
 - support `null-queue`,`memory-queue`
## implements Job

```js
class Job {

    constructor(name) {
        this.name = name;
    }
    
    get flow() {
        // overwrite option flow default (no required)
        return {
            delay:1000,
            timeout:15000,
            retry:3,
            pushBack:true,
        }
    }

    handle() {
        // run task 
        console.log(`hello ${this.name}`);
    }
}
```
## Provider Register

```js
let serializer = await container.make('serializer');
serializer.forType(Job,
    (job) => job.name,
    (jobData) => new Job(jobData.name)
)
```

## Controller

```js
contructor(queueManager) {
    this.queueManager = queueManager;
}
static get dependencies() {
    return ['queueManager'];
}

use() {
    this.queueManager.to('myQueue').enqueue(new Job('word'));
}
```

## Config options queue
```js
queue {
    default: 'databaseQueue',
    queues : {
        rabbitMQ     : {
            url        : 'amqp://localhost',
            adapter    : 'amqp',
            channelName: 'someName',
            // flow default for queue if flow for job is not available            
            flow       : 'timeout:15000|delay:0|retry:3|rotateBack',
            // For more options see http://www.squaremobius.net/amqp.node/channel_api.html#channel_get
            options    : {
                send   : {
                    noAck: true
                },
                receive: {
                    noAck: true
                }
            }
        },
        redisMQ      : {
            host       : '127.0.0.1',
            flow       : 'timeout:15000|delay:900000|retry:3|pushBack',
            port       : 6379,
            adapter    : 'rsmq',
            channelName: 'someName2'
        },
        SQS          : {
            flow           : 'timeout:15000|delay:30000|retry:3|rotateBack',
            adapter        : 'sqs',
            queueUrl       : 'queueURL',
            accessKeyId    : 'accessKeyId',
            secretAccessKey: 'secretAccessKey',
            region         : 'us-east-1'
        },
        databaseQueue: {
            flow   : 'timeout:15000|delay:30000|retry:3|rotateBack',
            adapter: 'database'
        }
    }
};

```
## Licences

[MIT](LICENSE)
npm package: @sphinx-software/wave-function
Description: A testing framework for Fusion.
Author: rikky
Latest version: 0.0.5

# WaveFunction

A testing framework for Fusion.

*FYI, in quantum physics, **wave function** is a mathematical description of the quantum state of a system.*

***WaveFunction** created for making a unify, simple, clean and predicable testing framework for Fusion. Which will describe your Fusion based application in a very natural and logical way.*

*We hope so, at least* :smiley_cat:
 
---
npm package: @sphinxdoc/cli
Description: sphinxdoc cli
Author: Jam Risser
Latest version: 0.1.30

# @sphinxdoc/cli

[![GitHub stars](https://img.shields.io/github/stars/codejamninja/sphinxdoc.svg?style=social&label=Stars)](https://github.com/codejamninja/sphinxdoc)

> sphinxdoc cli

Please ★ this repo if you found it useful ★ ★ ★


## Features

* Compatible with jsdoc
* Pluggable output
* Customize doc theme


## Installation

```sh
npm install --save @sphinxdoc/cli
```


## Dependencies

* [NodeJS](https://nodejs.org)
* [Python](https://www.python.org)


## Usage

[Contribute](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md) usage docs


## Support

Submit an [issue](https://github.com/codejamninja/sphinxdoc/issues/new)


## Screenshots

[Contribute](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md) a screenshot


## Contributing

Review the [guidelines for contributing](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md)


## License

[MIT License](https://github.com/codejamninja/sphinxdoc/blob/master/LICENSE)

[Jam Risser](https://codejam.ninja) © 2018


## Changelog

Review the [changelog](https://github.com/codejamninja/sphinxdoc/blob/master/CHANGELOG.md)


## Credits

* [Jam Risser](https://codejam.ninja) - Author


## Support on Liberapay

A ridiculous amount of coffee ☕ ☕ ☕ was consumed in the process of building this project.

[Add some fuel](https://liberapay.com/codejamninja/donate) if you'd like to keep me going!

[![Liberapay receiving](https://img.shields.io/liberapay/receives/codejamninja.svg?style=flat-square)](https://liberapay.com/codejamninja/donate)
[![Liberapay patrons](https://img.shields.io/liberapay/patrons/codejamninja.svg?style=flat-square)](https://liberapay.com/codejamninja/donate)
npm package: @sphinxdoc/core
Description: sphinxdoc core
Author: Jam Risser
Latest version: 0.1.30

# @sphinxdoc/core

[![GitHub stars](https://img.shields.io/github/stars/codejamninja/sphinxdoc.svg?style=social&label=Stars)](https://github.com/codejamninja/sphinxdoc)

> sphinxdoc core

Please ★ this repo if you found it useful ★ ★ ★


## Features

* Compatible with jsdoc
* Pluggable output
* Customize doc theme


## Installation

```sh
npm install --save @sphinxdoc/core
```


## Dependencies

* [NodeJS](https://nodejs.org)
* [Python](https://www.python.org)


## Usage

[Contribute](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md) usage docs


## Support

Submit an [issue](https://github.com/codejamninja/sphinxdoc/issues/new)


## Screenshots

[Contribute](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md) a screenshot


## Contributing

Review the [guidelines for contributing](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md)


## License

[MIT License](https://github.com/codejamninja/sphinxdoc/blob/master/LICENSE)

[Jam Risser](https://codejam.ninja) © 2018


## Changelog

Review the [changelog](https://github.com/codejamninja/sphinxdoc/blob/master/CHANGELOG.md)


## Credits

* [Jam Risser](https://codejam.ninja) - Author


## Support on Liberapay

A ridiculous amount of coffee ☕ ☕ ☕ was consumed in the process of building this project.

[Add some fuel](https://liberapay.com/codejamninja/donate) if you'd like to keep me going!

[![Liberapay receiving](https://img.shields.io/liberapay/receives/codejamninja.svg?style=flat-square)](https://liberapay.com/codejamninja/donate)
[![Liberapay patrons](https://img.shields.io/liberapay/patrons/codejamninja.svg?style=flat-square)](https://liberapay.com/codejamninja/donate)
npm package: @sphinxdoc/gatsby
Description: gatsby sphinxdoc platform
Author: Jam Risser
Latest version: 0.1.33

# @sphinxdoc/gatsby

[![GitHub stars](https://img.shields.io/github/stars/codejamninja/sphinxdoc.svg?style=social&label=Stars)](https://github.com/codejamninja/sphinxdoc)

> document node project with sphinx

Please ★ this repo if you found it useful ★ ★ ★


## Features

* Compatible with jsdoc
* Pluggable output
* Customize doc theme


## Installation

```sh
npm install --save @sphinxdoc/gatsby
```


## Dependencies

* [NodeJS](https://nodejs.org)
* [Python](https://www.python.org)


## Usage

[Contribute](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md) usage docs


## Support

Submit an [issue](https://github.com/codejamninja/sphinxdoc/issues/new)


## Screenshots

[Contribute](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md) a screenshot


## Contributing

Review the [guidelines for contributing](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md)


## License

[MIT License](https://github.com/codejamninja/sphinxdoc/blob/master/LICENSE)

[Jam Risser](https://codejam.ninja) © 2018


## Changelog

Review the [changelog](https://github.com/codejamninja/sphinxdoc/blob/master/CHANGELOG.md)


## Credits

* [Jam Risser](https://codejam.ninja) - Author


## Support on Liberapay

A ridiculous amount of coffee ☕ ☕ ☕ was consumed in the process of building this project.

[Add some fuel](https://liberapay.com/codejamninja/donate) if you'd like to keep me going!

[![Liberapay receiving](https://img.shields.io/liberapay/receives/codejamninja.svg?style=flat-square)](https://liberapay.com/codejamninja/donate)
[![Liberapay patrons](https://img.shields.io/liberapay/patrons/codejamninja.svg?style=flat-square)](https://liberapay.com/codejamninja/donate)
npm package: @sphinxdoc/rtd
Description: rtd sphinxdoc platform
Author: Jam Risser
Latest version: 0.1.30

# @sphinxdoc/rtd

[![GitHub stars](https://img.shields.io/github/stars/codejamninja/sphinxdoc.svg?style=social&label=Stars)](https://github.com/codejamninja/sphinxdoc)

> rtd sphinxdoc platform

Please ★ this repo if you found it useful ★ ★ ★


## Features

* Compatible with jsdoc
* Pluggable output
* Customize doc theme


## Installation

```sh
npm install --save @sphinxdoc/rtd
```


## Dependencies

* [NodeJS](https://nodejs.org)
* [Python](https://www.python.org)


## Usage

[Contribute](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md) usage docs


## Support

Submit an [issue](https://github.com/codejamninja/sphinxdoc/issues/new)


## Screenshots

[Contribute](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md) a screenshot


## Contributing

Review the [guidelines for contributing](https://github.com/codejamninja/sphinxdoc/blob/master/CONTRIBUTING.md)


## License

[MIT License](https://github.com/codejamninja/sphinxdoc/blob/master/LICENSE)

[Jam Risser](https://codejam.ninja) © 2018


## Changelog

Review the [changelog](https://github.com/codejamninja/sphinxdoc/blob/master/CHANGELOG.md)


## Credits

* [Jam Risser](https://codejam.ninja) - Author


## Support on Liberapay

A ridiculous amount of coffee ☕ ☕ ☕ was consumed in the process of building this project.

[Add some fuel](https://liberapay.com/codejamninja/donate) if you'd like to keep me going!

[![Liberapay receiving](https://img.shields.io/liberapay/receives/codejamninja.svg?style=flat-square)](https://liberapay.com/codejamninja/donate)
[![Liberapay patrons](https://img.shields.io/liberapay/patrons/codejamninja.svg?style=flat-square)](https://liberapay.com/codejamninja/donate)