Skip to content

Latest commit

 

History

History
27 lines (17 loc) · 1.48 KB

File metadata and controls

27 lines (17 loc) · 1.48 KB

Claude Code Guidelines

About

ts-vat is a TypeScript VAT calculator for EU countries. It calculates VAT rates (standard, reduced, super-reduced) for all EU member states, validates VAT numbers through the VIES service, handles special VAT zones and exceptions (e.g., Heligoland), and supports both B2B and B2C transaction scenarios. The main entry point is the VatCalculator class, which provides calculate, calculateNet, isValidVatNumber, and getVatDetails methods.

Linting

  • Use pickier for linting — never use eslint directly
  • Run bunx --bun pickier . to lint, bunx --bun pickier . --fix to auto-fix
  • When fixing unused variable warnings, prefer // eslint-disable-next-line comments over prefixing with _

Frontend

  • Use stx for templating — never write vanilla JS (var, document.*, window.*) in stx templates
  • Use crosswind as the default CSS framework which enables standard Tailwind-like utility classes
  • stx <script> tags should only contain stx-compatible code (signals, composables, directives)

Dependencies

  • buddy-bot handles dependency updates — not renovatebot
  • better-dx provides shared dev tooling as peer dependencies — do not install its peers (e.g., typescript, pickier, bun-plugin-dtsx) separately if better-dx is already in package.json
  • If better-dx is in package.json, ensure bunfig.toml includes linker = "hoisted"

Commits

  • Use conventional commit messages (e.g., fix:, feat:, chore:)