69 lines
3.7 KiB
HTML
69 lines
3.7 KiB
HTML
{% extends "base.html" %}
|
|
{% block title %}echoIRCd — a from-scratch IRC server in Rust{% endblock %}
|
|
{% block content %}
|
|
<section class="hero">
|
|
<div class="hero-in">
|
|
<div class="hero-main">
|
|
<p class="eyebrow">IRC daemon & services · written in Rust</p>
|
|
<h1>The from-scratch<br>IRC server.</h1>
|
|
<p class="hero-sub">echoIRCd is a modern IRC daemon and a full services suite, built from the
|
|
ground up in Rust — full IRCv3, modern TLS, and SASL. No forks. No C. No <code>unsafe</code>.</p>
|
|
<div class="cta">
|
|
<a class="btn btn-primary" href="/connect">Connect to the network</a>
|
|
<a class="btn btn-ghost" href="/features">See the features</a>
|
|
</div>
|
|
</div>
|
|
|
|
<aside class="statuscard" aria-label="live network status">
|
|
<div class="sc-head"><span class="sc-title">network status</span>
|
|
{% if status.online %}<span class="dot on" title="online"></span>{% else %}<span class="dot off" title="offline"></span>{% endif %}
|
|
</div>
|
|
<dl class="sc-rows">
|
|
<div><dt>state</dt><dd>{% if status.online %}<b class="live">online</b>{% else %}<b class="down">offline</b>{% endif %}</dd></div>
|
|
<div><dt>users</dt><dd>{{ status.users }}</dd></div>
|
|
<div><dt>channels</dt><dd>{{ status.channels }}</dd></div>
|
|
<div><dt>network</dt><dd>echoiRCd</dd></div>
|
|
<div><dt>version</dt><dd>echoIRCd {{ status.version }}</dd></div>
|
|
<div><dt>tls</dt><dd>1.3 · X25519MLKEM768</dd></div>
|
|
</dl>
|
|
<div class="sc-foot">live from <code>irc.echoircd.org</code></div>
|
|
</aside>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="band">
|
|
<div class="wrap">
|
|
<h2 class="h-center">Why echoIRCd</h2>
|
|
<div class="cards">
|
|
<div class="fcard"><h3>Safe by construction</h3><p><code>#![forbid(unsafe_code)]</code> across the whole tree, enforced in CI. Original code — not a fork of anything.</p></div>
|
|
<div class="fcard"><h3>Full IRCv3</h3><p>server-time, message-tags, account-tag, batch, labeled-response, chathistory, multiline, standard-replies and more.</p></div>
|
|
<div class="fcard"><h3>Modern TLS</h3><p>Direct TLS and WebSocket, OpenSSL & rustls backends, TLS 1.3 with post-quantum X25519MLKEM768, per-host SNI.</p></div>
|
|
<div class="fcard"><h3>SASL, incl. ECDSA</h3><p>PLAIN, EXTERNAL, SCRAM-SHA-256, and ECDSA-NIST256P-CHALLENGE — sign a challenge, no password on the wire.</p></div>
|
|
<div class="fcard"><h3>Native services</h3><p>NickServ, ChanServ, OperServ, MemoServ and more over S2S — accounts, channels, vhosts, an event-sourced store.</p></div>
|
|
<div class="fcard"><h3>Anti-abuse built in</h3><p>A native security engine: connection & nick-flood detection, behavioral/content heuristics, DEFCON, DNSBL/MX screening.</p></div>
|
|
</div>
|
|
<p class="h-center more"><a href="/features">Everything that's inside →</a></p>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="wrap latest">
|
|
<h2>Latest</h2>
|
|
<ul class="news">
|
|
<li>
|
|
<span class="news-date">Aug 2026</span>
|
|
<div><a href="https://git.devtronic.pro/echo/echoIRCd"><b>echoIRCd 5.0</b></a> — SASL <b>ECDSA-NIST256P-CHALLENGE</b>, post-quantum TLS 1.3, the operator privilege model, and a native anti-abuse engine.</div>
|
|
</li>
|
|
<li>
|
|
<span class="news-date">Aug 2026</span>
|
|
<div><a href="https://git.devtronic.pro/echo/echo"><b>echo services</b></a> — key-based login (<code>SET PUBKEY</code>), event-sourced accounts, and SASL relayed over the server link.</div>
|
|
</li>
|
|
</ul>
|
|
</section>
|
|
|
|
<section class="ctaband">
|
|
<div class="wrap ctaband-in">
|
|
<div><h2>Ready to connect?</h2><p class="mono-line">irc.echoircd.org · +6697 · TLS 1.3</p></div>
|
|
<a class="btn btn-primary" href="/connect">Get connected</a>
|
|
</div>
|
|
</section>
|
|
{% endblock %}
|