treefmt / nix fmt (pull_request) Successful in 6s
test ebook search / test-ebook-search (pull_request) Successful in 39s
pytest / pytest (pull_request) Successful in 40s
build_systems / build-brain (pull_request) Successful in 1m0s
build_systems / build-bob (pull_request) Successful in 1m2s
build_systems / build-rhapsody-in-green (pull_request) Successful in 1m33s
build_systems / build-jeeves (pull_request) Successful in 2m25s
test ebook search / test-ebook-search (push) Successful in 35s
build_systems / build-brain (push) Successful in 37s
build_systems / build-bob (push) Successful in 37s
build_systems / build-jeeves (push) Successful in 2m17s
treefmt / nix fmt (push) Successful in 5s
pytest / pytest (push) Successful in 29s
build_systems / build-rhapsody-in-green (push) Successful in 49s
- implement FastAPI and HTMX lobby and game interfaces - support up to four human and AI-controlled players - add configurable rules, victory conditions, and expansion modules - support validated JSON cards, patrons, objectives, and outposts
18 lines
756 B
HTML
18 lines
756 B
HTML
{% extends "base.html" %}
|
|
{% block title %}Room {{ room.code }} · Gems{% endblock %}
|
|
{% block main_class %}board-main{% endblock %}
|
|
{% block topbar %}
|
|
<header class="topbar room-topbar">
|
|
<a href="/" class="brand"><span class="brand-mark">◆</span> Gems</a>
|
|
<div class="room-identity"><span class="eyebrow">Room</span><strong>{{ room.code }}</strong></div>
|
|
<label class="invite-link room-invite">Invite link<input readonly value="{{ public_origin }}/join/{{ room.code }}" aria-label="Invite link"></label>
|
|
</header>
|
|
{% endblock %}
|
|
{% block content %}
|
|
<div class="room-shell">
|
|
<div id="room-state" hx-ext="sse" sse-connect="/rooms/{{ room.code }}/events" sse-swap="room">
|
|
{% include "partials/room_state.html" %}
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|