Add license key gate, migrate marketing site to separate repo
- install.sh: prompt for license key as first step, validate against makeyourown.website/api/validate before any system changes - setup.sh: secondary key check (format-only if .license-key exists, server validation if missing) - Remove website/ directory — marketing site, keyserver, and deploy scripts migrated to the websites repo (git.constantprojects.xyz/ tankadmin/websites.git) for independent deployment - Update CLAUDE.md, guide.md, .gitignore to reflect migration Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
24
CLAUDE.md
24
CLAUDE.md
@@ -95,6 +95,30 @@ WordPress depends on db with `condition: service_healthy`.
|
||||
- nginx entrypoint: On SSL failure, serves HTTP placeholder explaining DNS isn't ready. User retries with `docker compose restart nginx`.
|
||||
- install.sh: Uses `sg docker` for immediate Docker group activation without logout/login.
|
||||
|
||||
## Marketing Site & License Keys (separate repo)
|
||||
|
||||
The marketing site (makeyourown.website) and license key validation server live in a **separate repository**: `https://git.constantprojects.xyz/tankadmin/websites.git` (local: `~/claude/projects/websites`). This is business infrastructure that runs on its own VPS, independent of any WebsiteBox test/product deployments.
|
||||
|
||||
### License key validation (client-side)
|
||||
- `install.sh` prompts for a license key as the very first step (before any system changes)
|
||||
- `setup.sh` has a secondary check (format-only if `.license-key` file exists, server validation if missing)
|
||||
- **Endpoint:** `POST https://makeyourown.website/api/validate` with body `key=WBOX-XXXX-XXXX-XXXX-XXXX`
|
||||
- **Key format:** `WBOX-XXXX-XXXX-XXXX-XXXX` (uppercase alphanumeric, no ambiguous chars 0/O/1/I/L)
|
||||
- **Behavior:** Burn-on-use — keys are consumed on first activation
|
||||
- **Storage:** `.license-key` file in project root (gitignored, chmod 600)
|
||||
|
||||
### What lives where
|
||||
| Concern | Location |
|
||||
|---------|----------|
|
||||
| Key check in install flow | This repo: `install.sh`, `setup.sh` |
|
||||
| Keyserver, key generation, marketing site | `websites` repo: `services/keyserver/`, `scripts/generate-keys.sh`, `sites/makeyourown.website/` |
|
||||
| Key storage (keys.txt) | `websites` VPS: `services/keyserver/keys.txt` |
|
||||
|
||||
### Business rules
|
||||
- WebsiteBox is **not free** and **not "open source"** — code is auditable, buyers can read every line before purchasing
|
||||
- Do not say "free" or "open source" in marketing content
|
||||
- Pricing tiers: Standard $49 one-time, Lifetime Updates $149 one-time, Managed $25/month (all placeholder amounts)
|
||||
|
||||
## Non-Goals (v1)
|
||||
|
||||
Payment processing, multi-site WordPress, automatic VPS provisioning, built-in CDN, email server (SMTP relay config only).
|
||||
|
||||
Reference in New Issue
Block a user