diff --git a/README.md b/README.md
index e021d9ac..db55fec6 100644
--- a/README.md
+++ b/README.md
@@ -173,6 +173,7 @@ For the full quick start (including local Docker builds and dev mode), see the d
## One Click Deployment
[](https://railway.com/deploy/spSvic?referralCode=1Pn7vs&utm_medium=integration&utm_source=template&utm_campaign=generic)
+[](https://zeabur.com/templates/1YRTMI?referralCode=rajnandan1)
## Features
diff --git a/src/routes/(docs)/docs/+page.svelte b/src/routes/(docs)/docs/+page.svelte
index 733a4b54..a08036fb 100644
--- a/src/routes/(docs)/docs/+page.svelte
+++ b/src/routes/(docs)/docs/+page.svelte
@@ -319,6 +319,13 @@
>
+
+
+
{#if getMetrics().length > 0}
diff --git a/src/routes/(docs)/docs/content/v4/getting-started/introduction.md b/src/routes/(docs)/docs/content/v4/getting-started/introduction.md
index ca020d89..ff571d8b 100644
--- a/src/routes/(docs)/docs/content/v4/getting-started/introduction.md
+++ b/src/routes/(docs)/docs/content/v4/getting-started/introduction.md
@@ -22,6 +22,11 @@ Kener is built and maintained by [Rajnandan1](https://www.rajnandan.com). It is
6. Discord - [join](https://discord.gg/uSTpnuK9XR)
7. Contribution - [contribute](/docs/v4/getting-started/contributing)
+## One Click Deployment {#one-click-deployment}
+
+[](https://railway.com/deploy/spSvic?referralCode=1Pn7vs&utm_medium=integration&utm_source=template&utm_campaign=generic)
+[](https://zeabur.com/templates/1YRTMI?referralCode=rajnandan1)
+
Ready to get started? Head over to the [Quick Start](/docs/v4/getting-started/quick-start) guide.
## Ways to Sponsor {#ways-to-sponsor}
diff --git a/src/routes/(docs)/docs/content/v4/setup/deployment.md b/src/routes/(docs)/docs/content/v4/setup/deployment.md
index c8639b5c..8de3ab68 100644
--- a/src/routes/(docs)/docs/content/v4/setup/deployment.md
+++ b/src/routes/(docs)/docs/content/v4/setup/deployment.md
@@ -4,6 +4,7 @@ description: Deploy Kener with Docker or Node.js and verify service health with
---
[](https://railway.com/deploy/spSvic?referralCode=1Pn7vs&utm_medium=integration&utm_source=template&utm_campaign=generic)
+[](https://zeabur.com/templates/1YRTMI?referralCode=rajnandan1)
Use this guide when moving from local testing to production. It includes `.env` examples for PostgreSQL, MySQL, subpath deployments, and both SMTP/Resend email providers.
diff --git a/zeabur-template.yaml b/zeabur-template.yaml
new file mode 100644
index 00000000..78bb29b8
--- /dev/null
+++ b/zeabur-template.yaml
@@ -0,0 +1,160 @@
+# yaml-language-server: $schema=https://schema.zeabur.app/template.json
+apiVersion: zeabur.com/v1
+kind: Template
+metadata:
+ name: Kener
+spec:
+ description: Stunning status pages, batteries included!
+ icon: https://raw.githubusercontent.com/rajnandan1/kener/main/static/kener.svg
+ coverImage: https://raw.githubusercontent.com/rajnandan1/kener/main/static/og.jpg
+ tags:
+ - Uptime
+ - Monitor
+ - Status Page
+ - Incident Management
+ - DevOps
+ - SvelteKit
+ - Open Source
+ - Dashboard
+ readme: "# Kener\n\nKener 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.\n\nDesigned with ease of use and customization in mind, Kener provides all the essential features you'd expect from a status page—without unnecessary complexity.\n\n[\U0001F3E0 Homepage](https://kener.ing/) | [GitHub](https://github.com/rajnandan1/kener)\n\n## Why Kener?\n\n- Real-time monitoring (API, Ping, TCP, DNS, SSL, SQL, and more)\n- Uptime tracking and latency metrics\n- Incident and maintenance management\n- Customizable dashboards with theming\n- Internationalization (20+ languages)\n- Embeddable widgets and status badges\n- Email notifications (SMTP / Resend)\n- Webhook and Slack/Discord alerts\n\n## After Deployment\n\n1. Open your Kener domain in a browser.\n2. Complete the initial setup wizard to create your admin account.\n3. Add your first monitor from the management dashboard.\n\n## Documentation\n\nFull docs: [https://kener.ing/docs](https://kener.ing/docs)\n\n## Support Kener\n\nKener is built and maintained by Rajnandan1. If you find it useful, consider supporting the project:\n\n- [GitHub Sponsors](https://github.com/sponsors/rajnandan1)\n- [Buy Me a Coffee](https://www.buymeacoffee.com/rajnandan1)\n- [PayPal](https://www.paypal.com/paypalme/rajnandan1)\n- [Star on GitHub](https://github.com/rajnandan1/kener)\n"
+ variables:
+ - key: PUBLIC_DOMAIN
+ type: DOMAIN
+ name: Public Domain
+ description: The URL of Kener
+ services:
+ - name: Kener
+ icon: https://raw.githubusercontent.com/rajnandan1/kener/main/static/kener.svg
+ dependencies:
+ - postgresql
+ - redis
+ template: PREBUILT
+ spec:
+ source:
+ image: rajnandan1/kener:latest
+ ports:
+ - id: web
+ port: 3000
+ type: HTTP
+ env:
+ DATABASE_URL:
+ default: ${POSTGRES_CONNECTION_STRING}
+ KENER_SECRET_KEY:
+ default: ${PASSWORD}
+ ORIGIN:
+ default: https://${ZEABUR_WEB_DOMAIN}
+ REDIS_URL:
+ default: ${REDIS_CONNECTION_STRING}
+ domainKey: PUBLIC_DOMAIN
+ - name: postgresql
+ icon: https://cdn.zeabur.com/marketplace/postgresql.svg
+ template: PREBUILT
+ spec:
+ source:
+ image: postgres:18
+ ports:
+ - id: database
+ port: 5432
+ type: TCP
+ volumes:
+ - id: data
+ dir: /var/lib/postgresql/data
+ instructions:
+ - title: Connection String
+ content: postgresql://${POSTGRES_USERNAME}:${POSTGRES_PASSWORD}@${PORT_FORWARDED_HOSTNAME}:${DATABASE_PORT_FORWARDED_PORT}/${POSTGRES_DATABASE}
+ - title: PostgreSQL Connect Command
+ content: psql "postgresql://${POSTGRES_USERNAME}:${POSTGRES_PASSWORD}@${PORT_FORWARDED_HOSTNAME}:${DATABASE_PORT_FORWARDED_PORT}/${POSTGRES_DATABASE}"
+ - title: PostgreSQL username
+ content: ${POSTGRES_USERNAME}
+ - title: PostgreSQL password
+ content: ${POSTGRES_PASSWORD}
+ - title: PostgreSQL database
+ content: ${POSTGRES_DATABASE}
+ - title: PostgreSQL host
+ content: ${PORT_FORWARDED_HOSTNAME}
+ - title: PostgreSQL port
+ content: ${DATABASE_PORT_FORWARDED_PORT}
+ env:
+ PGDATA:
+ default: /var/lib/postgresql/data/pgdata
+ expose: false
+ POSTGRES_CONNECTION_STRING:
+ default: postgresql://${POSTGRES_USERNAME}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DATABASE}
+ expose: true
+ POSTGRES_DATABASE:
+ default: ${POSTGRES_DB}
+ expose: true
+ POSTGRES_DB:
+ default: kener
+ POSTGRES_HOST:
+ default: ${CONTAINER_HOSTNAME}
+ expose: true
+ POSTGRES_PASSWORD:
+ default: ${PASSWORD}
+ expose: true
+ POSTGRES_PORT:
+ default: ${DATABASE_PORT}
+ expose: true
+ POSTGRES_URI:
+ default: ${POSTGRES_CONNECTION_STRING}
+ expose: true
+ POSTGRES_USER:
+ default: root
+ POSTGRES_USERNAME:
+ default: ${POSTGRES_USER}
+ expose: true
+ - name: redis
+ icon: https://raw.githubusercontent.com/zeabur/service-icons/main/marketplace/redis.svg
+ template: PREBUILT
+ spec:
+ source:
+ image: redis/redis-stack-server:latest
+ ports:
+ - id: database
+ port: 6379
+ type: TCP
+ volumes:
+ - id: data
+ dir: /data
+ instructions:
+ - title: Command to connect to your Redis
+ content: redis-cli -h ${PORT_FORWARDED_HOSTNAME} -p ${DATABASE_PORT_FORWARDED_PORT} -a ${REDIS_PASSWORD}
+ - title: Redis Connection String
+ content: redis://:${REDIS_PASSWORD}@${PORT_FORWARDED_HOSTNAME}:${DATABASE_PORT_FORWARDED_PORT}
+ - title: Redis password
+ content: ${REDIS_PASSWORD}
+ - title: Redis host
+ content: ${PORT_FORWARDED_HOSTNAME}
+ - title: Redis port
+ content: ${DATABASE_PORT_FORWARDED_PORT}
+ env:
+ CONFFILE:
+ default: /etc/redis-stack.conf
+ REDIS_ARGS:
+ default: --requirepass ${REDIS_PASSWORD}
+ REDIS_CONNECTION_STRING:
+ default: redis://:${REDIS_PASSWORD}@${REDIS_HOST}:${REDIS_PORT}
+ expose: true
+ REDIS_HOST:
+ default: ${CONTAINER_HOSTNAME}
+ expose: true
+ REDIS_PASSWORD:
+ default: ${PASSWORD}
+ expose: true
+ REDIS_PORT:
+ default: ${DATABASE_PORT}
+ expose: true
+ REDIS_URI:
+ default: ${REDIS_CONNECTION_STRING}
+ expose: true
+ configs:
+ - path: /etc/redis-stack.conf
+ template: |
+ port 6379
+ daemonize no
+ permission: null
+ envsubst: null
+ instructions:
+ - type: DOMAIN
+ title: Kener Status Page
+ content: ${PUBLIC_DOMAIN}