open-index/open-npm huggingface dataset:
npm package: @payw/cau-food-scraper
Description: A CAU restaurant menu scraper for Node.js
Author: PAYW
Latest version: 2.0.6

# CAU Food Scraper (CAUFS)

A CAU restaurant menu scraper for Node.js

---

> **_NOTE:_** You should follow the migration guide in favor of v2 release.

---

### What's new in v2

- 🎯 Promise-based precise data scraping without any wasting of time
- 🚀 Boost up to 5x faster
- 🗑 Reduce dependencies which are totally unnecessary

### Installation

```zsh
npm install @payw/cau-food-scraper
# OR
yarn add @payw/cau-food-scraper
```

### Usage

```js
// Node.js
const { CAUFS } = require('@payw/cau-food-scraper')
// webpack
// import { CAUFS } from '@payw/cau-food-scraper'

CAUFS({
  id: 'portalId',
  pw: 'portalPw',
  days: 1 // optional (default: 5)
}).then(data => {
  // Do something
})
```

### Migration from v1 to v2

You should import the library differently.

```js
/* v1 */
// Node.js
const foodScrape = require('@payw/cau-food-scraper').default
// webpack
import foodScrape from '@payw/cau-food-scraper'

/* v2 */
// Node.js
const { CAUFS } = require('@payw/cau-food-scraper')
// webpack
import { CAUFS } from '@payw/cau-food-scraper'
```

---

> Currently, the chage below is deprecated and will be reverted back on the next major release.

Returning data type of `Day` and its children types had been slightly changed. The package includes a type definition with more detailed information.

```ts
/* v1 */
type Day = {
  date: string
  breakfast: Food[]
  lunch: Food[]
  supper: Food[]
}

/* v2 */
type Day = {
  date: string
  timeGroup: {
    breakfast: Restaurant[]
    lunch: Restaurant[]
    supper: Restaurant[]
  }
}
```
npm package: @payw/cau-timetable-scraper
Description: A CAU Timetable Scraper
Author: PAYW
Latest version: 2.4.0

<h1 align="center">CAU Timetable Scraper</h1>

<p align="center">A Node.js CAU timetable scraping module for <b>eodiro</b> written in TypeScript</p>

<p align="center">
  <a href="https://www.npmjs.com/package/@payw/cau-timetable-scraper">
    <img src="https://img.shields.io/npm/v/@payw/cau-timetable-scraper">
  </a>
  <a href="https://github.com/paywteam/cau-timetable-scraper/blob/master/LICENSE">
    <img src="https://img.shields.io/github/license/paywteam/cau-timetable-scraper?style=flat">
  </a>
</p>

---

## Installation

```zsh
npm install @payw/cau-timetable-scraper
```

You also need to install Puppeteer-related modules as its peer dependencies.

```zsh
npm install puppeteer pending-xhr-puppeteer
```

## v2.1.x Migration

From `v2.1.0`, a new feature has been arrived where **CTTS** returns lectures along with the colleges and majors information separately.

```ts
// v2.0.x
const lectures = CTTS({})

// v2.1.x
// Object destructuring
const { lectures, colleges } = CTTS({})

// Or
const scrapeResult = CTTS({})
const lectures = scrapeResult.lectures
const colleges = scrapeResult.colleges
```

## API

```ts
import { CTTS } from '@payw/cau-timetable-scraper'

const { lectures, colleges } = CTTS({
  id: 'CAU Portal ID',
  pw: 'password',
})
```

## Types

### RefinedLecture

The `CTTS` function returns an array of refined lectures.

| key       | type         |
| --------- | ------------ |
| coverages | `Coverage[]` |
| year      | `number`     |
| semester  | `string`     |
| campus    | `string`     |
| college   | `string`     |
| subject   | `string`     |
| major     | `string`     |
| majorCode | `string`     |
| grade     | `string`     |
| course    | `string`     |
| section   | `string`     |
| code      | `string`     |
| name      | `string`     |
| credit    | `string`     |
| time      | `string`     |
| professor | `string`     |
| closed    | `string`     |
| schedule  | `string`     |
| flex      | `string`     |
| note      | `string`     |
| building  | `string`     |
| room      | `string`     |
| periods   | `Period[]`   |

