Files
Beszel/DOMAIN_INTEGRATION_PLAN.md
T

57 lines
1.4 KiB
Markdown

# Domain Locker + Beszel Integration Plan
## Overview
Integrate Domain Locker's domain expiry monitoring as a third dashboard section in Beszel:
1. Device Monitoring (Systems)
2. Website Monitoring (Monitors)
3. Domain Monitoring (Domains)
## Features to Port
- WHOIS lookup (registrar, dates, status)
- SSL certificate monitoring
- DNS records (NS, MX, TXT)
- IP addresses (IPv4/IPv6)
- Host info (location, ISP)
- Domain valuation
- Tags
- Change history
- Auto-recognition when adding website monitors
## Implementation Steps
### 1. Backend (Go)
- Domain entity types
- WHOIS service with multiple fallback methods
- Domain collections (domains, domain_history)
- Domain scheduler for expiry checks
- Domain API handlers
### 2. Frontend (React/TypeScript)
- Domain API client
- Domain table component
- Domain dialog (add/edit with WHOIS auto-fill)
- Dashboard integration (third section)
- Link to website monitors
### 3. Integration
- Optional domain tracking when creating website monitors
- Registrar recognition fixes
- Favicon fetching
## File Structure
```
beszel/internal/
├── entities/domain/domain.go
├── hub/domains/
│ ├── whois/
│ │ └── lookup.go
│ ├── scheduler.go
│ └── api.go
└── site/src/
├── lib/domains.ts
└── components/
└── domains-table/
├── domains-table.tsx
└── domain-dialog.tsx
```