Commit Graph

7 Commits

Author SHA1 Message Date
611074b546 feat: implement Entity and Nameserver cards with type safety improvements
- Add EntityCard component to display entity information with handle, roles, and public IDs
- Add NameserverCard component to display nameserver details
- Integrate new cards into Generic component for proper object rendering
- Remove unused dependencies (immutability-helper, type-fest)
- Enhance type safety in LookupInput with Zod validation
- Replace console.log statements with appropriate comments
- Initialize registryDataRef with proper typed default values
- Remove unused code and debug logging from rdap.ts and useLookup hook
- Update Object.entries type definition without external dependency
2025-10-22 11:02:50 -05:00
c17f733da1 ci: implement comprehensive CI/CD and workflow automation
- Add GitHub Actions workflows for CI, release, and deployment
- Configure Renovate for automated dependency updates
- Set up Husky pre-commit hooks with lint-staged
- Add commitlint for enforcing Conventional Commits
- Configure semantic-release for automated versioning
- Add Prettier configuration for consistent formatting
- Reformat codebase with new formatting rules
2025-10-22 02:48:18 -05:00
2c1f882cd9 refactor: replace Google Fonts with FontSource packages and migrate to cn utility
- Replace Google Fonts CDN with self-hosted FontSource packages
- Add @fontsource-variable/inter for variable Inter font
- Add @fontsource/ibm-plex-mono with weight 400 for monospace font
- Create src/lib/utils.ts with shadcn's cn utility function
- Install tailwind-merge for intelligent Tailwind class merging
- Replace all clsx usages with cn utility across components
  - LookupInput.tsx: 7 replacements
  - ErrorCard.tsx: 1 replacement
  - Property.tsx: 2 replacements
- Remove Google Fonts URL import from globals.css
2025-10-22 02:22:39 -05:00
771a27da29 build: upgrade Tailwind CSS from v3 to v4
- Migrate from Tailwind CSS 3.x to 4.1.15
- Replace autoprefixer with @tailwindcss/postcss 4.1.15
- Update PostCSS configuration for Tailwind v4 compatibility
- Convert globals.scss to globals.css for CSS-first configuration
- Remove legacy tailwind.config.cjs in favor of CSS-based config
- Update all component imports to use new globals.css
- Remove old.tsx.disabled file
2025-10-22 02:11:09 -05:00
66bf588647 feat: upgrade to Next.js 15, React 19, and migrate to ESLint 9 flat config
Major framework upgrades:
- Next.js 13 → 15.5.6
- React 18.2.0 → 19.2.0
- ESLint 8 → 9 with flat config migration

Dependency updates:
- @headlessui/react, date-fns, zod, true-myth, usehooks-ts
- @typescript-eslint packages to v8
- TypeScript to v5.9.3
- Prettier to v3.6.2

Breaking changes:
- Migrate from .eslintrc.json to eslint.config.mjs
- Remove deprecated swcMinify option from next.config.mjs
- Update all React type definitions
2025-10-22 01:53:58 -05:00
5fb095a498 test: add comprehensive testing infrastructure with critical bug fixes
- Add Vitest testing framework with 88 passing tests across 4 test files
- Fix critical entity validator bug (service array index)
- Implement validator architecture with 'matched but invalid' state support
- Add strict IPv4/IPv6 validation with detailed error messages
- Add case-insensitive domain and ASN matching
- Add explicit validator priority ordering (url→json→tld→ip→domain)
- Add integration tests with real IANA registry validation
- Add AutnumCard component for AS number display
- Update dependencies: prettier 2.8.1→2.8.8

Test coverage:
- helpers.test.ts: IPv4/IPv6 CIDR matching (27 tests)
- helpers.asn.test.ts: ASN range validation (22 tests)
- rdap.test.ts: Type detection with edge cases (36 tests)
- rdap.integration.test.ts: Real IANA registry tests (3 tests)

Bug fixes:
- Entity validator now correctly uses service[1] for tags (0=email, 1=tags, 2=urls)
- IPv4 validation rejects octets >255 with specific error messages
- IPv6 validation checks for invalid hex chars and multiple ::
- Domain regex supports multi-label domains (a.b.c.d.example.net)
- Type detection priority prevents URL/JSON false matches as domains
2025-10-22 01:23:15 -05:00
09cd0bf49b build: migrate to pnpm and add vitest testing infrastructure
- Replace Yarn with pnpm as package manager
- Add Vitest with React Testing Library and happy-dom
- Configure test setup and add test scripts (test, test:ui, test:run)
- Add IPCard component and update lookup components
- Remove unused react-ogp dependency
- Add type-check script
2025-10-22 00:34:53 -05:00