Tiny example in python what https://data-star.dev does.
Realtime clock example in python:
from flask import Flask, Response
import time
app = Flask(__name__)
def get_time():
return '<div id="time">{}</div>'.format(time.strftime('%H:%M:%S'))
@app.route('/')
def index():
return """
<!DOCTYPE html>
<html>
<head>
<script type="module" defer src="https://cdn.jsdelivr.net/npm/@sudodevnull/datastar"></script>
</head>
<body>
<div data-on-load="$$get('/events')">
<h1>Clock</h1>
{}
</div>
</body>
</html>
""".format(get_time())
@app.route('/events')
def events():
def generate():
while True:
yield 'event: datastar-fragment\n'
yield 'data: fragment {}\n\n'.format(get_time())
time.sleep(1)
return Response(generate(), content_type='text/event-stream')
if __name__ == '__main__':
app.run(debug=True)
Top comments (0)