open-index/open-npm huggingface dataset:
npm package: @radjs/block-sdk
Description: Umi 区块 SDK，消费端在： - @radjs/plugin-blocks 命令行 - @radjs/plugin-ui-blocks Umi UI 资产
Latest version: 2.2.4

# @radjs/block-sdk

Umi 区块 SDK，消费端在：
- @radjs/plugin-blocks 命令行
- @radjs/plugin-ui-blocks Umi UI 资产

### 发布注意
需提前生成lib目录
npm package: @radjs/plugin-ui-blocks
Description: blocks ui
Author: ycjcl868
Latest version: 2.2.9

# @radjs/plugin-ui-blocks

资产插件

![](https://raw.githubusercontent.com/ycjcl868/cdn/master/1.gif?token=ADHXG5PV7NRKRWBCBZFCBXS6GZFJC)



### 发布注意
需提前生成lib、dist目录
npm package: @radjs/plugin-ui-tasks
Description: 任务插件
Author: ycjcl868
Latest version: 2.2.2

# @radjs/plugin-ui-tasks

任务插件

![](https://user-images.githubusercontent.com/13595509/73431180-c77ab400-437a-11ea-9baa-ebd00109b1d0.png)


### 发布注意
需提前生成lib、dist目录
npm package: @radjs/preset-ui
Description: RAD UI 插件集 ```` npm install @radjs/preset-ui --save-dev ````
Latest version: 2.2.14

# @radjs/plugin-ui

RAD UI 插件集
````
npm install @radjs/preset-ui --save-dev
````



### 发布注意
* 需提前生成lib、dist目录

### 插件引用配置，config.ts -> plugins
* 临时解决方案
````
 ['react-dev-inspector/plugins/umi/react-inspector',
  '@radjs/preset-ui/lib/registerMethods.js',
  '@radjs/preset-ui/lib/UmiUIFlag.js',
  '@radjs/preset-ui/lib/commands/ui.js',
  '@radjs/preset-ui/lib/addBubble.js',
  '@radjs/preset-ui/lib/plugins/dashboard/index.js',
  '@radjs/plugin-ui-tasks',
  '@radjs/plugin-ui-blocks',
  ]
````
npm package: @radjs/ui
Description: ui 运行在 umi Service init 之前，所以需要单独加包，在 Umi 之前注册 ui 命令。（umi@3 得改下，全部通过插件 `@umijs/plugin-ui` 方式注册）
Latest version: 2.2.5

# @radjs/ui

ui 运行在 umi Service init 之前，所以需要单独加包，在 Umi 之前注册 ui 命令。（umi@3 得改下，全部通过插件 `@umijs/plugin-ui` 方式注册）


### 发布注意
* 需提前生成lib目录
npm package: @radjs/ui-builder
Description: Umi UI plugin umd builder based on webpack 5
Latest version: 0.0.8

# @radjs/ui-builder

用于 Umi UI 插件前端构建打包。

### 发布注意
* 需提前生成lib目录

## 约定

Umi UI 插件目录大致是这样，约定 `ui/index.(tsx|jsx)` 作为 UI 插件入口：

```bash
- umi-plugin-ui-bar
  - dist # ui 插件产物
    - index.umd.js
  - lib # 插件产物
    -index.js
  - src # 插件目录
    - index.ts
  - ui # ui 目录
    - index.tsx
  - package.json
  - .fatherrc.ts # father-build 构建 src 下 cjs
  - tsconfig.json
```

## 使用

安装

```bash
$ yarn add @radjs/ui-builder -D
```

在插件根目录 `package.json`，添加 `ui-build`：

```json
{
  "name": "umi-plugin-ui-bar",
  "scripts": {
    "ui:build": "ui-build"
  }
}
```

### 多 UI 插件

如果一插件里包括多个 ui umd 插件包，可以在根目录下配置 `ui.config.js`：

```js
module.exports = {
  entry: {
    bar: 'ui/bar.tsx',
    foo: 'ui/foo.tsx',
  },
  // less theme vars
  theme: {

  },
}
```

打包后会有以下产物：

```bash
- dist
  - bar.umd.js
  - foo.umd.js
```

### 开发模式

工具提供开发模式，只需在 `ui-build` 后加上 `-w` 或 `--watch`，即启动 watch 模式，改动相关文件即重构建：

```bash
$ npx ui-build
🎉 ui build success

$ npx ui-build -w
🌈 [watch] ui build success
```
npm package: @radjs/ui-types
Description: Type definitions for umi ui.
Latest version: 2.2.2

# umi ui types

Type definitions for umi ui.

### 发布注意
* 需提前生成lib目录

[![NPM version](https://img.shields.io/npm/v/@umijs/types.svg?style=flat)](https://npmjs.org/package/@umijs/types) [![Build Status](https://img.shields.io/travis/umijs/@umijs/types.svg?style=flat)](https://travis-ci.org/umijs/@umijs/types) [![NPM downloads](http://img.shields.io/npm/dm/@umijs/types.svg?style=flat)](https://npmjs.org/package/@umijs/types)

## Why

## Installation

```bash
$ yarn add @umijs/types
```

## Usage

```tsx
import { IApi } from 'umi';

export default function(api: IApi) {
  api.addPanel({
    title: "org.umi.ui.blocks.content.title",
    path: "/blocks",
    icon: <Icon />,
    component: () => (
      <div>Hello</div>
    )
  });
}
```

![](https://raw.githubusercontent.com/ycjcl868/cdn/master/20200202085639.png?token=ADHXG5MPXFUXADBIJWVITE26GYPIO)

## LICENSE

MIT
npm package: @radkode/neo
Description: Modern CLI toolkit with intelligent git workflows and configuration management
Author: Jacek Radko
Latest version: 1.1.2

<div align="center">

# Neo CLI

**An opinionated CLI that wraps common commands to smooth out paper cuts and speed up your workflow.**

[![npm version](https://img.shields.io/npm/v/@radkode/neo.svg)](https://www.npmjs.com/package/@radkode/neo)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
[![TypeScript](https://img.shields.io/badge/TypeScript-Ready-blue.svg)](https://www.typescriptlang.org/)
[![CI](https://github.com/radkode/neo/workflows/CI/badge.svg)](https://github.com/radkode/neo/actions)

</div>

---

## Why Neo?

Daily CLI workflows have friction. Neo wraps familiar commands with sensible defaults and guardrails:

| Friction | Neo's Solution |
|----------|----------------|
| Accidentally pushing to `main` | Interactive confirmation before main branch pushes |
| Forgetting to pull before pushing | `neo git push` pulls first, then pushes |
| Typing `git stash && git pull && git stash pop` | `neo git pull` handles it automatically |
| Managing scattered config files | Unified `neo config` with secure secrets storage |

Neo doesn't replace your tools—it wraps them with opinions that prevent mistakes and save keystrokes.

## Install

```bash
npm install -g @radkode/neo
# or
pnpm add -g @radkode/neo
```

## Quick Start

```bash
neo --help          # See all commands
neo git push        # Smart push with main branch protection
neo git pull        # Auto-stash, pull, pop
neo config list     # View your configuration
```

## Commands

### `neo git push`

Pulls before pushing. Prompts for confirmation on `main`.

```bash
neo git push              # Safe push (confirms on main)
neo git push --force      # Force push
neo git push --tags       # Include tags
```

### `neo git pull`

Stashes uncommitted changes, pulls, and restores your work.

```bash
neo git pull              # Auto-stash and pull
neo git pull --rebase     # Pull with rebase
```

### `neo git stash`

Simplified stash management.

```bash
neo git stash             # Stash changes
neo git stash pop         # Pop latest stash
neo git stash list        # List stashes
```

### `neo config`

Key-value configuration with secure secrets storage.

```bash
neo config set key value  # Set a value
neo config get key        # Get a value
neo config list           # List all values
```

### `neo update`

Self-update with your detected package manager.

```bash
neo update                # Update to latest
neo update --check-only   # Check for updates
```

## Global Options

```
-v, --verbose     Verbose output
--no-color        Disable colors
--no-banner       Hide banner
-h, --help        Show help
-V, --version     Show version
```

## Development

```bash
git clone https://github.com/radkode/neo.git
cd neo
pnpm install
pnpm run build
pnpm test

# Local testing
pnpm run link-local
neo --help
pnpm run unlink-local
```

See [CONTRIBUTING.md](CONTRIBUTING.md) for more details.

## License

[MIT](LICENSE) © Jacek Radko
npm package: @radlang/ast
Description: Type definitions for the Radiance AST format
Author: Iain Shorter
Latest version: 0.1.2

# @radlang/ast
This repository contains the standardised format for the Radiance (radlang) Abstract Syntax Tree (AST).

It is published as a type package on npm

```
npm i --save-dev @radlang/ast
```
npm package: @radlang/parser
Description: The parser for the Radiance language
Author: Iain Shorter
Latest version: 0.1.0

# Radiance Parser

A parser for the Radiance programming language. Transforms a string into it's equivilent abstract syntax tree (AST).

Composed of 2 key parts: the scanner and the parser. The scanner breaks the string into easily consumable tokens, and the parser interprets those tokens to produce the AST. 

Both parts are publically exposed to be utilised as required. Although this library is primarily intended to be used by the compiler.
npm package: @radmen/array-utils
Description: Set of simple callback functions for daily work with arrays
Author: Radoslaw Mejer
Latest version: 1.0.2

# array-utils.js
This package provides some simple callbacks for native Array methods (eg. `filter`, `reduce`) which I use quite often.

# List of functions

## excludeEmpty()
Removes from array falsey values.

```js
import {excludeEmpty} from '@radmen/array-utils';

const values = [0, 1, '', null];
values.filter(excludeEmpty()); // [1]
```

## replaceWith(predicate, replaceWithData)
Replaces entries from array, which match a predicate with a new value

```js
import {replaceWith} from '@radmen/array-utils';

const values = ['foo', 'bar'];
values.map(replaceWith(item => item === 'foo', 'bar')); // ['bar', 'bar'];
```

Second argument may be a callback which will provide data for replacement:

```js
values.map(replaceWith(filterByValue('foo'), item => `${item}Bar`)); // ['fooBar', 'bar'];
```

## extendWith(predicate, extendWithData)
Extends object with a given object

```js
import {extendWith} from '@radmen/array-utils'

const values = [
  {name: 'foo'},
  {name: 'bar'},
];

values.map(extendWith(item => item.name === 'foo', { active: true }); // [{name: 'foo', active: true}, {name: 'bar'}];
```

## pushToBottom(predicate)
Moves items matching predicate to end of an array.

```js
import {pushToBottom} from '@radmen/array-utils';

const values = ['foo', 'bar', 'baz'];
values.sort(pushToBottom(item => item === 'foo')); // ['bar', 'baz', 'foo'];
```

## pushToTop(predicate)
Move item matching predicate to beginning of an array

```js
import {pushToTop} from '@radmen/array-utils';

const values = ['foo', 'bar', 'baz'];
values.sort(pushToTop(item => item === 'baz')); // ['baz', 'foo', 'bar'];
```

## filterByValue(value[, secondValue[, ...]])
Filters array values by given value.

```js
import {filterByValue} from '@radmen/array-utils';

const values = ['foo', 'bar', 'baz'];
values.filter(filterByValue('foo')); // ['foo'];
```

Function accepts more then one value:

```js
values.filter(filterByValue('foo', 'bar')); // ['foo', 'bar'];
```

## filterByKeyValue(key, value[, secondValue[, ...]])
Filters array of objects by given attribute value.

```js
import {filterByKeyValue} from '@radmen/array-utils';

const values = [{name: 'foo'}, {name: 'bar'}, {name: 'baz'}];
values.filter(filterByKeyValue('name', 'bar')); // [{name: 'bar'}];
```

Function accepts more then one value:

```js
values.filter(filterByKeyValue('name', 'bar', 'foo')); // [{name: 'foo'}, {name: 'bar'}];
```

## collapse()
Collapses a collection of arrays into a flat collection.

```js
import {collapse} from '@radmen/array-utils';

const values = [[1, 2], [3, 4], [5]];
values.reduce(collapse()); // [1, 2, 3, 4, 5];
```
npm package: @radmen/git-task
Description: Silly GIT-based local todo list
Author: Radoslaw Mejer
Latest version: 0.1.0

# git-task
[![asciicast](https://asciinema.org/a/130906.png)](https://asciinema.org/a/130906)

It's quite common for me to plan next commits. I've been looking for some suitable solution which could help me manage the things I want to do.

But not a todo app. Something that is integrated with git. First I've tried to use mashup of `git config` and bash prompt. Later I've found about [adding empty TODO commits](https://coderwall.com/p/r2g2rq/keep-todos-in-git). I've tried using [twig](https://github.com/rondevera/twig). Yet none of those solutions suite my needs.

So I've created my own.

# Wait, another todo manager?

Well, yes and no. Yes, it stores a list of todos. No, they're not *just* todos. Those are my **future commits**.  
`git-task` allows to define such commits, and later use them during actual commit.

[![asciicast](https://asciinema.org/a/130907.png)](https://asciinema.org/a/130907)

Idea is simple. Define future commits (aka tasks), pick one and start working. When finished type `git commit`.  
`git-task` will generate commit message for you - simply pick one of tasks, uncomment it and save the message. Task will be automatically marked as finished.

**Protip**: I try to name my commits using [imperative mood](https://chris.beams.io/posts/git-commit/#imperative). It's also quite useful for defining a task so it's a win-win :)

# How does it work?

It's really silly project so its mechanics are simple. `git-task` stores a json file inside `.git` directory. 

This way it's "bound" with the repository and will not "leak" to the server (this is only list of my future step, not a todo for entire team).  
This file does not interfere with git so it won't report any problems (or changes).

For advanced usage (preparing commit message; automatic task finishing) it's required to install git hooks in local repository.

# Requirements

* node >= 7.10
* npm

# Installation

```
@TODO
```

# Available commands

## `add <task>`

Adds new task to a current branch.

It's a default command so `add` keyword may be omitted.

```
git task Some important stuff
```

## `list` / `l`

Lists tasks for current branch

```
git task l
```

## `finish <id>` / `f <id>`

Marks selected task as *finished*.  
This can be undone with `-u` flag.

```
git task f 1
git task f -u 2
```

## `prune`

Remove all finished tasks for current branch.

```
git task prune
```

## `delete <id>`

Remove selected task.

```
git task delete 1
```

## `hooks`

Try to install git hooks to local repository.

This step is optional, however highly encouraged. Installed hooks will prepare commit message and automatically marked task as finished once it's commited.

```
git task hooks
```

For various reasons this command may fail. If so, hooks need to be installed manually.

# Software provided *as is*

This "software" is for my private use. For my own reasons I decided to skip writing test suite.

This means that you're using it on your own risk :)
npm package: @radmen/masked-output
Description: Because I hate masked passwords
Author: Radoslaw Mejer
Latest version: 1.0.1

# masked-output
Because I hate masked passwords

# why ?

Some applications require to input only selected characters from password.  

I find this cumbersome. Specially for hard passwords.

I hate it.

That's why I created this simple script - it accepts password and list of characters from password.  
As an output it will display the requested fields from password.

# installation

```
npm i -g @radmen/masked-output
```
npm package: @radmen/timew-aggro
Description: Simple `timew summary` aggregation helper
Latest version: 2.0.0

# @radmen/timew-aggro

I've started to use [Time Warrior](https://taskwarrior.org/docs/timewarrior/index.html) to track the time I spend on tasks.

Quite often I `stop` them and `continue` later. The default `taskw summary` command lists all of entries, event if they were continuations of previous ones.

This utility is responsible for merging those tasks into single one and displaying aggregated time.

# installation

```
yarn global add @radmen/timew-aggro
ln -s $(which timew-aggro) ~/.timewarrior/extensions/aggro
```

# usage

```bash
timew aggro
```

Currently, `timew-aggro` aggregates entries only from current day.

# use it on you own risk

This package is provided _as is_.