open-index/open-npm huggingface dataset:
npm package: @kurone-kito/jsonresume-theme-japanese-cv-style-docx
Description: Generate a Word docx file of Japanese-style resume (職務経歴書) from JSON Resume
Author: kurone-kito
Latest version: 2.0.0

# “@kurone-kito/jsonresume-theme-japanese-cv-style-docx”

[![npm version](https://badge.fury.io/js/%40kurone-kito%2Fjsonresume-theme-japanese-cv-style-docx.svg)](https://badge.fury.io/js/%40kurone-kito%2Fjsonresume-theme-japanese-cv-style-docx)
[![Coverage Status](https://coveralls.io/repos/github/kurone-kito/jsonresume-theme-japanese-cv-style-docx/badge.svg?branch=master)](https://coveralls.io/github/kurone-kito/jsonresume-theme-japanese-cv-style-docx?branch=master)

JSON Resume から、日本のお堅い系企業ウケしそうな職務経歴書の Word DOCX
ファイルを生成する NPM パッケージです。既存のテーマは揃いも揃ってモダンで、
かつ Word DOCX を出力できるテーマが見当たりませんでしたので、制作しました。

An NPM package that generates a Word DOCX file of Japanese-style resume
from JSON Resume. The existing themes are all modern and stylish. And then
cannot found that can output Word DOCX.

## Requires

### Strongly recommended

- Node.js &gt;= v15.4 (On ARM64 e.g. Apple M1)
- Node.js &gt;= v14 (On x86-64)

### or

- Node.js &gt;= v12.20 and &lt; v14, and [a latest `full-icu` package](https://github.com/unicode-org/full-icu-npm) (On x86-64)

## Usage

```sh
npm install --save @kurone-kito/jsonresume-theme-japanese-cv-style-docx
```

```JavaScript
import fs from 'fs';
import render from '@kurone-kito/jsonresume-theme-japanese-cv-style-docx';
// // ⬆️ or ⬇️
// const { render } = require('@kurone-kito/jsonresume-theme-japanese-cv-style-docx');
const resume = require('./resume.json');

const filename = 'resume.docx';

render(resume).then(buffer => {
  fs.writeFileSync(filename, buffer);
  console.log(`writted: ${filename}`);
});
```

## API

### render()

```TypeScript
render(resume: EnhancedResume): Promise<Buffer>
```

#### Params

- resume: A JSON Resume object. (See following: [EnhancedResume](#enhancedresume))

#### Returns

Body of the Word DOCX file.

## Types

### EnhancedResume

Enhanced definition of the JSON Resume.

```JSON
{
  "projects": [
    {
      ...
      "env": {
        "os": ["Windows XP", "AIX"],
        "language": ["PL/I", "COBOL"],
        "platforms": ["Excel 2000"]
      }
    }
  ],
  "skills": [
    {
      ...
      "tags": "language"
    },
    {
      ...
      "tags": ["tools", "foobar"]
    }
  ]
}
```

## License

MIT
npm package: @kurone-kito/jsonresume-types
Description: TypeScript type definition for JSON Resume
Author: kurone-kito
Latest version: 0.4.0

# 📦 `@kurone-kito/jsonresume-types`

TypeScript type definition for [JSON Resume](http://jsonresume.org)

## Pros

- No dependencies (only devDependencies)
- No logic (only type definition)

## System requirement

- Node.js >= v16.20

## Usage

```sh
npm install -D @kurone-kito/jsonresume-types
```

```TypeScript
import { ResumeSchema } from '@kurone-kito/jsonresume-types';

export const render = (json: ResumeSchema) => {
  // ...
};
```

## License

MIT
npm package: @kurone-kito/launchpad-icons-react
Description: the icons like the VRChat icons for Node.js ecosystem with the React
Author: kurone-kito
Latest version: 0.15.0

# ![VRC Icons by Kuroné Kito](https://kurone-kito.github.io/launchpad-icons/images/banner.webp)

🚀 Unofficial VRC like icons for [React.js](https://react.dev)

## Usage

```sh
npm install @kurone-kito/launchpad-icons-react
```

```tsx
import { Avatars } from '@kurone-kito/launchpad-icons-react/Avatars';
import type { FC } from 'react';

export const App: FC = () => (
  <div>
    <Avatars />
  </div>
);
```

[Let's find out what icons are available!](https://kurone-kito.github.io/launchpad-icons/explore)

## License

Copyright (c) Kuroné Kito (黒音キト)

This project is a dual license with the following options:

- [MIT License](https://opensource.org/licenses/MIT)
- [Creative Commons CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)

**The DEFAULT LICENSE applied is MIT**. You can use it under the CC BY 4.0
license by opting in in any way when incorporating it into your work.

The CC BY 4.0 license is a remnant from when this library was distributed
under the CC BY-NC 4.0 license and is retained for compatibility.
npm package: @kurone-kito/launchpad-icons-solid
Description: the icons like the VRChat icons for Node.js ecosystem with the Solid.js
Author: kurone-kito
Latest version: 0.15.0

# ![VRC Icons by Kuroné Kito](https://kurone-kito.github.io/launchpad-icons/images/banner.webp)

🚀 Unofficial VRC like icons for [Solid.js](https://www.solidjs.com)

## Usage

```sh
npm install @kurone-kito/launchpad-icons-solid
```

```tsx
import { Avatars } from '@kurone-kito/launchpad-icons-solid/dist/Avatars';
import type { Component } from 'solid-js';

export const App: Component = () => (
  <div>
    <Avatars />
  </div>
);
```

[Let's find out what icons are available!](https://kurone-kito.github.io/launchpad-icons/explore)

## License

Copyright (c) Kuroné Kito (黒音キト)

This project is a dual license with the following options:

- [MIT License](https://opensource.org/licenses/MIT)
- [Creative Commons CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)

**The DEFAULT LICENSE applied is MIT**. You can use it under the CC BY 4.0
license by opting in in any way when incorporating it into your work.

The CC BY 4.0 license is a remnant from when this library was distributed
under the CC BY-NC 4.0 license and is retained for compatibility.
npm package: @kurone-kito/prettier-config
Description: My Prettier configuration for general projects
Author: kurone-kito
Latest version: 0.20.0

# `@kurone-kito/prettier-config`

My Prettier configuration for general projects.

## Usage

First, install this package and its peer dependencies:

```sh
npm install --save-dev \
  @kurone-kito/prettier-config \
  prettier
```

Then, merge the following configuration into the `package.json`:

```json
{
  "prettier": "@kurone-kito/prettier-config"
}
```

## License

MIT
npm package: @kurone-kito/react-to-html-practice
Description: Experiment: (json: object) =[React]=> (single html string)
Author: kurone-kito
Latest version: 0.2.0

# `@kurone-kito/react-to-html-practice`

[![npm version](https://badge.fury.io/js/%40kurone-kito%2Freact-to-html-practice.svg)](https://badge.fury.io/js/%40kurone-kito%2Freact-to-html-practice)

Experiment: (json: object) =_React_=> "`<html />`"

## Usage

```javascript
const { render } = require('@kurone-kito/react-to-html-practice');
const html = render({ foo: 'bar' });
console.log(html); // <DOCTYPE html><html>...</html>
```

## API

- `render(param)`

Render HTML.

- The argument can be an object or an array.
- The return value is HTML with embedded arguments and ReactJS.

_Alias: `default`_

## Develop

```sh
npm install
npm start
```

The browser starts and monitors changes in files under `src/*`.
npm package: @kurone-kito/shokurekisho-docx-cli
Description: Generate a Word docx file of Japanese-style resume (職務経歴書) from JSON Resume
Author: kurone-kito
Latest version: 0.2.0

# 📄 &lt;職歴書&gt; - shokurekisho-docx-cli

[![npm version](https://badge.fury.io/js/%40kurone-kito%2Fshokurekisho-docx-cli.svg)](https://badge.fury.io/js/%40kurone-kito%2Fshokurekisho-docx-cli)

[**JSON Resume** 形式](https://jsonresume.org)のプロフィール情報から、日本のお堅い系企業ウケしそうな様式の職務経歴書を docx ファイル形式で生成します。  
Generate a Word docx file of Japanese-style resume (職務経歴書) from JSON Resume for cli

## Requires

Node.js &gt;= v13 (**Strongly recommended**)

or

Node.js &gt;= v8.10 and &lt; v13, and a [latest `full-icu` package](https://github.com/unicode-org/full-icu-npm)

## Usage

### on Node.js &gt;= v13

```sh
npm install --global @kurone-kito/shokurekisho-docx-cli
shokurekisho build resume.json resume.docx
```

### on Node.js &gt;= v8.10 and &lt; v13

```sh
npm install --global @kurone-kito/shokurekisho-docx-cli full-icu
NODE_ICU_DATA=$(node-full-icu-path) shokurekisho build resume.json resume.docx
```

## Help

```sh
$ hokurekisho --help
Usage: shokurekisho [options] [command]

Options:
  -V, --version                   output the version number
  -h, --help                      output usage information

Commands:
  build|b <source> [destination]  Generate docx of resume from JSON.
```

### Extended JSON-Resume

標準の[JSON Resume 形式](https://jsonresume.org)に加え、拡張した形式を読み込むことができます。  
In addition to the standard JSON Resume format, the extended format can be read.

```JSON
{
  "projects": [
    {
      ...
      "env": {
        "os": ["Windows XP", "AIX"],
        "language": ["PL/I", "COBOL"],
        "platforms": ["Excel 2000"]
      }
    }
  ],
  "skills": [
    {
      ...
      "tags": "language"
    },
    {
      ...
      "tags": ["tools", "foobar"]
    }
  ]
}
```

## License

MIT
npm package: @kurone-kito/vrc-icons-tw
Description: the icons like the VRChat icons for the Tailwind CSS
Author: kurone-kito
Latest version: 0.15.0

# ![VRC Icons by Kuroné Kito](https://kurone-kito.github.io/launchpad-icons/images/banner.webp)

🚀 Unofficial VRChat like icons for [TailwindCSS](https://tailwindcss.com)

## Usage

```sh
npm install @kurone-kito/vrc-icons-tw
```

```css
@import "tailwindcss";
@import "@kurone-kito/vrc-icons-tw";
```

```html
<i class="vrc-icon-Avatars size-6"></i>
<i class="vrc-icon-Abduction"></i>
```

[Let's find out what icons are available!](https://kurone-kito.github.io/launchpad-icons/explore)

## License

Copyright (c) Kuroné Kito (黒音キト)

This project is a dual license with the following options:

- [MIT License](https://opensource.org/licenses/MIT)
- [Creative Commons CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)

**The DEFAULT LICENSE applied is MIT**. You can use it under the CC BY 4.0
license by opting in in any way when incorporating it into your work.

The CC BY 4.0 license is a remnant from when this library was distributed
under the CC BY-NC 4.0 license and is retained for compatibility.
npm package: @kuronekomichael/node-embedded-mongodb
Description: Node.js embedded mongoDb module
Author: Adam Gavish
Latest version: 0.0.2

#  [![Build Status](https://secure.travis-ci.org/agavish/node-embedded-mongodb.png?branch=master)](http://travis-ci.org/agavish/node-embedded-mongodb)

> Node.js embedded mongoDb module

This is a simple module which start/stop an already installed, existing, localhost mongod server.

This module is very useful for running mongodb as part of a Gulp/Grunt testing task.

## Getting Started

Install [mongodb](https://www.mongodb.org/downloads)

Install the module with: `npm install node-embedded-mongodb`

Then, use it:

```js
var embeddedMongoDB = require('node-embedded-mongodb');

var dbPath = '/path/to/data/db/';
var logPath = '/path/to/mongod.log';

// If you don't want the logs, set true.
embeddedMongoDB.silentMode(true);

embeddedMongoDB.start(dbPath, logPath, function(err) {

// mongodb://localhost:27017 is UP
)};

OR

embeddedMongoDB.start(null, null, function(err) {

// mongodb://localhost:27017 is UP
// created a local embedded/data/db folder and a local embedded/log file
)};

embeddedMongoDB.stop(function(err) {

// mongodb://localhost:27017 is DOWN
)};
```

## Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Gulp](http://gulpjs.com).


## License

Copyright (c) 2015 Adam Gavish  
Licensed under the MIT license.
npm package: @kurons/consts
Description: A collection of constants
Author: Kuron
Latest version: 1.0.0


# Consts

A collection of constants.

## Install

```
npm install @kurons/consts
```

## Usage

```javascript
import { TIME, from } from '@kurons/consts/time';
console.info(`year: ${TIME.SECOND} ms`); // year: 60_000 ms
console.info(`day2sec: ${from(1).days.to.seconds} s`); // day2sec: 86400 s
console.info(`hr2min: ${from(2).hours.to.minutes} m`); // hr2min: 120 m
```
npm package: @kurorobeasts/mavis-app-tracking
Description: This is a client for the Mavis tracking API. This library uses the same Event modeling as described in the [Mavis API documentation](https://docs.skymavis.com/mavis/app-tracking/guides/tracking-api#events).  ## Getting Started
Author: Trudan Studios
Latest version: 0.1.3

# Mavis App Tracking library
This is a client for the Mavis tracking API. This library uses the same Event modeling as described in the [Mavis API documentation](https://docs.skymavis.com/mavis/app-tracking/guides/tracking-api#events). 
## Getting Started

Initialise the `MavisTracking` instance
```typescript
import MavisTracking from "@kurorobeasts/mavis-app-tracking";
// This will start a session and send events to the server every 10 seconds by default.
// As long as this instance is alive, it will keep sending queued events to the server unless explicitely stopped.
const tracking = new MavisTracking(API_KEY);
```
Now you're ready to start sending events to the server. But first you need to identify the user in order to get proper Events data.

**Note:** If no `API_URL` is provided, the library will use the default Mavis tracking API URL.
### Identifying the user
```typescript
tracking.identify("user_id", "ronin_address", { key: "value" });
````
This library will try to get the platform and device information automatically and send it in the `identify` event.

### Sending events
```typescript
tracking.track("event_name", { key: "value" });
```
### Tracking screens
At the moment of writing this README, this library doesn't track screens automatically. You need to track screens manually.
```typescript
tracking.screen("screen_name", { key: "value" });
```
### Changing session
If you need to start a new session, you can reset the session and identify the user again.
```typescript
tracking.resetSession();
tracking.identify("new_user_id", "new_user_ronin_address", { key: "value"});
```
**Note:** All previous session events will be sent to the server since they're already in the queue. New queued events will be linked to the new session.
### Gracefully stopping the tracking
If you need to stop the tracking, you can call the `shutdown` method. This will stop the interval that sends events to the server; all queued events will be sent to the server.
But remember, if you need to start tracking again, you need to create a new instance of `MavisTracking`.
```typescript
await tracking.shutdown();
```

### Session duration
Heartbeats are automatically sent to track the user session. You can disable heartbeats like this:
```typescript
const tracking = new MavisTracking(API_KEY, { enableHeartbeat: false });
```
This library sends heartbeats every 30 seconds by default. If you want to change the frequency, you can send the desired frequency in milliseconds.
```typescript
const tracking = new MavisTracking(API_KEY, { heartbeatInterval: 10_000 }); // 10 seconds
```
TODO: Add more examples
## License

MIT
npm package: @kurosame/eslint-config-nuxt
Description: ESLint config for Nuxt.js
Author: kurosame
Latest version: 1.0.5

# ESLint Config Nuxt.js

## Installation

```sh
npm install @kurosame/eslint-config-nuxt --save-dev
```

## Usage

In Your ESLint Config:

```json
{
  "extends": ["@kurosame/eslint-config-nuxt"]
}
```

## License

MIT
npm package: @kurosame/eslint-config-react
Description: ESLint config for React
Author: kurosame
Latest version: 1.0.19

# ESLint Config React

## Installation

```sh
npm install @kurosame/eslint-config-react --save-dev
```

## Usage

In Your ESLint Config:

```json
{
  "extends": ["@kurosame/eslint-config-react"]
}
```

## License

MIT
npm package: @kurosame/eslint-config-vue
Description: ESLint config for Vue.js
Author: kurosame
Latest version: 1.0.13

# ESLint Config Vue.js

## Installation

```sh
npm install @kurosame/eslint-config-vue --save-dev
```

## Usage

In Your ESLint Config:

```json
{
  "extends": ["@kurosame/eslint-config-vue"]
}
```

## License

MIT
npm package: @kurosame/stylelint-config-react
Description: StyleLint config for React
Author: kurosame
Latest version: 1.0.3

# StyleLint Config React

## Installation

```sh
npm install @kurosame/stylelint-config-react --save-dev
```

## Usage

In .stylelintrc:

```json
{
  "extends": ["@kurosame/stylelint-config-react"]
}
```

## License

MIT
npm package: @kurosame/stylelint-config-vue
Description: StyleLint config for Vue.js
Author: kurosame
Latest version: 1.0.3

# StyleLint Config Vue

## Installation

```sh
npm install @kurosame/stylelint-config-vue --save-dev
```

## Usage

In .stylelintrc:

```json
{
  "extends": ["@kurosame/stylelint-config-vue"]
}
```

## License

MIT
npm package: @kurosame/tslint-config-react
Description: TSLint config for React
Author: kurosame
Latest version: 1.2.0

# TSLint Config React

## Installation

```sh
npm install @kurosame/tslint-config-react --save-dev
```

## Usage

In tslint.json:

```json
{
  "extends": ["@kurosame/tslint-config-react"]
}
```

## License

MIT
npm package: @kurosame/tslint-config-vue
Description: TSLint config for Vue.js
Author: kurosame
Latest version: 1.4.0

# TSLint Config Vue

## Installation

```sh
npm install @kurosame/tslint-config-vue --save-dev
```

## Usage

In tslint.json:

```json
{
  "extends": ["@kurosame/tslint-config-vue"]
}
```

## License

MIT
npm package: @kuroshio/koishi-plugin-genshin
Description: genshin
Latest version: 1.0.17

# koishi-plugin-genshin

#### Description
{**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**}

#### Software Architecture
Software architecture description

#### Installation

1.  xxxx
2.  xxxx
3.  xxxx

#### Instructions

1.  xxxx
2.  xxxx
3.  xxxx

#### Contribution

1.  Fork the repository
2.  Create Feat_xxx branch
3.  Commit your code
4.  Create Pull Request


#### Gitee Feature

1.  You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
2.  Gitee blog [blog.gitee.com](https://blog.gitee.com)
3.  Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
4.  The most valuable open source project [GVP](https://gitee.com/gvp)
5.  The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
6.  The most popular members  [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
npm package: @kuroshio/koishi-plugin-twitter
Description: twitter plugin for koishi 
Latest version: 1.3.2

# @kuroshio/koishi-plugin-twitter

[![npm](https://img.shields.io/npm/v/@kuroshio/koishi-plugin-twitter?style=flat-square)](https://www.npmjs.com/package/@kuroshio/koishi-plugin-twitter)

twiteer
npm package: @kuroski/v-eager
Description: A directive that emits input events despite the default keyboard on Android, GBoard, does composing by default
Author: Daniel Kuroski
Latest version: 1.0.1

# v-eager

Since the default keyboard on Android, GBoard, does composing by default, this directive will always emit the `input` event even if you are just autocompleting.

This is just a workaround, more information about this problem:
- https://github.com/vuejs/vue/issues/9299
- https://github.com/vuejs/vue/issues/9777

So let's hope this PR (https://github.com/vuejs/vue/pull/9814) will be merged sometime =/

## Project setup
```
npm i -d @kuroski/v-eager
```

```
yarn add @kuroski/v-eager
```

### Global

```
import VEager from '@kuroski/v-eager'
Vue.use(VEager)
```

### Local

```
import {eager} from '@kuroski/v-eager'
export default {
  directives: {eager}
}
```

## Usage

Just add the directive `v-eager` in the desired input:

``` vue
<template>
<v-text-field
    id="name"
    name="name"
    v-model="name"
    v-eager
    label="Nome*"
    required
></v-text-field>
</template>
```
npm package: @kuroson/common-utils
Description: Common utility functions and types
Author: Alvin Cherk
Latest version: 0.3.1

# @kuroson/common-utils

Common utility functions and types for my TypeScript/JavaScript projects.

## Installation

```bash
npm install @kuroson/common-utils
# or
pnpm add @kuroson/common-utils
# or
yarn add @kuroson/common-utils
```

## Requirements

- Node.js >= 22

## License

MIT
npm package: @kuroson/cse-discourse
Description: Discourse API wrapper for UNSW CSE courses
Author: Alvin Cherk
Latest version: 0.4.1

# @kuroson/cse-discourse

Discourse API wrapper for UNSW CSE courses.

## Installation

```bash
npm install @kuroson/cse-discourse
# or
pnpm add @kuroson/cse-discourse
# or
yarn add @kuroson/cse-discourse
```

## Requirements

- Node.js >= 22

## License

MIT
npm package: @kuroson/cse-errors
Description: Common error classes for TypeScript/Node.js applications
Author: Alvin Cherk
Latest version: 0.1.0

# @kuroson/cse-errors

Common error classes for TypeScript/Node.js applications.

## Installation

```bash
npm install @kuroson/cse-errors
# or
pnpm add @kuroson/cse-errors
# or
yarn add @kuroson/cse-errors
```

## Usage

```typescript
import { InputError, RuntimeError, SettingsError, HTTPError, parseError } from "@kuroson/cse-errors";

// Input validation errors
throw new InputError("Invalid email format");

// Runtime errors
throw new RuntimeError("Database connection failed");

// Configuration/settings errors
throw new SettingsError("Missing required environment variable");

// HTTP errors with status codes
throw new HTTPError(404, "Resource not found");
throw new HTTPError(500, "Internal server error", originalError);
```

## API

### `InputError`

Error class for input validation failures.

```typescript
new InputError(message: string, options?: ErrorOptions)
```

### `RuntimeError`

Error class for runtime failures.

```typescript
new RuntimeError(message: string, options?: ErrorOptions)
```

### `SettingsError`

Error class for configuration/settings issues.

```typescript
new SettingsError(message: string, options?: ErrorOptions)
```

### `HTTPError`

Error class for HTTP-related errors with status codes.

```typescript
new HTTPError(status: number, message: string, originalError?: any)
```

Methods:

- `getStatusCode()`: Returns the HTTP status code
- `getMessage()`: Returns the error message

Properties:

- `status`: The HTTP status code
- `message`: The error message
- `originalError`: The original error (if provided)

### `parseError`

Utility function to safely convert any error to a string.

```typescript
parseError(err: unknown): string
```

```typescript
try {
  // some operation
} catch (err) {
  console.error(parseError(err));
}
```

## Requirements

- Node.js >= 22

## License

MIT
npm package: @kuroson/cse-gitlab
Description: GitLab API wrapper for UNSW CSE courses
Author: Alvin Cherk
Latest version: 0.4.1

# @kuroson/cse-gitlab

GitLab API wrapper for UNSW CSE courses.

## Installation

```bash
npm install @kuroson/cse-gitlab
# or
pnpm add @kuroson/cse-gitlab
# or
yarn add @kuroson/cse-gitlab
```

## Requirements

- Node.js >= 22

## License

MIT
npm package: @kuroson/cse-groups
Description: Group allocation parser for UNSW CSE courses
Author: Alvin Cherk
Latest version: 0.3.2

# @kuroson/cse-groups

Group allocation parser for UNSW CSE courses.

## Installation

```bash
npm install @kuroson/cse-groups
# or
pnpm add @kuroson/cse-groups
# or
yarn add @kuroson/cse-groups
```

## Requirements

- Node.js >= 22

## License

MIT
npm package: @kuroson/cse-students
Description: Student enrolment parser for UNSW CSE courses
Author: Alvin Cherk
Latest version: 0.4.2

# @kuroson/cse-students

Student enrolment parser for UNSW CSE courses.

## Installation

```bash
npm install @kuroson/cse-students
# or
pnpm add @kuroson/cse-students
# or
yarn add @kuroson/cse-students
```

## Usage

```typescript
import { Students, cleanUpName } from "@kuroson/cse-students";
import type { StudentEnrolment, TimetableInformation } from "@kuroson/cse-students";

// Parse students from a file
const students = new Students({
  pathToFile: "./enrolments.txt",
});

// Or parse from a string
const students = new Students({
  givenInput: "zID|name|class\n1234567|Smith, John|T09A",
});

// With timetable information for class code mapping
const timetable: TimetableInformation = [
  {
    classCode: "T09",
    expandedClassCode: "T09A",
    tuteLabLocation: ["1-5", "Mon 10:00", "K17-101", "1-5", "Mon 11:00", "K17-102"],
    tutors: [{ zID: "z1234567", name: "John Smith" }],
  },
];

const students = new Students({
  pathToFile: "./enrolments.txt",
  timeTable: timetable,
});

// With optional winston logger
import { createLogger } from "winston";
const logger = createLogger();

const students = new Students({
  pathToFile: "./enrolments.txt",
  winstonLogger: logger,
});

// Get parsed students
const studentList = students.getStudents();
// Returns: StudentEnrolment[]

// Get timetable key mappings
const keys = students.getTimeTableKeys();
```

## API

### `Students`

Main class for parsing student enrolments.

#### Constructor Options

```typescript
type InputOptions = {
  timeTable?: TimetableInformation;
  winstonLogger?: Logger;
} & ({ givenInput: string; pathToFile?: never } | { pathToFile: string; givenInput?: never });
```

- `givenInput` - Raw enrolment data as a string (mutually exclusive with `pathToFile`)
- `pathToFile` - Path to enrolment file (mutually exclusive with `givenInput`)
- `timeTable` - Optional timetable information for class code mapping
- `winstonLogger` - Optional winston logger instance

#### Methods

- `getStudents()` - Returns array of parsed student enrolments
- `getTimeTableKeys()` - Returns mapping of expanded class codes to class codes

### `cleanUpName(name: string)`

Utility function to clean up student names from "Last, First" format.

```typescript
cleanUpName("Smith, John"); // Returns: "John Smith"
```

### Types

#### `StudentEnrolment`

```typescript
type StudentEnrolment = {
  zID: string;
  name: string;
  class: string;
  classCode?: string;
};
```

#### `TimetableInformation`

```typescript
type TimetableInformation = Array<{
  classCode: string;
  expandedClassCode: string;
  otherExpandedClassCode?: string;
  tuteLabLocation: [
    tuteWeeks: string,
    tuteTime: string,
    tuteLocation: string,
    labWeeks: string,
    labTime: string,
    labLocation: string,
  ];
  tutors: Array<{ zID: string; name: string }>;
}>;
```

## Input Format

The expected input format is pipe-delimited with a header row:

```
zID|name|class
1234567|Smith, John|T09A
7654321|Doe, Jane|T10B
```

## Requirements

- Node.js >= 22

## License

MIT
npm package: @kuroson/cse-types
Description: Common type definitions
Author: Alvin Cherk
Latest version: 0.3.1

# @kuroson/cse-types

Common type definitions for CSE course administration projects.

## Installation

```bash
npm install @kuroson/cse-types
# or
pnpm add @kuroson/cse-types
# or
yarn add @kuroson/cse-types
```

## Requirements

- Node.js >= 22
- TypeScript >= 4.7.0 (optional, but recommended)

## License

MIT
npm package: @kuroson/sydneydayjs
Description: A pre-configured dayjs wrapper with Sydney (Australia/Sydney) timezone as the default
Author: Alvin Cherk
Latest version: 0.2.1

# @kuroson/sydneydayjs

A pre-configured [dayjs](https://day.js.org/) wrapper with Sydney (Australia/Sydney) timezone as the default.

## Installation

```bash
npm install @kuroson/sydneydayjs
# or
pnpm add @kuroson/sydneydayjs
# or
yarn add @kuroson/sydneydayjs
```

## Usage

```typescript
import { sydneyDayjs } from "@kuroson/sydneydayjs";

// Get current time in Sydney timezone
const now = sydneyDayjs.now();
console.log(now.format("YYYY-MM-DD HH:mm:ss")); // e.g., "2024-01-15 14:30:00"

// Create a date in Sydney timezone
const date = sydneyDayjs.create("2024-06-15");
console.log(date.format("YYYY-MM-DD HH:mm:ss Z")); // "2024-06-15 00:00:00 +10:00"

// All standard dayjs methods are available
console.log(now.add(1, "day").format("dddd")); // e.g., "Tuesday"
console.log(now.startOf("month").format("YYYY-MM-DD")); // e.g., "2024-01-01"
```

## API

### `sydneyDayjs.now()`

Returns a dayjs instance representing the current time in Sydney timezone.

```typescript
const now = sydneyDayjs.now();
```

### `sydneyDayjs.create(date)`

Creates a dayjs instance from the given date input, interpreted in Sydney timezone.

```typescript
// From string
const date1 = sydneyDayjs.create("2024-06-15");

// From Date object
const date2 = sydneyDayjs.create(new Date());

// From timestamp
const date3 = sydneyDayjs.create(1718409600000);
```

## Why?

When working with dates in Australia, you often need to ensure times are correctly handled in the `Australia/Sydney` timezone (AEST/AEDT). This package pre-configures dayjs with:

- The `utc` plugin
- The `timezone` plugin
- Default timezone set to `Australia/Sydney`

This means you don't have to remember to configure timezone handling every time - just import and use.

## Requirements

- Node.js >= 22

## License

MIT
npm package: @kurpachsv/common
Description: Common libs & configs.
Author: kurpachsv
Latest version: 0.0.9

[![npm version](https://badge.fury.io/js/%40kurpachsv%2Fcommon.svg)](https://badge.fury.io/js/%40kurpachsv%2Fcommon)
[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg)](http://commitizen.github.io/cz-cli/)

# @kurpachsv/common

## How to use?

```shell script
npm install --save-dev @kurpachsv/common
```

### Prettier

```javascript
const config = require('@kurpachsv/common/prettier.config')

module.exports = {
  ...config,
}
```

### ESLint

```javascript
const config = require('@kurpachsv/common/.eslintrc')

module.exports = {
  ...config,
}
```
npm package: @kurpachsv/dnd-scrolling
Description: Simple component which allows to scroll window in dnd dragging.
Author: Sergei Kurpach
Latest version: 0.0.11

[![npm version](https://badge.fury.io/js/%40kurpachsv%2Fdnd-scrolling.svg)](https://badge.fury.io/js/%40kurpachsv%2Fdnd-scrolling)

# @kurpachsv/dnd-scrolling

Simple component which allows to scroll window in dnd dragging.

![demo](demo.gif)

## License

[![MIT license](http://img.shields.io/badge/license-MIT-brightgreen.svg)](http://opensource.org/licenses/MIT)

Copyright (c) Sergei Kurpach, 2019
npm package: @kurrawongai/shacl-ui
Description: This package publishes a collection of SHACL UI components for Vue 3. It is based on SHACL 1.0 and DASH and may include elements in the next SHACL version currently under development in the SHACL Working Group.
Author: Edmond Chuc
Latest version: 0.5.0

# SHACL UI

This package publishes a collection of SHACL UI components for Vue 3. It is based on SHACL 1.0 and DASH and may include elements in the next SHACL version currently under development in the SHACL Working Group.

## Changelog

### 0.4.0

- Add delete resource to resource manager.
- Fix duplicate key for value nodes in vue for-loop templating.

### 0.3.0, 0.3.1

- Add `ResourceShell` component.
- Add `createResourceManager` and `useResourceManagerContext` composables.
- Fix Property Groups not matching the parent width.
- Fix AutoCompleteEditor not showing the search field for very long list of terms.

### 0.2.x

- Add `Playground` component.

## Recommended IDE Setup

[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur).

## Type Support for `.vue` Imports in TS

TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) to make the TypeScript language service aware of `.vue` types.

## Customize configuration

See [Vite Configuration Reference](https://vite.dev/config/).

## Project Setup

```sh
pnpm install
```

### Compile and Hot-Reload for Development

```sh
pnpm storybook
```

### Type-Check, Compile and Minify for Production

```sh
pnpm build:lib
```

### Run Unit Tests with [Vitest](https://vitest.dev/)

```sh
pnpm test:unit
```

### Lint with [ESLint](https://eslint.org/)

```sh
pnpm lint
```

### Testing with local project

Build the library.

```sh
pnpm build:lib
pnpm pack
```

Install the library in the local project. Use an absolute path to the tgz file.

```sh
pnpm add ~/kurrawong/shacl-ui/shacl-ui/kurrawongai-shacl-ui-0.3.0.tgz
```

### Publish

```sh
pnpm build:lib
pnpm publish --access public --no-git-checks
```
npm package: @kurrawongai/vocedit
Description: This template should help get you started developing with Vue 3 in Vite.
Author: Edmond Chuc
Latest version: 0.1.0

# .

This template should help get you started developing with Vue 3 in Vite.

## Changelog

### 0.1.0

- Initial release
  - Embeddable component
  - Can open and save vocab files
  - Browse Concept Schemes, Collections and Concepts
  - Use SHACL UI form for editing resources

## Recommended IDE Setup

[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur).

## Type Support for `.vue` Imports in TS

TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) to make the TypeScript language service aware of `.vue` types.

## Customize configuration

See [Vite Configuration Reference](https://vite.dev/config/).

## Project Setup

```sh
pnpm install
```

### Compile and Hot-Reload for Development

```sh
pnpm dev
```

### Type-Check, Compile and Minify for Production

```sh
pnpm build
```

### Run Unit Tests with [Vitest](https://vitest.dev/)

```sh
pnpm test:unit
```

### Lint with [ESLint](https://eslint.org/)

```sh
pnpm lint
```

### Testing with local project

Build the library.

```sh
pnpm build:lib
pnpm pack
```

Install the library in the local project. Use an absolute path to the tgz file.

```sh
pnpm add ~/kurrawong/vocedit/kurrawongai-vocedit-0.1.0.tgz
```

### Publish

```sh
pnpm publish --access public --no-git-checks
```
npm package: @kurrent/bridge
Description: <a href="https://kurrent.io">   <picture>     <source media="(prefers-color-scheme: dark)" srcset="KurrentLogo-White.png">     <source media="(prefers-color-scheme: light)" srcset="KurrentLogo-Black.png">     <img alt="Kurrent" src="KurrentLogo-Plum.p
Author: Kurrent, Inc
Latest version: 0.1.3

<a href="https://kurrent.io">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="KurrentLogo-White.png">
    <source media="(prefers-color-scheme: light)" srcset="KurrentLogo-Black.png">
    <img alt="Kurrent" src="KurrentLogo-Plum.png" height="50%" width="50%">
  </picture>
</a>

# @kurrent/bridge

[![Test](https://github.com/EventStore/kurrentdb-bridge-client/actions/workflows/test.yml/badge.svg)](https://github.com/EventStore/EventStore-Streaming/actions/workflows/build-surge.yml)


## Overview

The library improves the performance of the [KurrentDB NodeJS client](https://github.com/EventStore/KurrentDB-Client-NodeJS) by
integrating the Rust implementation through native addons. It uses
[Neon](https://github.com/neon-bindings/neon) to create bindings and leverages
Rust's high-performance characteristics within the Node.js ecosystem.

## Contributing

Contributions are welcome! Please read the [contribution guidelines](CONTRIBUTING.md) for more information on how to get started.

## Support

Information on support can be found on our website: [Kurrent Support](https://kurrent.io/support/)

## Communities

- [Discuss](https://discuss.kurrent.io/)
- [Discord (Kurrent)](https://discord.gg/Phn9pmCw3t)
- [Discord (ddd-cqrs-es)](https://discord.com/invite/sEZGSHNNbH)

## Licensing

View [Kurrent's licensing information](https://github.com/EventStore/kurrentdb-bridge-client/blob/master/LICENSE.md)
npm package: @kurrent/bridge-linux-arm64-musl
Description: Prebuilt binary package for `@kurrent/bridge` on `linux-arm64-musl`.
Author: Kurrent, Inc
Latest version: 0.1.3

# `@kurrent/bridge-linux-arm64-musl`

Prebuilt binary package for `@kurrent/bridge` on `linux-arm64-musl`.
npm package: @kurrent/bridge-linux-x64-musl
Description: Prebuilt binary package for `@kurrent/bridge` on `linux-x64-musl`.
Author: Kurrent, Inc
Latest version: 0.1.3

# `@kurrent/bridge-linux-x64-musl`

Prebuilt binary package for `@kurrent/bridge` on `linux-x64-musl`.