Skip to content

Latest commit

 

History

History
82 lines (62 loc) · 3.73 KB

File metadata and controls

82 lines (62 loc) · 3.73 KB

Changelog

3.2.1

Fixed

  • domain and domainLive endpoints broken by schema drift — added Followers, Employees, and ProductCount fields
  • API errors returned as HTTP 200 (e.g. invalid API key) now throw clear messages instead of confusing Zod validation errors
  • CLI flag typos (e.g. --onlyLiveTechnologes) silently ignored — now rejected with an error
  • --version flag anywhere in argv hijacked the command (e.g. builtwith domain x.com --version printed version instead of running the command)
  • Single-dash args like -x accepted as the primary value — now correctly rejected as missing argument
  • --table output blank for arrays of empty objects
  • Per-command --help missing --api-key and --table global flags

3.2.0

Added

  • Monorepo split — MCP server is now a separate npm package (builtwith-mcp), installable standalone via npx -y builtwith-mcp
  • CLI --table flag — human-readable pretty-print output instead of raw JSON
  • Strict response schemas — all response schemas use z.strictObject() to catch upstream API drift
  • Date range validationfirstDetectedRange and lastDetectedRange params validated with regex
  • Homebrew distributionbrew install zcaceres/tap/builtwith
  • Pre-commit hook — lint, build, and test run automatically on every commit
  • VitePress docs site — deployed to builtwith.zach.dev with TypeDoc API reference
  • Rate limit documentation — per-second throttle and credit-based quota guidance
  • Biome linter for consistent code formatting
  • Comprehensive test coverage for non-JSON response formats (XML, CSV, TSV, TXT)
  • Network error and HTTP status code tests

Changed

  • builtwith-api now depends only on zod (removed @modelcontextprotocol/sdk from runtime deps)
  • Library users no longer pull MCP SDK as a transitive dependency

3.1.0

Added

  • CLI (builtwith) — all 13 API methods accessible from the command line
  • MCP server (builtwith-mcp) — all 13 methods exposed as tools for LLM clients
  • Shared command registry (src/commands.ts) used by both CLI and MCP
  • --api-key flag for CLI and MCP (alternative to BUILTWITH_API_KEY env var)
  • --version flag for CLI
  • Human-readable error messages (Zod validation errors are now formatted cleanly)
  • Cross-compiled standalone binaries via GitHub Actions release workflow
  • Tests for CLI, MCP server, command registry, and error formatting

3.0.0

Breaking Changes

  • ESM-only — dropped CommonJS/require() support
  • Named export — use import { createClient } from 'builtwith-api' instead of default export
  • Zod validation — invalid inputs throw ZodError; invalid API responses throw ZodError instead of silently returning unvalidated data
  • Typed responses — all 13 endpoints return fully typed response objects (when using JSON format), matching the BuiltWith API documentation
  • Node.js >= 18 — uses native fetch, no more node-fetch dependency

Added

  • Zod 4 schemas for all request parameters and response shapes
  • Full type safety on response data (e.g. DomainResponse.Results[0].Meta.CompanyName is string)
  • Schema validation tests for all 13 response types
  • product endpoint support
  • redirects endpoint support
  • recommendations endpoint support
  • tags endpoint support
  • domainLive endpoint support

Removed

  • lodash dependency
  • node-fetch dependency
  • dotenv dependency
  • CommonJS build output

2.x

  • JavaScript API wrapper with support for domain, lists, relationships, keywords, trends, companyToUrl, trust, and free endpoints
  • CommonJS module format
  • Multi-domain lookup support (up to 16 domains)
  • Multiple response format support (JSON, XML, CSV, TSV, TXT)