In this article series, a server application uses the Indy HTTP server component (TIdHTTPServer) to provide a HTML page which uses SSE to update its content with data sent from the server.
The latest part of the series is available at:
https://mikejustin.wordpress.com/2022/09/28/how-to-server-sent-events-with-indy-http-server-part-3/Another part will follow which aims to implement some server-side example for message producing (in a separate thread) / consuming (within the HTTP server OnCommandGet handler).
All code was written with Lazarus 2.2. A big thanks goes to the Free Pascal / Lazarus / Indy developers for their great open source software
Indy Sockets on GitHub:
https://github.com/IndySockets/Indy