open-index/open-npm huggingface dataset:
npm package: @jankeromnes/camp
Description: Streamed Web Server with easy Ajax, EventSource, Templating, Static pages; Middleware approach and extensibility.
Author: Thaddee Tyl
Latest version: 16.2.17

# ScoutCamp [![Build Status](https://img.shields.io/travis/espadrine/sc.svg)](https://travis-ci.org/espadrine/sc)

*WebApps Framework*

[Documentation](https://github.com/espadrine/sc/tree/master/doc/Readme.md).

## Get started

- <code>[npm](http://nodejs.org) install camp</code>
- put website files in `web/`
- edit `app.js` with `require('camp').start({port: 1234})`
- run `node app`
- hit [localhost:1234](http://[::0]:1234)
- enjoy!

Have a sip at what you can do [here](https://github.com/espadrine/sc/blob/master/app.js)!
Spoilers: one-liner WebSocket chat demo.
[Download it for free](https://github.com/espadrine/sc/zipball/master) to try
the demo!

## Features

- routes, templates (with one parser by default)
- query parameters processing, file upload, HTTP authentication
- ajax, EventSource (SSE), WebSockets built-in

## Contribute

- open [issues](https://github.com/espadrine/sc/issues)
- send [pull requests](http://help.github.com/send-pull-requests/)
- contact us on [#tree](irc://irc.freenode.net/#tree)

## License

MIT. See LICENSE.md for more.

The "Red spiders" comic is CC BY-NC 2.5 from Randall Munroe, XKCD.
Link in `web/index.html`.

## Versions

Versions are tags labeled after the day it was released.

    31.06.28 → june 28th, 2031

They are all under LICENSE.md.
npm package: @jankuca/eslint-plugin-react-usecallback
Description: Rationale: [Why we memo all the things](https://attardi.org/why-we-memo-all-the-things/).
Latest version: 0.0.9

# eslint-plugin-react-usecallback

Rationale: [Why we memo all the things](https://attardi.org/why-we-memo-all-the-things/).

## Why the fork?

The original forked plugin ([eslint-plugin-react-memo](https://github.com/steadicat/eslint-plugin-react-memo)) also checks this using the `require-usememo-children` rule but the rule is too strict about JSX used as children (the most common thing in React) and has not way to select which of the actual children prop rules apply.

## Rules

### `require-usecallback-props` (**ADVANCED**)

Requires functions that get passed to children as props to be wrapped in `React.useCallback()`.
npm package: @janmarkuslanger/cursor-js
Description: Create your own cursor with vanilla js.
Author: Jan-Markus Langer
Latest version: 0.1.0

# cursor.js

Create your own custom cursor with vanilla js.

# Install

## via npm

`npm i @janmarkuslanger/cursor-js --save`

## via script

Add the file `cursor.js` into your project

`<script src="cursor.js"></script>`

# Usage

## via npm

``` javascript
const Cursor = require('cursor-js');
const my Cursor = new Cursor();
```

## via script

``` html
<body>
  <script src="cursor.js"></script>
  <script>
    const my Cursor = new Cursor();
  </script>
</body>
```

# Options

Here are the available option params and their default values

``` javascript
new Cursor({
  size: 36,
  borderWidth: 3,
  borderColor: 'black',
  borderRadius: '50%',
  root: document.querySelector('body'),
  hideCursor: true
});
```

# Callbacks

Coming soon

## Need help or you need a feature?

If you need some help to get started or you have an issue?
Create an issue or write me jan-markus@gmx.de
npm package: @janmarkuslanger/simple-spa
Description: This library adds single-page-application feature into your website.
Author: Jan-Markus Langer
Latest version: 0.1.2

# simple-spa

This library adds single-page-application feature into your website.

The main class is `Spa`. `LocalStorageCache` is a cache implementation.
You can add your own cache implementation.
If you want to know what options are available for Spa or how you can create your own cache look at `src/types.d.ts`.

## Install 

```
npm i @janmarkuslanger/simple-spa --save
```

## Usage


``` js 
import { Spa, LocalStorageCache } from "@janmarkuslanger/simple-spa";

const myCache = new LocalStorageCache();

const mySpa = new Spa({
    cache: myCache
});

document.querySelector('.test').addEventListener('click', () => {
    mySpa.load('/other-page')
});
```

Main page. Click on Button will load the other page in the background and the new content will be replaced.

``` html
<h1 data-simple-spa="a">Main content</h1>
<button class="test">Click me </button>
```

``` html
<h1 data-simple-spa="a">New Content</h1>
```


## Development

### Commands

TSDX scaffolds your new library inside `/src`.

To run TSDX, use:

```bash
npm start # or yarn start
```

This builds to `/dist` and runs the project in watch mode so any edits you save inside `src` causes a rebuild to `/dist`.

To do a one-off build, use `npm run build` or `yarn build`.

To run tests, use `npm test` or `yarn test`.

#### Jest

Jest tests are set up to run with `npm test` or `yarn test`.

#### Bundle Analysis

[`size-limit`](https://github.com/ai/size-limit) is set up to calculate the real cost of your library with `npm run size` and visualize the bundle with `npm run analyze`.