### Coverage

| key     | type     |
| ------- | -------- |
| course  | `string` |
| college | `string` |
| major   | `string` |

### Period

| key    | type                                              |
| ------ | ------------------------------------------------- |
| day    | `'mon'\|'tue'\|'wed'\|'thu'\|'fri'\|'sat'\|'sun'` |
| startH | `number`                                          |
| startM | `number`                                          |
| endH   | `number`                                          |
| endM   | `number`                                          |

Check out [type definitions](https://github.com/paywteam/cau-timetable-scraper/blob/master/src/types/index.ts) for more information.
npm package: @paywalls-net/client
Description: Client SDK for integrating Paywalls.net bot filtering and authorization services
Author: paywalls.net
Latest version: 1.0.3
Deprecated: This package has been renamed to @paywalls-net/filter

# paywalls-net-client

SDK for integrating Paywalls.net authorization services with CDN or edge environments.

## Install

```bash
npm install @paywalls-net/client
```

## Environment Variables
- `PAYWALLS_PUBLISHER_ID`: The unique identifier for the publisher using Paywalls.net services.
- `PAYWALLS_CLOUD_API_HOST`: The host for the Paywalls.net API. eg `https://cloud-api.paywalls.net`.
- `PAYWALLS_CLOUD_API_KEY`: The API key for accessing Paywalls.net services. NOTE: This key should be treated like a password and kept secret and stored in a secure secrets vault or environment variable.

## Usage
```javascript
import { init } from 'paywalls-net-client';

const handleRequest = await init('cloudflare');

export default {
  async fetch(request, env, ctx) {
    return handleRequest(request, env, ctx);
  }
};
```
npm package: @paywalls-net/filter
Description: Client SDK for integrating paywalls.net bot filtering and authorization services into your server or CDN.
Author: paywalls.net
Latest version: 1.3.14

# paywalls-net/filter

SDK for paywalls.net authorization and real-time licensing services. For use with CDN or edge environments.

## Install

```bash
npm install @paywalls-net/filter
```

## Environment Variables
- `PAYWALLS_PUBLISHER_ID`: The unique identifier for the publisher using paywalls.net services.
- `PAYWALLS_CLOUD_API_KEY`: The API key for accessing paywalls.net services. NOTE: This key should be treated like a password and kept secret and stored in a secure secrets vault or environment variable.

## Architecture: Path Prefix Ownership

The SDK uses a **path prefix ownership strategy** for VAI (Validated Actor Inventory) endpoints. All requests to `/pw/*` are automatically proxied to the paywalls.net cloud-api service with API key authentication.

### Benefits
- **Version Independent**: New VAI endpoints work automatically without SDK updates
- **Reduced Publisher Friction**: Publishers don't need to update client code when new features are added
- **Future Proof**: Supports nested paths like `/pw/v2/*` or `/pw/analytics/*`

### Proxied Endpoints
Any request matching `/pw/*` is proxied with authentication:
- `/pw/vai.json` - VAI classification (JSON)
- `/pw/vai.js` - VAI classification (JavaScript)
- `/pw/jwks.json` - JSON Web Key Set for signature verification
- Future endpoints automatically supported

This strategy minimizes version coupling between the client SDK and the paywalls.net platform.

## Usage
The following is an example of using the SDK with Cloudflare Workers:

```javascript
import { init } from '@paywalls-net/filter';

// Initialize the paywalls.net handler for Cloudflare
const handleRequest = await init('cloudflare');

export default {
   async fetch(request, env, ctx) {
       let pw_response = await handleRequest(request, env, ctx);
       if (pw_response) {
           // If the handler returns a response, return it
           return pw_response;
       }
       return fetch(request); // Proceed to origin/CDN
   }
};
```
npm package: @paywan.chong/mtvh-design-system
Description: MTVH design system
Author: MTVH
Latest version: 0.0.69

# MTVH Design System

View documentation for [MTVH Design System](https://mtvh-design-system.netlify.app/).

This library is dependant on:
- Bootstrap 5.*

## Prerequisites
-  Node.js — latest LTS version
-  Hugo — latest extended version. Installation guide https://gohugo.io/installation/


## Development

- `npm install` will download dependancies
- `npm run dev` will start dev environment - http://localhost:1313/
- `npm run build` will build and minify css to dist folder http://localhost:1313/
- `npm publish --access=public` Please run npm build before you publish. This will publish dist folder to npm. Note, you will need a permission to do so.

#### To run proxy decap local cms
Access to static/admin, run 'npx decap-server'
Once the proxy started you should be able to cms, ie http://localhost:1313/admin
See more from https://decapcms.org/docs/beta-features/

## Installation
1. Installing with NPM
2. OR Import css styles
3. Adding fonts and images assets

### Installing with NPM
```
npm install @mtvh/mtvh-design-system
```
#### All styles
To import all styles as a single package you need to add following snippet to your main SCSS file:
```
@import '/node_modules/@mtvh/mtvh-design-system/dist/mtvh.min.css';
```
Alternatively, you could include the css inside the footer/head tag depending on your site structure
```
<link type="text/css" rel="stylesheet" href="dist/mtvh.min.css">
```
#### Core and selected components
Our core library includes the design system's base theme, typography, mixins and helper functions.
Once you imported it, you can take full advantage of our variables and helpers.
To import core library you need to add following snippet at the start of your main SASS file:
```
@import "node_modules/@mtvh/mtvh-design-system/assets/scss/mtvh";
```

#### Adding fonts and images assets
The css uses the fonts and icons using a default path as below. You can amend the prefix by customize via the following variable
```
$font-path: "./fonts/";
$asset-icon-path: "./images/icons/";
```
* Please note the font files is downloadable from mtvh-design-system git repo NOT npm
npm package: @paywan.chong/mtvh-formio
Description: MTVH custom templates, components and styling for Form.io
Author: MTVH
Latest version: 0.0.13

# MTVH Formio Library

MTVH custom Form.io templates, components and styling for MTVH websites:

This library is dependant on:
- Formio JS v4.15.0
- Bootstrap 4.*
- jquery 3.6.3 (required for uploadcare widget)

## Installation

Along with the above dependancies, there are 2 files from this package that need to be included in any website to run the library.
- `/dist/mtvh-formio.use.min.js`
- `/dist/mtvh-formio.css`

## Development
- `npm install` will download dependancies and build all dist files.
- `npm run builder` will start the builder environment to build forms and test out new components - http://localhost:3000
- `npm run watch` will watch for changes to sass, components, options and templates, and build just the depenancy files for the builder - `mtvh-formio.css` and `mtvh-formio.use.min.js`.
- `npm run build` Build all dist files prior to publishing.
npm package: @paywatchglobal/n8n-nodes-azure-storage-plus
Description: n8n community node for Azure Blob Storage with service principal auth, prefix filtering, and extended operations
Author: Asyrique Thevendran
Latest version: 0.1.0

# @paywatchglobal/n8n-nodes-azure-storage-plus

This is an n8n community node. It lets you use _app/service name_ in your n8n workflows.

_App/service name_ is _one or two sentences describing the service this node integrates with_.

[n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/sustainable-use-license/) workflow automation platform.

[Installation](#installation)
[Operations](#operations)
[Credentials](#credentials)
[Compatibility](#compatibility)
[Usage](#usage)
[Resources](#resources)
[Version history](#version-history)

## Installation

Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation.

## Operations

_List the operations supported by your node._

## Credentials

_If users need to authenticate with the app/service, provide details here. You should include prerequisites (such as signing up with the service), available authentication methods, and how to set them up._

## Compatibility

_State the minimum n8n version, as well as which versions you test against. You can also include any known version incompatibility issues._

## Usage

_This is an optional section. Use it to help users with any difficult or confusing aspects of the node._

_By the time users are looking for community nodes, they probably already know n8n basics. But if you expect new users, you can link to the [Try it out](https://docs.n8n.io/try-it-out/) documentation to help them get started._

## Resources

* [n8n community nodes documentation](https://docs.n8n.io/integrations/#community-nodes)
* _Link to app/service documentation._

## Version history

_This is another optional section. If your node has multiple versions, include a short description of available versions and what changed, as well as any compatibility impact._