open-index/open-npm huggingface dataset:
npm package: @laabroms/git-clean
Description: Interactive CLI for cleaning up Git branches
Author: Lucas Abroms
Latest version: 0.1.9

# git-clean

```
 ██████╗ ██╗████████╗       ██████╗██╗     ███████╗ █████╗ ███╗   ██╗
██╔════╝ ██║╚══██╔══╝      ██╔════╝██║     ██╔════╝██╔══██╗████╗  ██║
██║  ███╗██║   ██║   █████╗██║     ██║     █████╗  ███████║██╔██╗ ██║
██║   ██║██║   ██║   ╚════╝██║     ██║     ██╔══╝  ██╔══██║██║╚██╗██║
╚██████╔╝██║   ██║         ╚██████╗███████╗███████╗██║  ██║██║ ╚████║
 ╚═════╝ ╚═╝   ╚═╝          ╚═════╝╚══════╝╚══════╝╚═╝  ╚═╝╚═╝  ╚═══╝
```

> 🧹 Interactive CLI for cleaning up old Git branches.

[![npm version](https://img.shields.io/npm/v/@laabroms/git-clean.svg)](https://www.npmjs.com/package/@laabroms/git-clean)
[![GitHub](https://img.shields.io/github/stars/laabroms/git-clean?style=social)](https://github.com/laabroms/git-clean)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

![Demo](assets/demo.gif)

## Features

- **Interactive TUI** — Navigate with arrow keys, mark branches with spacebar
- **Smart detection** — Automatically identifies merged (against current branch + main/master), stale, and protected branches
- **Quick actions** — Mark all merged (`m`) or stale branches (`s`) with one key
- **Configurable** — Set your own stale threshold with `--stale-days`
- **Safe by default** — Protects current branch and `main`/`master`/`develop`
- **Git operations** — Fetch and pull without leaving the TUI
- **Visual status** — Color-coded branch status (current, merged, stale, protected)

## Installation


```bash
curl -fsSL https://raw.githubusercontent.com/laabroms/git-clean/main/install.sh | bash
```

### npm (global)

```bash
npm install -g @laabroms/git-clean
```

### npx (no install)

```bash
npx @laabroms/git-clean
```

## Usage

Navigate to any Git repository and run:

```bash
git-clean
```

### Options

```bash
git-clean --stale-days 14   # branches older than 14 days are "stale"
git-clean --stale-days 90   # more conservative (default: 30)
```

### Controls

| Key | Action |
|-----|--------|
| **↑/↓** | Navigate branches |
| **Space** | Mark/unmark branch for deletion |
| **d** | Delete marked branches |
| **m** | Mark all merged branches |
| **s** | Mark all stale branches |
| **c** | Clear all marks |
| **f** | Fetch from remote (`git fetch --prune`) |
| **p** | Pull from remote (`git pull --ff-only`) |
| **q** / **Esc** | Quit |

### Branch Status

- **● CURRENT** — The branch you're currently on (protected)
- **🔒 PROTECTED** — Protected branches (`main`, `master`, `develop`)
- **✓ MERGED** — Branch has been merged into current branch or main/master
- **⚠ Xd stale** — No commits in X days (yellow at threshold, red at 2×)

## Why?

After working on a project for a while, you end up with dozens of old feature branches. Cleaning them up manually is tedious. `git-clean` makes it easy:

1. See all your branches in one view
2. Identify which ones are safe to delete
3. Mark and delete in seconds

## License

MIT © [Lucas Abroms](https://github.com/laabroms)
npm package: @laag/raml
Description: TypeScript library for interfacing with RAML documents
Author: Brett Schwarz
Latest version: 1.0.3

# `@laag/raml`

This is a library to interface to [RAML](https://raml.org/) rest definition documents. If gives an interface to read and write those documents from within a Node or JS application. This interface will follow the same interface as the [@laag/openapi](https://github.com/bschwarz/laag/tree/main/packages/openapi) interface.

## Install

```
npm i @laag/raml --save
```

## Usage

### Reading an existing document

#### Source Code

```
const Raml = require('@laag/raml');
const fs = require('fs');
let data = fs.readFileSync('examples/example.raml', 'utf8');
doc = new Raml(data);

console.log(`Displaying API: ${doc.title} v${doc.version}`);
console.log('Paths defined in this API:');
for (const pathname of doc.getPathNames()) {
    console.log(pathname);
}
```

#### Output

```
Displaying API: API with Examples vnull
Paths defined in this API:
/documents
/organisation
```

### Writing a new document

#### Source Code

```
const Raml = require('@laag/raml');

//
// Create empty doc
//
const doc = new Raml();
//
// Set some general properties
//
doc.title = "My Awesome API";
doc.version = "1.0.0";
doc.description = "This is just an API to showcase laag";
doc.baseUri = 'https://somewhere.com/myapi/v1';
doc.protocols = ['http', 'https'];
doc.rootExtensions = {myannontation: 'My Value'};
//
// add a path (Note: this is just a partial path definition)
//
const path = {'get': {description: 'This fetches myresource', operationId: 'getMyresource', responses: {'200': {description: 'Success'}}}};
doc.appendPath('/myresounce', path);

console.log(doc.getDefinition('prettyjson'));

```

#### Output

```
{
  "title": "My Awesome API",
  "version": "1.0.0",
  "description": "This is just an API to showcase laag",
  "baseUri": "https://somewhere.com/myapi/v1",
  "protocols": [
    "http",
    "https"
  ],
  "(myannontation)": "My Value",
  "/myresounce": {
    "get": {
      "description": "This fetches myresource",
      "operationId": "getMyresource",
      "responses": {
        "200": {
          "description": "Success"
        }
      }
    }
  }
}
```
npm package: @laam/log
Description: This is a package to log colorize versions of text
Author: Muhammad Laam
Latest version: 1.0.1

### MY FIRST NPM PACKAGE

Install it via npm or yarn or pnpm

`npm i @laam/log`

To use it. Open your js file and import log from package

`import log from '@laam/log'`

Now use it

```js
log.success('Hello World')
log.danger('Hello Sun')
```