4 Commits
Author SHA1 Message Date
NixReaper 7b66c6c7ff feat: add logo SVG, favicon, wire logo into header and footer
- public/assets/logo.svg: SVG recreation of the NixPanel N-mark
  (server-rack bars + diagonal stroke + panel indicator blocks)
- head.php: favicon links for SVG, PNG 32px, PNG 192px, Apple touch,
  theme-color meta tag
- header.php: logo image next to wordmark, PNG fallback via onerror
- footer.php: logo image in footer brand
2026-04-25 05:57:56 -05:00
NixReaper 858c7ac56e feat: overhaul home page, add Terms/Privacy, fix docs links, expand footer
- home.php: remove fake testimonials; add one-line install block with
  copy button; add NixPanel vs cPanel comparison table; add stack
  table; rewrite feature descriptions to be Rust-accurate
- terms.php: full Terms of Service (14 sections)
- privacy.php: full Privacy Policy (11 sections, GDPR-aware)
- index.php: add /terms and /privacy routes
- footer.php: expand to 4-column layout with Product, Resources,
  Support columns; add Terms/Privacy/Changelog/GitHub/bug report links
- header.php: point Docs to github.com/NixReaper/nixpanel-docs
2026-04-25 05:49:36 -05:00
NixReaper 29c18c5af8 fix: rename setInterval to setBilling, add deploy.sh
- pricing.php: rename setInterval() to setBilling() to stop shadowing
  the native window.setInterval — the billing toggle was silently broken
- deploy.sh: full automated deploy script for nixpanel.io
  - DocumentRoot set to public/ (fixes /pricing, /login 404s)
  - AllowOverride All so public/.htaccess handles all routing
  - PHP 8.3-FPM via Apache mod_proxy_fcgi
  - composer install, DB migrations, .env setup, SSL via certbot
2026-04-25 05:37:31 -05:00
NixReaperandClaude Sonnet 4.6 faf0818dde feat: rewrite website in PHP, drop Node.js stack
Replace React/Vite frontend + Fastify API with a single PHP application.

- Front controller router in public/index.php (clean URLs via .htaccess)
- Session-based auth (no JWT) — register, login, verify email,
  forgot/reset password, logout
- Stripe checkout sessions, billing portal, webhook handler
  (checkout.session.completed, subscription.updated/deleted)
- License IP change via internal licensing server API
- PHP classes: DB (PDO), Auth, Mailer (PHPMailer), StripeClient
- Views: home, pricing, install, login, register, dashboard,
  verify-email, forgot-password, reset-password, 404
- Tailwind CSS via CDN — no build step required
- Composer dependencies: stripe/stripe-php, phpmailer/phpmailer,
  vlucas/phpdotenv, ramsey/uuid
- CSRF protection on all POST forms
- PRG pattern with session flash messages

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-04-05 11:29:58 -05:00