Files
nixpanel-website/views/home.php
T

140 lines
7.8 KiB
PHP
Raw Normal View History

<?php $pageTitle = 'NixPanel — Modern Web Hosting Control Panel'; ?>
<?php
$features = [
['icon' => '⚡', 'title' => 'Lightning Fast', 'body' => 'Built in Rust. Near-zero overhead, instant response times, and a panel that never slows your server down.'],
['icon' => '🔒', 'title' => 'Security First', 'body' => "Argon2id password hashing, Let's Encrypt SSL automation, Fail2ban brute-force protection, and hardened defaults out of the box."],
['icon' => '🌐', 'title' => 'Full DNS Control', 'body' => 'Manage PowerDNS zones and records directly from the panel. No third-party DNS required.'],
['icon' => '📊', 'title' => 'Complete Control', 'body' => 'Manage email accounts, MariaDB databases, cron jobs, FTP, subdomains, and SSL — all from one clean dashboard.'],
['icon' => '🔄', 'title' => 'Easy Migration', 'body' => 'Moving from cPanel? Import accounts with a single command using the built-in migration tool.'],
['icon' => '💳', 'title' => 'Simple Licensing', 'body' => 'Tied to your server IP. No per-user fees, no agent installs, no surprises. Upgrade or cancel any time.'],
];
$stack = [
['label' => 'Web server', 'value' => 'Apache 2 + PHP-FPM 8.2 & 8.3'],
['label' => 'Database', 'value' => 'MariaDB (WordPress-compatible)'],
['label' => 'DNS', 'value' => 'PowerDNS'],
['label' => 'Mail', 'value' => 'Exim 4 + Dovecot + SpamAssassin'],
['label' => 'SSL', 'value' => "Let's Encrypt via Certbot"],
['label' => 'Backend', 'value' => 'Rust · Axum · SQLx · Tokio'],
['label' => 'Protection', 'value' => 'Fail2ban'],
];
?>
{{-- Hero --}}
<section class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 pt-24 pb-20 text-center">
<div class="inline-flex items-center gap-2 bg-brand-900/40 border border-brand-500/30 text-brand-400 text-xs font-medium px-3 py-1.5 rounded-full mb-6">
Now in public beta · Free plan available
</div>
<h1 class="text-5xl sm:text-6xl font-extrabold text-white leading-tight tracking-tight">
The hosting control panel<br>
<span class="text-brand-500">you actually want to use.</span>
</h1>
<p class="mt-6 text-lg text-gray-400 max-w-2xl mx-auto">
NixPanel is a fast, modern alternative to cPanel and WHM. Manage your Linux server,
host websites, and control everything from a clean dashboard — built in Rust.
</p>
<div class="mt-10 flex flex-col sm:flex-row gap-4 justify-center">
<a href="/register" class="btn-primary text-base px-7 py-3">Get started free</a>
<a href="/install" class="btn-outline text-base px-7 py-3">Install guide</a>
<a href="/pricing" class="btn-secondary text-base px-7 py-3">View pricing</a>
</div>
</section>
{{-- One-line install --}}
<section class="max-w-3xl mx-auto px-4 sm:px-6 lg:px-8 pb-20">
<div class="bg-gray-900 border border-gray-800 rounded-xl p-6">
<p class="text-xs text-gray-500 font-mono mb-3">Quick install — Ubuntu 24.04 LTS</p>
<div class="flex items-center gap-3">
<code class="flex-1 text-sm text-brand-400 font-mono bg-gray-950 rounded-lg px-4 py-3 overflow-x-auto whitespace-nowrap">
bash &lt;(curl -fsSL https://raw.githubusercontent.com/NixReaper/nixpanel/main/install.sh)
</code>
<button onclick="navigator.clipboard.writeText('bash <(curl -fsSL https://raw.githubusercontent.com/NixReaper/nixpanel/main/install.sh)')"
class="flex-shrink-0 text-xs text-gray-400 hover:text-white border border-gray-700 hover:border-gray-500 rounded-lg px-3 py-3 transition-colors">
Copy
</button>
</div>
</div>
</section>
{{-- Features --}}
<section class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 py-20">
<h2 class="text-3xl font-bold text-white text-center mb-12">Everything you need to run a server</h2>
<div class="grid sm:grid-cols-2 lg:grid-cols-3 gap-6">
<?php foreach ($features as $f): ?>
<div class="card">
<div class="text-3xl mb-3"><?= $f['icon'] ?></div>
<h3 class="font-semibold text-white mb-2"><?= e($f['title']) ?></h3>
<p class="text-sm text-gray-400"><?= e($f['body']) ?></p>
</div>
<?php endforeach ?>
</div>
</section>
{{-- vs cPanel comparison --}}
<section class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 py-20">
<h2 class="text-3xl font-bold text-white text-center mb-12">NixPanel vs cPanel</h2>
<div class="overflow-x-auto">
<table class="w-full text-sm">
<thead>
<tr class="border-b border-gray-800">
<th class="text-left text-gray-400 font-medium py-3 pr-6 w-1/2"></th>
<th class="text-center text-brand-400 font-semibold py-3 px-4">NixPanel</th>
<th class="text-center text-gray-500 font-medium py-3 px-4">cPanel/WHM</th>
</tr>
</thead>
<tbody class="divide-y divide-gray-800/60">
<?php
$rows = [
['Starting price', '$0/mo', '$45–85/mo'],
['Open source', '✅', '❌'],
['Built in Rust', '✅', '❌ (Perl)'],
['PHP 8.2 & 8.3', '✅', '✅'],
['MariaDB support', '✅', '✅'],
['PowerDNS', '✅', '❌ (BIND)'],
["Let's Encrypt SSL", '✅', '✅'],
['IP-bound licensing', '✅ (no per-user fees)', '❌ (per-account pricing)'],
['Self-hosted', '✅', '✅'],
];
foreach ($rows as [$label, $nix, $cpanel]): ?>
<tr>
<td class="py-3 pr-6 text-gray-400"><?= e($label) ?></td>
<td class="py-3 px-4 text-center text-white font-medium"><?= e($nix) ?></td>
<td class="py-3 px-4 text-center text-gray-500"><?= e($cpanel) ?></td>
</tr>
<?php endforeach ?>
</tbody>
</table>
</div>
</section>
{{-- Stack --}}
<section class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 py-20">
<div class="grid md:grid-cols-2 gap-12 items-center">
<div>
<h2 class="text-3xl font-bold text-white mb-4">A stack built to last</h2>
<p class="text-gray-400 mb-8">NixPanel installs and configures a complete, production-ready hosting stack — not scripts glued together, but a cohesive system that works out of the box.</p>
<a href="/install" class="btn-outline">Read the install guide →</a>
</div>
<div class="card divide-y divide-gray-800">
<?php foreach ($stack as $item): ?>
<div class="flex justify-between items-center py-3 first:pt-0 last:pb-0">
<span class="text-sm text-gray-400"><?= e($item['label']) ?></span>
<span class="text-sm text-white font-medium text-right"><?= e($item['value']) ?></span>
</div>
<?php endforeach ?>
</div>
</div>
</section>
{{-- CTA --}}
<section class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 py-20">
<div class="bg-brand-900/20 border border-brand-500/20 rounded-2xl p-12 text-center">
<h2 class="text-3xl font-bold text-white mb-4">Ready to take control?</h2>
<p class="text-gray-400 mb-8 max-w-lg mx-auto">Start on the free plan. Upgrade when you need more. No credit card required to get started.</p>
<div class="flex flex-col sm:flex-row gap-4 justify-center">
<a href="/register" class="btn-primary text-base px-8 py-3">Create your free account</a>
<a href="/pricing" class="btn-secondary text-base px-8 py-3">Compare plans</a>
</div>
</div>
</section>