diff --git a/CHANGELOG.md b/CHANGELOG.md index a7a6ba9..dda1228 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +## 0.44.0 — 2026-10-29 — Ergonomie : tuile Projets et pied de sidebar + +- **Tuile Projets** : en-tête groupé (gauche : organisation + santé, droite : date + étoile + menu) au lieu de 5 éléments éparpillés ; avancement global labellisé (« Avancement — X/Y terminées ») au lieu d'une barre anonyme ; jalon séparé par un filet, avec étiquette « Prochain jalon » et échéance distincte ; pied en 2 rangées — (1) compte d'issues + bouton Board, (2) répartition par colonne labellisée (« En cours 8 », « Terminé 59 », au lieu de chiffres nus 8 / 59) + prévision ; activité de la semaine en texte secondaire (« Cette semaine : … »). +- **Pied de sidebar** : 2 rangées séparées par un filet — (1) profil + bouton Sortir icône seule (⏻, aria-label, sans texte), (2) version + fraîcheur des données en pastille discrète (point vert + « à l'instant », infobulle expliquant les instantanés Gitea). En rail replié, la rangée méta est masquée, les icônes restent centrées. + ## 0.43.0 — 2026-10-29 — Icônes monochromes sur tout le site (#59, suite) - **Icônes colorées retirées de toutes les pages** : emoji décoratifs devant titres, boutons et liens supprimés (le texte porte le sens) ; icônes fonctionnelles passées en trait/monochrome — étoile ★/☆ (couleur texte, plus jaune), recherche en SVG, épingler déjà en SVG, thème ☀/☾ en symboles texte. diff --git a/app/config.py b/app/config.py index b159657..40c9676 100644 --- a/app/config.py +++ b/app/config.py @@ -177,7 +177,7 @@ from urllib.parse import urlparse BASE_DIR = Path(__file__).resolve().parent.parent -APP_VERSION = "0.43.0" +APP_VERSION = "0.44.0" def _env_bool(name: str, default: bool) -> bool: diff --git a/app/templates/_header.html b/app/templates/_header.html index d1e91e3..9bba2a4 100644 --- a/app/templates/_header.html +++ b/app/templates/_header.html @@ -137,19 +137,23 @@ {% endfor %}
- {% if data_freshness %} - {{ data_freshness }} - {% endif %} - {% if current_user %} - {{ current_user.display_name or current_user.username }} - {% endif %} - v{{ version }} - {% if not is_admin %} - - {% endif %} - {% if auth_enabled %} - ⏻ Sortir - {% endif %} +
+ {% if current_user %} + {{ current_user.display_name or current_user.username }} + {% endif %} + {% if not is_admin %} + + {% endif %} + {% if auth_enabled %} + ⏻ + {% endif %} +
+
+ v{{ version }} + {% if data_freshness %} + {{ data_freshness }} + {% endif %} +
diff --git a/app/templates/dashboard.html b/app/templates/dashboard.html index ca1c90b..1d4db49 100644 --- a/app/templates/dashboard.html +++ b/app/templates/dashboard.html @@ -91,14 +91,17 @@ data-search="{{ (repo.name ~ ' ' ~ repo.full_name ~ ' ' ~ (repo.description or ''))|lower }}" x-show="search === '' || $el.dataset.search.includes(search.toLowerCase())">
- {{ repo.owner.login }} - {% if multi_conn %}{% if repo._conn_kind == 'github' %}GitHub{% else %}Gitea{% endif %} {{ repo._conn_slug }}{% endif %} - {% if repo.health_dot %} - - {% endif %} - {{ repo.updated_at[:10] }} - {% if not archived %} - +
+ {{ repo.owner.login }} + {% if multi_conn %}{% if repo._conn_kind == 'github' %}GitHub{% else %}Gitea{% endif %} {{ repo._conn_slug }}{% endif %} + {% if repo.health_dot %} + + {% endif %} +
+
+ {{ repo.updated_at[:10] }} + {% if not archived %} +
{% endif %} +

{{ repo.name }}

-

{{ repo.description or '—' }}

+

{{ repo.description or '—' }}

{% if full in stats %} {% set total = stats[full].values()|sum %} {% set done_n = stats[full].get('done', 0) %} {% if total > 0 %} -
- +
+
Avancement{{ done_n }}/{{ total }} terminées
+
+ +
{% endif %} {% endif %} {% if repo.next_milestone %} {% set ms = repo.next_milestone %}
+
Prochain jalon{% if ms.due_label %}échéance {{ ms.due_label }}{% endif %}
{{ ms.title }} - {% if ms.due_label %}{{ '' if ms.late }}échéance {{ ms.due_label }}{% endif %}
{% if ms.total %}
@@ -143,28 +150,32 @@
{% endif %}