npm package: @fyipedia/blefyi
Description: TypeScript API client for BLEFYI -- Bluetooth Low Energy chips, profiles, beacons, versions, and manufacturers. Zero dependencies.
Author: FYIPedia
Latest version: 0.1.0

# blefyi

[![npm](https://img.shields.io/npm/v/blefyi)](https://www.npmjs.com/package/blefyi)
[![TypeScript](https://img.shields.io/badge/TypeScript-5.7-blue)](https://www.typescriptlang.org/)
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
[![Zero Dependencies](https://img.shields.io/badge/dependencies-0-brightgreen)](https://www.npmjs.com/package/blefyi)

TypeScript API client for [BLEFYI](https://blefyi.com) -- the comprehensive Bluetooth Low Energy reference covering BLE chips (nRF52, ESP32, CC2640), GATT profiles, beacon protocols (iBeacon, Eddystone, AltBeacon), BLE versions from 4.0 to 5.4, and manufacturers. Zero dependencies, uses native `fetch`.

> **Explore BLE at [blefyi.com](https://blefyi.com)** -- [Chips](https://blefyi.com/chips/) | [Profiles](https://blefyi.com/profiles/) | [Glossary](https://blefyi.com/glossary/) | [API Docs](https://blefyi.com/developers/)

## Install

```bash
npm install blefyi
```

Works in Node.js, Deno, Bun, and browsers (ESM).

## Quick Start

```typescript
import { BLEFYI } from "blefyi";

const api = new BLEFYI();

// Search BLE chips, profiles, beacons
const results = await api.search("nrf52840");

// Get BLE chip detail
const nrf52 = await api.chip("nrf52840");
console.log(nrf52.manufacturer);  // "Nordic Semiconductor"
console.log(nrf52.ble_version);   // "5.0"

// Get beacon protocol detail
const ibeacon = await api.beacon("ibeacon");

// Compare two BLE chips
const comparison = await api.compare("nrf52840", "esp32-c3");
```

## API Methods

| Method | Description |
|--------|-------------|
| `search(query)` | Search chips, profiles, beacons, glossary |
| `glossaryTerm(slug)` | Get glossary term definition |
| `chip(slug)` | BLE chip detail |
| `profile(slug)` | GATT profile detail |
| `version(slug)` | BLE version detail |
| `beacon(slug)` | Beacon protocol detail |
| `usecase(slug)` | Use case detail |
| `manufacturer(slug)` | Manufacturer detail |
| `compare(slugA, slugB)` | Compare two BLE chips |
| `random()` | Random BLE chip |
| `openapi()` | OpenAPI 3.1.0 specification |

## TypeScript Types

```typescript
import type {
  SearchResult, ChipDetail, ProfileDetail, VersionDetail,
  BeaconDetail, UsecaseDetail, ManufacturerDetail, GlossaryTerm, CompareResult,
} from "blefyi";
```

## Also Available

| Language | Package |
|----------|---------|
| Python | [blefyi on PyPI](https://pypi.org/project/blefyi/) |
| TypeScript | **This package** |

## Code FYI Family

Part of the [FYIPedia](https://fyipedia.com) open-source developer tools ecosystem -- automatic identification and data capture technologies.

| Package | npm | Description |
|---------|-----|-------------|
| barcodefyi | [npm](https://www.npmjs.com/package/barcodefyi) | Barcode symbologies, standards -- [barcodefyi.com](https://barcodefyi.com/) |
| qrcodefyi | [npm](https://www.npmjs.com/package/qrcodefyi) | QR code types, versions, encoding -- [qrcodefyi.com](https://qrcodefyi.com/) |
| nfcfyi | [npm](https://www.npmjs.com/package/nfcfyi) | NFC chips, NDEF, standards -- [nfcfyi.com](https://nfcfyi.com/) |
| **blefyi** | [npm](https://www.npmjs.com/package/blefyi) | **BLE profiles, beacons, chips -- [blefyi.com](https://blefyi.com/)** |
| rfidfyi | [npm](https://www.npmjs.com/package/rfidfyi) | RFID tags, readers, frequencies -- [rfidfyi.com](https://rfidfyi.com/) |
| smartcardfyi | [npm](https://www.npmjs.com/package/smartcardfyi) | Smart cards, EMV, platforms -- [smartcardfyi.com](https://smartcardfyi.com/) |

## License

MIT