open-index/open-npm huggingface dataset:
npm package: @gkucmierz/dport
Description: Deterministic local port generator based on project name
Author: gkucmierz
Latest version: 1.4.2

# 🎯 @gkucmierz/dport

> **Deterministic local port generator based on your project name.**

Tired of port collisions (`EADDRINUSE`) or trying to remember which project runs on `3000`, `8080`, or `5173`? 
**dport** replaces chaotic local development port assignments with stable, predictable, and mathematically calculated ports. 

### Why deterministic ports?
- **Zero Collisions**: Every project gets a unique, stable port based on its name.
- **PWA & Service Worker Isolation**: Using `localhost:3000` everywhere shares LocalStorage, IndexedDB, and active Service Workers between multiple unrelated projects, causing bizarre and hard-to-track bugs. Deterministic ports guarantee 100% strict origin isolation.
- **Microservice Harmony**: Your backend (`45612`), frontend (`51425`), and proxy can securely talk to each other without port mapping spreadsheets.

> 📖 **Read the full philosophy:** Dive deep into why monolithic ports are hurting your development flow in my dedicated Tech Blog article:
> [**Porty deterministyczne: Lekarstwo na piekło dewelopera**](https://tech.7u.pl/posts/deterministic-ports)

---

## 📦 Installation

```bash
npm install -g @gkucmierz/dport
```

## 🚀 Usage

### 1. Calculate Port (Auto-detect)
Run inside any Node.js project directory. It automatically reads the `name` from `package.json` and calculates your port:
```bash
dport
# or
dport calc
```

### 2. Fast Custom Calculation
Pass any string directly to generate its specific deterministic port:
```bash
dport talk-app-backend
```

### 3. Shell Autocomplete
Never type the full command again. `dport` comes with native autocomplete hook for Zsh & Bash!
```bash
# Inject the auto-complete hook into your ~/.zshrc or ~/.bashrc
dport setup
```

### 4. Open in Browser
Calculate the port and instantly launch your default browser at `http://localhost:<port>`:
```bash
dport open
dport open tech-blog
```
*No more manual copy-pasting of localhost URLs from the terminal!*

### 5. Auto-Fix your `package.json`
Scans your `scripts` block (e.g. `dev`, `serve`, `preview`) and automatically replaces common default development ports (`3000`, `8080`, `5173`, `8000`, `4000`, `4200`) with your uniquely calculated deterministic port.
```bash
dport fix
```

## 🧠 How it Works (Under the hood)
It takes the provided string, reduces it to a stable numeric hash, boundaries it carefully using modulo arithmetic against the ephemeral networking limits, and binds it safely to the `40000 - 65000` port range. 
The string `tech-blog` will *always* generate `51425` — across any machine, operating system, or environment.

---
Crafted carefully as part of the **[7u.pl Tech Ecosystem](https://tech.7u.pl)** under strict "The Vault" architectural guidelines. Engineering & Visual Excellence.
npm package: @gkucmierz/healpixjs-bigint
Description: True BigInt port of healpixjs supporting orders beyond the 32-bit (<=14) limit
Author: Grzegorz Kućmierz
Latest version: 1.0.2

# @gkucmierz/healpixjs-bigint

![npm (scoped)](https://img.shields.io/npm/v/@gkucmierz/healpixjs-bigint)
![NPM License](https://img.shields.io/npm/l/%40gkucmierz%2Fhealpixjs-bigint)

A true mathematically sound **BigInt** port of the popular HEALPix spatial mapping algorithm. 

## Motivation: Breaking the 32-bit ceiling 🚀
The original `healpixjs` engine is a fantastic library. However, under the hood it computes Z-order curves and bitwise coordinate spreads (like `xyf2pix`) using standard JavaScript bitwise operators (`<<`, `>>`, `|`, `&`). 

By specification, JavaScript forces bitwise operators onto **32-bit signed integers**. This means any `Nside` resolution that generates spatial face indices greater than `$2,147,483,647$` mathematically overflows causing the map grids to fracture or the CPU to loop infinitely.

**HEALPix Order <= 13** is the absolute limit for standard JavaScript math. 

`@gkucmierz/healpixjs-bigint` rewrites the core geometry algorithms using native `BigInt` (e.g., `1n << 20n`). This allows you to construct and query mapping grids at massive depths (virtually tested up to Order 29) without ever triggering `NaN` rendering freezes or out-of-bounds array overflows.

## Usage

```bash
npm install @gkucmierz/healpixjs-bigint
```

```javascript
// Native ESM architecture
import { Healpix, Pointing } from '@gkucmierz/healpixjs-bigint';

// Constructing an massive grid (e.g. Order 20 -> Nside 1048576)
const hp = new Healpix(1n << 20n);

const ptg = new Pointing(1.57, 0.5); // (theta, phi)

// Radius is in radians. Fact is the oversampling multiplier (e.g. 4)
const ranges = hp.queryDiscInclusive(ptg, 0.05, 4);

// ranges.r contains pure BigInt boundaries spanning massive precision
console.log(ranges.r); // BigInt64Array [158671400n, 158671408n, ...]
```

## Live Implementation Example

This library powers extreme sub-meter zoom depths mathematically perfect in realtime. You can test a massive HEALPix order calculation on the [Geo-Words Interactive 3D Map](http://geo-words.7u.pl/). Source code available at [geo-words](https://gitea.7u.pl/gkucmierz/geo-words).

## Credits 

All credit for the structural JavaScript foundation algorithms goes to the original authors of `healpixjs`. This fork modifies it exclusively for precision integer performance in WebGL/Canvas pipelines.
npm package: @gkucmierz/utils
Description: Usefull functions for solving programming tasks
Author: Grzegorz Kućmierz
Latest version: 1.30.3

# @gkucmierz/utils

![NPM Version](https://img.shields.io/npm/v/@gkucmierz/utils)
![License](https://img.shields.io/npm/l/@gkucmierz/utils)
![Downloads](https://img.shields.io/npm/dm/@gkucmierz/utils)

A collection of useful utility functions and data structures for solving algorithmic tasks, competitive programming, and everyday development.

## 📦 Installation

```bash
npm install @gkucmierz/utils
```

## 🚀 Features

This library provides a wide range of mathematical functions and data structures, including:

- **Data Structures**:
  - `SetCnt`: A set-like structure with element counting.
  - `Trie`: Efficient prefix tree implementation.
  - `Heap`: Min-heap priority queue.
  - `ListNode`: Linked list node implementation.
  - `matrixAsArray`: 2D matrix representation as a flat array.

- **Number Theory**:
  - `gcd`, `lcm`: Greatest Common Divisor and Least Common Multiple (supports BigInt).
  - `factors`: Prime factorization.
  - `phi`: Euler's totient function.
  - `mod`, `powMod`: Modular arithmetic with Python-like behavior for negative numbers.
  - `egcd`: Extended Euclidean Algorithm.
  - `tonelliShanksBI`: Modular square root algorithm.

- **Sequences & Formulas**:
  - `gpn`: Generalized Pentagonal Numbers.
  - `heronsFormula`: Triangle area calculation.
  - `squareRoot`: Integer square root using Newton's method.

- **String & Encoding**:
  - `base64`: Base64 and Base64Url encoding/decoding.
  - `copyCase`: Match case of a string to another.
  - `bijectiveNumeration`: Bijective base-k numeration system.

- **Utilities**:
  - `memoize`: Function memoization based on arguments.
  - `binarySearch`: Various binary search implementations (exact, lower bound, upper bound).
  - `range2array`, `array2range`: Convert between ranges and arrays.
  - `getType`: Precise type checking.

## 📚 Documentation

Full documentation with examples is available at:
👉 **[https://gkucmierz.github.io/utils](https://gkucmierz.github.io/utils)**

## 🔗 Links

- **NPM Package**: [https://www.npmjs.com/package/@gkucmierz/utils](https://www.npmjs.com/package/@gkucmierz/utils)
- **GitHub Repository**: [https://github.com/gkucmierz/utils](https://github.com/gkucmierz/utils)

## 📄 License

MIT
npm package: @gkzhb/crawl4ai-mcp
Description: MCP Server for crawl4ai
Author: gkzhb
Latest version: 0.2.2

# Crawl4AI Model Context Protocol Server

[![npm version](https://img.shields.io/npm/v/@gkzhb/crawl4ai-mcp)](https://www.npmjs.com/package/@gkzhb/crawl4ai-mcp)
[![GitHub stars](https://img.shields.io/github/stars/gkzhb/crawl4ai-mcp)](https://github.com/gkzhb/crawl4ai-mcp/stargazers)
[![GitHub issues](https://img.shields.io/github/issues/gkzhb/crawl4ai-mcp)](https://github.com/gkzhb/crawl4ai-mcp/issues)
[![GitHub license](https://img.shields.io/github/license/gkzhb/crawl4ai-mcp)](https://github.com/gkzhb/crawl4ai-mcp/blob/main/LICENSE)

This MCP Server helps you connect to your Crawl4AI docker API server.

Built with [gkzhb/fastmcp-template: TypeScript MCP Server Template](https://github.com/gkzhb/fastmcp-template).

## Quick Start

Prerequisites:

- Node.js 18+

To start Crawl4AI MCP server:

```bash
export CRAWL4AI_URL=http://your-server-ip:port
npx -y @gkzhb/crawl4ai-mcp
```

Notice that the command above is for Crawl4AI server v0.6.x.

For Crawl4AI server before v0.6.0, please use 0.0.x:

```bash
npx -y @gkzhb/crawl4ai-mcp@0.0.8
```

This MCP server uses Streamable HTTP. And the default Streamable HTTP URL is `http://localhost:8585/mcp`.
SSE is also supported and the SSE HTTP URL is `http://localhost:8585/sse`.

To customize MCP server, here are the shell environment variables:

|       Variable       | If Optional  | Description                                                     |
| :------------------: | :----------: | --------------------------------------------------------------- |
|    `CRAWL4AI_URL`    | **Required** | Crawl4AI docker API server URL, eg. `http://localhost:11545`    |
| `CRAWL4AI_API_TOKEN` |   Optional   | If Crawl4AI server enables authentication, you need to use this |
|    `SERVER_PORT`     |   Optional   | MCP server port, default value is `8585`                        |

This MCP also supports Browserless to crawl web page since v0.2.1

See [env.ts](./src/env.ts) for Browserless environment variables:
- `BROWSERLESS_URL`
- `BROWSERLESS_TOKEN`
- `BROWSERLESS_BLOCK_ADS`
- `BROWSERLESS_STEALTH_MODE`