EvoX Genesis
EvoX Genesis turns a high-level software objective into a persistent recursive software world: finite-lived agents recursively develop software, while only accepted consequences persist across develop
Open-source, self-hostable frontend monitoring: errors, performance, sessions and user behavior.
Developer toolsTypeScript · GoGitHub @open-rumOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
OpenRUM is an open-source, self-hosted frontend monitoring platform.
Taken from the repository README
Loading the full README.
Read the full README ↗OpenRUM is a self-hosted real user monitoring (RUM) platform for web products. Start with an error, a slow request or a drop in conversion, then use the related Session and Events to investigate what happened. Your telemetry stays in the infrastructure you operate.
Alpha: OpenRUM is under active development. Expect schema and API changes before the first stable release.
| Area | Capabilities |
|---|---|
| Errors and investigation | Group JavaScript errors into Issues, map stack frames with Source Maps, and inspect the surrounding Session timeline. |
| Performance and APIs | Track Core Web Vitals, route performance, request latency and API failures. |
| Product analytics | Explore Page Views, visitors, acquisition, devices and browsers; analyze Custom Events, funnels, paths and retention. |
| Logs | Search structured browser logs by severity, user or Session, and follow them into related observations. |
| Dashboards and alerts | Build project dashboards, configure metric alerts, and deliver notifications through Feishu/Lark or Webhook. |
| Team access | Manage Organizations and roles; enable Google, GitHub, LDAP or multiple OIDC providers alongside local password sign-in. |
The Browser SDK omits raw input values, request/response bodies and headers from automatic capture. URLs are normalized and sensitive values are scrubbed. See the privacy guide for the capture boundaries.
You need Git, Docker with Compose v2, and at least 8 GB of memory available to Docker.
git clone https://github.com/open-rum/openrum.git
cd openrum
docker compose --env-file deploy/compose/.env.example \
-f deploy/compose/docker-compose.yml up -d --build
The first start builds the services and applies database migrations. Wait for the long-running services to become healthy:
docker compose --env-file deploy/compose/.env.example \
-f deploy/compose/docker-compose.yml ps
Then load the demo, a repeatable ecommerce dataset with approximately 30,000 Sessions across 14 days. It is optional and safe to run again:
docker compose --profile seed --env-file deploy/compose/.env.example \
-f deploy/compose/docker-compose.yml run --rm --no-deps demo-seed
If you work from a clone with Go installed, pnpm openrum up followed by pnpm openrum seed does the same. Open http://127.0.0.1:4173 and sign in:
| Password | |
|---|---|
[email protected] | OpenRUM-demo-2026! |
Explore the dashboards, errors, performance and Sessions using the demo data. Skip the seed step to start from an empty Instance and create your own owner on the first visit. Object storage is optional; enable it when you need to upload Source Map artifacts.
To stop the stack while keeping its data:
docker compose --env-file deploy/compose/.env.example \
-f deploy/compose/docker-compose.yml down
This stack uses example credentials and single-node dependencies for local evaluation. For a real deployment, follow single-host Docker or Kubernetes / Helm. For port conflicts or startup failures, see the local quickstart troubleshooting.
Create a Project in the Console, add your application's origin to its allowed origins, and copy the client DSN. For a local test page, the running Instance serves the Browser SDK directly:
<script src="http://127.0.0.1:4173/api/v1/sdk/browser/0.1.2/openrum.min.js"></script>
<script>
OpenRUM.init({
dsn: "PASTE_YOUR_PROJECT_DSN",
environment: "development",
});
</script>
Replace the DSN with the value from your Project. For a deployed website, use your Instance's HTTPS SDK URL. See Create your first project and the Browser SDK guide for asynchronous loading, framework integration and verification. A runnable React + Vite example is available in examples/react-vite.
| Task | Guide |
|---|---|
| Choose an installation path | Getting started |
| Connect your frontend | Browser SDK · Next.js · Astro |
| Configure login | Email, Google, GitHub, LDAP and OIDC (repository guide) |
| Deploy and operate an Instance | Self-hosting · Backup and restore |
| Upload Source Maps | Source Map integration |
| Configure services and SDK options | Configuration reference · SDK options |
The TypeScript Browser SDK sends Events through Go Ingest, Kafka and the Consumer into ClickHouse. The React Console queries those Events through the Go API.
| Component | Role |
|---|---|
| React, TypeScript, Vite and shadcn/ui | Console and project analysis |
| Go API, Ingest, Consumer and Worker | Authentication, event intake, processing and background jobs |
| ClickHouse | Events and analytical queries |
| PostgreSQL | Users, Projects and configuration |
| Kafka and Redis | Ingestion buffering, quotas and temporary state |
| Optional OSS or S3-compatible storage | Source Map artifacts |
Read the architecture guide for the full event path and dependency responsibilities.
Source development requires Node.js 24, pnpm 11.11, Go 1.26 and Docker. From the repository root:
corepack enable
pnpm install --frozen-lockfile
pnpm openrum dev
This runs the API and Console from source, with infrastructure and pipeline services in containers. The Console stays at http://127.0.0.1:4173. See local development for service commands and troubleshooting.
Bug reports, documentation, tests and code are welcome. Read CONTRIBUTING.md, discuss substantial changes in GitHub Issues, and run pnpm run check before opening a pull request. For documentation changes, also run pnpm site:check.
Report vulnerabilities privately using the security reporting guide.
MIT.