Watch
1
0
Fork
You've already forked jeap-server-sent-events
0
mirror of https://github.com/jeap-admin-ch/jeap-server-sent-events.git synced 2026-08-17 13:04:58 +00:00
Read-only mirror of https://github.com/jeap-admin-ch/jeap-server-sent-events — Bundesamt für Informatik und Telekommunikation. Issues & pull requests at the source. Catalog: https://www.opensource.admin.ch/en/softwares/mqw1d4 https://www.opensource.admin.ch/en/softwares/mqw1d4
  • Java 99.7%
  • Shell 0.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-13 09:25:58 +02:00
.mvn/wrapper JEAP-5500: initial version of sse lib 2025-06-25 10:02:00 +02:00
docs [skip ci] JEAP-7090 Improve docs 2026-07-03 10:41:30 +02:00
jeap-server-sent-events-core Version 12.12.0: Update parent from 8.9.1 to 8.10.0 2026-08-13 07:57:38 +02:00
jeap-server-sent-events-messaging Version 12.12.0: Update parent from 8.9.1 to 8.10.0 2026-08-13 07:57:38 +02:00
jeap-server-sent-events-starter Version 12.12.0: Update parent from 8.9.1 to 8.10.0 2026-08-13 07:57:38 +02:00
jeap-server-sent-events-web Version 12.12.0: Update parent from 8.9.1 to 8.10.0 2026-08-13 07:57:38 +02:00
.gitignore JEAP-5500: initial commit 2025-06-17 16:15:40 +02:00
AGENTS.md [skip ci] JEAP-7090 Improve docs 2026-07-03 10:41:30 +02:00
CHANGELOG.md Version 12.12.0: update jeap-messaging from 17.11.0 to 17.12.0 2026-08-13 09:25:58 +02:00
CONTRIBUTING.md JEAP-5500: initial version of sse lib 2025-06-25 10:02:00 +02:00
LICENSE JEAP-5500: initial version of sse lib 2025-06-25 10:02:00 +02:00
mvnw JEAP-5500: initial version of sse lib 2025-06-25 10:02:00 +02:00
pom.xml Version 12.12.0: update jeap-messaging from 17.11.0 to 17.12.0 2026-08-13 09:25:58 +02:00
publiccode.yml Update version/date in publiccode.yml 2026-08-13 08:00:30 +02:00
README.md [skip ci] JEAP-7090 Add docs 2026-06-18 16:34:32 +02:00
SECURITY.md JEAP-5500: initial version of sse lib 2025-06-25 10:02:00 +02:00
setPomVersions.sh JEAP-5500: initial version of sse lib 2025-06-25 10:02:00 +02:00
THIRD-PARTY-LICENSES.md Updating THIRD-PARTY-LICENSES.md 2026-08-13 07:58:56 +02:00

jEAP Server-Sent Events

jEAP Server-Sent Events is a library for pushing real-time events from a jEAP Spring Boot service to browser clients over the Server-Sent Events (SSE / EventSource) HTTP standard. A service reports resource changes through a simple business API, and connected UI clients receive a typed event stream without polling. Multiple backend instances stay in sync through a Kafka topic, so every connected client receives every relevant event regardless of which instance triggered the change. It provides:

  • A text/event-stream web endpoint that UI clients subscribe to with the native EventSource API
  • A business-facing ResourceMutationService to publish create / update / delete events
  • Kafka fan-out so all backend instances forward events to their own connected clients
  • Periodic heartbeats and configurable emitter timeouts to keep connections healthy
  • Pluggable authorization: insecure, simple role-based, or semantic resource/operation-based
  • Spring Boot auto-configuration enabled by default, switchable via jeap.sse.enabled

Documentation

Start with Getting started, then follow the links below.

Topic File
Getting started (add the dependency, push events) docs/getting-started.md
Architecture & event flow docs/architecture.md
Configuration reference (jeap.sse.*) docs/configuration.md
Authorization (insecure / simple / semantic) docs/authorization.md
Client integration (EventSource) docs/client-integration.md

Modules

The artifact most consumers depend on is jeap-server-sent-events-starter. The group id for all modules is ch.admin.bit.jeap; the version is managed by this library's parent POM.

Module Purpose
jeap-server-sent-events-core Domain API: ResourceMutationService, ResourceMutationType, listener interfaces
jeap-server-sent-events-web SSE web endpoint, heartbeat sender, authorization and Spring Security config
jeap-server-sent-events-messaging Kafka producer/consumer of NotifyClientCommand for cross-instance fan-out
jeap-server-sent-events-starter Aggregates web + messaging and the auto-configuration; the consumer-facing artifact

Changes

This library is versioned using Semantic Versioning and all changes are documented in CHANGELOG.md following the format defined in Keep a Changelog.

Note

This repository is part the open source distribution of jEAP. See github.com/jeap-admin-ch/jeap for more information.

License

This repository is Open Source Software licensed under the Apache License 2.0.