Upcoming Version 4.0.0
Currently we are working on updating kener to the latest svelte version with typescript



| 🌍 Live Server | 🎉 Quick Start | 🗄 Documentation |
|---|
Kener is a sleek and lightweight status page system built with SvelteKit and NodeJS. It’s not here to replace heavyweights like Datadog or Atlassian but rather to offer a simple, modern, and hassle-free way to set up a great-looking status page with minimal effort.
Designed with ease of use and customization in mind, Kener provides all the essential features you’d expect from a status page—without unnecessary complexity.
✅ Minimal overhead – Set up quickly with a clean, modern UI
✅ Customizable – Easily tailor it to match your brand
✅ Open-source & free – Because great tools should be accessible to everyone
“Kener” is inspired by the Assamese word “Kene”, meaning “how’s it going?”. The ‘.ing’ was added because, well… that domain was available. 😄
Get Kener running in minutes.
git clone https://github.com/rajnandan1/kener.git
cd kener
# Uses docker-compose.yml (includes Redis + Kener)
# Set a strong KENER_SECRET_KEY and ORIGIN in docker-compose.yml before first run
docker compose up -dOpen http://localhost:3000.
Important
Set a strong KENER_SECRET_KEY and set ORIGIN to your public URL before starting for the first time.
Use docker-compose.dev.yml when you want to build from local source instead of pulling the published image:
docker compose -f docker-compose.dev.yml up -d --buildOr combine both files to keep base production config while overriding Kener with a local build:
docker compose -f docker-compose.yml -f docker-compose.dev.yml up -d --buildYou can use either image:
docker.io/rajnandan1/kener:latestghcr.io/rajnandan1/kener:latest
mkdir -p database
docker run -d \
--name kener \
-p 3000:3000 \
-v "$(pwd)/database:/app/database" \
-e "KENER_SECRET_KEY=replace_with_a_random_string" \
-e "ORIGIN=http://localhost:3000" \
-e "REDIS_URL=redis://host.docker.internal:6379" \
docker.io/rajnandan1/kener:latestRequirements:
- Node.js
>= 20 - Redis
git clone https://github.com/rajnandan1/kener.git
cd kener
npm install
# Start Redis (example)
docker run -d --name kener-redis -p 6379:6379 redis:7-alpine
npm run build
npm run startCreate a .env with at least:
KENER_SECRET_KEY=replace_with_a_random_string
ORIGIN=http://localhost:3000
REDIS_URL=redis://localhost:6379
PORT=3000For the full quick start (including local Docker builds and dev mode), see the docs:
Kener combines public status page essentials with advanced admin workflows.
- Monitor API, Ping, TCP, DNS, SSL, SQL, Heartbeat, and GameDig checks
- Manage incidents with clear timelines, updates, and acknowledgements
- Schedule maintenance windows and keep users informed throughout
- Send notifications via Email, Webhook, Slack, and Discord
- Explore historical monitoring data and uptime trends
- Build branded, customizable status pages (logo, colors, CSS, themes)
- Support light/dark mode, localization, and timezone-aware display
- Embed status widgets and badges into external sites and portals
- Provide SEO-friendly public pages for global audiences
- Invite teams with role-based collaboration across workflows
- Manage multiple status pages from one Kener instance
- Use trigger-based workflows and template-driven messaging
- Manage API keys for secure integrations and automations
- Integrate analytics providers like GA, Plausible, Mixpanel, Umami, and Clarity
- Access the full REST API for incidents, monitors, and reporting
If you’re enjoying Kener and want to support its development, consider sponsoring me on GitHub or treating me to a coffee. Your support helps keep the project growing! 🚀
If you want to contribute to Kener, please read the Contribution Guide.
