Rene Fichtmueller d1bde66e39 feat: deterministic equivalence matcher + full wavelength/connector enrichment
Replace confidence-based matcher with deterministic 6-field exact match:
- form_factor (exact), speed_gbps (±0.1G), fiber_type (exact),
  reach (±10%), wavelength_tx (±5nm), connector_type (exact)
- Complete products → confidence=1.0, never creates pending records
- Incomplete products → enhanced confidence ≥0.85, still auto_approved
- PENDING CREATED: 0 (by design, permanent)

Migrations:
- sql/113: Connector type inference from IEEE lookup + form-factor rules
  (970→479 missing connector for FX products)
- sql/114: Extend IEEE lookup with 400G/800G/1.6T OSFP/QSFP-DD standards,
  wavelength fallback (SMF→1310nm, MMF→850nm), clear pending queue to 0

Enrichment results (before→after):
- FX fully complete: 50 → 555 / 1,089 (+505)
- Total fully complete: ~3,600 → 15,431 / 18,133 (+11,800)
- FX coverage: 54.7% → 55.8% (608/1,089 matched)
- Deterministic matches: 0 → 44,596 (confidence=1.0)
- Wavelength-mismatched records rejected: 521
- Pending queue: 42 → 0 (permanent)

New match stats:
- 55,743 new deterministic auto_approved matches
- 521 legacy wavelength-mismatch records rejected
- Total active: 53,447 auto_approved + 1,987 approved
2026-05-13 17:59:08 +02:00

transceiver-db

🚀 Live Demo — Try it in your browser, no installation needed.

npm version License: MIT TypeScript Zero Dependencies

Open-source optical transceiver database for network engineers, tooling developers, and infrastructure automation.

159 products. 42 IEEE/MSA standards. 16 form factors. 9 speed tiers.

From 1G SFP to 800G OSFP. Zero dependencies.

Why?

🚀 Live Demo — Try it in your browser, no installation needed.

No open-source transceiver database existed. Network engineers, inventory systems, and automation tools had to maintain their own fragmented lists. Now there is a single, typed, searchable source of truth.

Install

npm install transceiver-db

Quick Start

import { searchTransceivers, getBySpeed, getStandard } from 'transceiver-db';

// Search by any keyword
const results = searchTransceivers('100G LR');
console.log(results.map(t => `${t.standard} (${t.formFactor}) - ${t.reachLabel}`));

// Filter by speed
const optics400g = getBySpeed('400G');
console.log(`Found ${optics400g.length} 400G transceivers`);

// Look up an IEEE standard
const standard = getStandard('400GBASE-DR4');
console.log(standard?.notes); // "4x100G parallel SMF. THE key 400G data center optic."

API Reference

Transceivers

import {
  transceivers,          // All 159 transceivers (readonly array)
  searchTransceivers,    // Full-text search across all fields
  getByFormFactor,       // Filter by form factor ("SFP+", "QSFP-DD", etc.)
  getBySpeed,            // Filter by speed tier ("10G", "100G", "400G", etc.)
  getByReach,            // Filter by minimum reach in meters
  getByCategory,         // Filter by category ("DataCenter", "Coherent", etc.)
  getById,               // Get single transceiver by ID
} from 'transceiver-db';

Standards

import {
  standards,             // All 42 IEEE/MSA standards
  getStandard,           // Find by exact or partial name
  searchStandards,       // Search by keyword
} from 'transceiver-db';

Competitors

import {
  competitors,           // 12 major vendors (Cisco, Juniper, Arista, etc.)
  getCompetitor,         // Find by name
} from 'transceiver-db';

Breakout Cables

import { breakouts } from 'transceiver-db'; // 11 breakout configurations

Types

import type {
  Transceiver,
  Standard,
  Competitor,
  Breakout,
  FormFactor,      // "SFP" | "SFP+" | "QSFP-DD" | "OSFP" | ...
  FiberType,       // "MMF" | "SMF" | "Copper" | "N/A"
  ConnectorType,   // "LC" | "MPO-12" | "MPO-16" | "RJ45" | ...
  ProductCategory, // "DataCenter" | "Metro" | "Coherent" | "DAC" | ...
  PriceTier,       // "Budget" | "Standard" | "Premium"
  MarketStatus,    // "Mainstream" | "Growth" | "Emerging" | "Legacy"
} from 'transceiver-db';

Coverage

Speed Products Form Factors
1G 9 GBIC, SFP
10G 13 XFP, SFP+
25G 6 SFP28
40G 4 QSFP+
50G 2 SFP56
100G 20 QSFP28, CFP, CFP2, CFP4, CXP
200G 4 QSFP56
400G 18 QSFP-DD, OSFP, CFP2-DCO
800G 5 OSFP
DAC 6 SFP+ to OSFP
AOC 3 SFP+ to QSFP-DD

Each transceiver includes: standard, form factor, speed, reach, fiber type, wavelengths, connector, power consumption, temperature range, vendor compatibility patterns, use case description, and tags.

Data Sources

All data comes from publicly available sources:

  • IEEE 802.3 standards (802.3z, 802.3ae, 802.3ba, 802.3bs, 802.3cd, 802.3cu, 802.3cm, 802.3df, etc.)
  • OIF standards (400ZR, 800ZR)
  • Multi-Source Agreements (100G CWDM4 MSA, 100G PSM4 MSA, 100G Lambda MSA, OpenZR+)
  • Vendor datasheets and public documentation

Flexoptix Catalog Import

Private TIP deployments can import the normalized Flexoptix shop catalog produced by Magatama/Pulso:

npm run flexoptix:catalog:import -- --dry-run
TIP_DB_PASS=... npm run flexoptix:catalog:import

See docs/FLEXOPTIX_CATALOG_IMPORT.md for the full producer/import workflow and safety rules.

Contributing

Contributions welcome. To add a new transceiver:

  1. Fork the repo
  2. Add the entry to src/database.ts following the existing format
  3. Include all required fields from the Transceiver type
  4. Add relevant vendor compatibility patterns
  5. Submit a PR with a description of what you added

To add a new standard, update src/standards.ts.

License

MIT

Description
Transceiver Intelligence Platform - npm package + data
Readme MIT 72 MiB
Languages
TypeScript 82.5%
HTML 13.1%
Python 1.5%
PLpgSQL 1.1%
JavaScript 1%
Other 0.8%