> ea.js — Echelon Analytics

Privacy-first, self-hosted web analytics with WebAssembly proof-of-work bot defense.
Drop in a single script tag — clean data, no cookie banners, no bot spam.


Documentation

Installation Features API Reference Bot Defense Configuration Architecture

Why?

Google Analytics used to be my go-to. Then GA4 happened — bloated, confusing, way too heavy, and full of bot spam that distorts your statistics. Using it feels like opening Microsoft Word when all you want is a text editor. So I built my own for afroute.com and ripped it out when implementing Islets Spatial CMS.

Quick Start

cd echelon-analytics
deno task dev
<script src="https://your-host/ea.js" data-site="my-site"></script>

That's it. Pageviews, bounces, and sessions tracked automatically.

WASM Proof-of-Work Bot Defense

Analytics tools are plagued by bot traffic that distorts your data. ea.js solves this with a novel approach: every tracker script embeds a runtime-generated WebAssembly module that browsers must solve before pageviews are accepted.

The result: clean analytics data without CAPTCHAs, JavaScript challenges, or third-party bot detection services. Full bot defense documentation →

How It Works

Tracking Features

Bot Defense

Admin Dashboard

Auth

Tech Stack

Docker

docker build -f confs/Dockerfile -t echelon .
docker run -p 1947:1947 -v echelon-data:/app/data echelon

github.com/janit/ea