design is now terminal alike

This commit is contained in:
Priec
2026-05-19 14:48:47 +02:00
parent 67b7c8e5ae
commit cbd642c62c
13 changed files with 801 additions and 755 deletions

View File

@@ -1,48 +1,77 @@
{% extends "base.html" %}
{% block title %}{{ album.title }}{% endblock title %}
{% block crumb %}audio/{{ album.slug }}{% endblock crumb %}
{% block content %}
<div class="space-y-2">
<div class="flex flex-wrap items-center justify-between gap-3">
<div>
<h1 class="text-2xl font-bold">{{ album.title }}</h1>
{% if album.artist %}
<p class="text-sm opacity-70">{{ album.artist }}</p>
{% endif %}
</div>
<a href="/audio/albums" class="btn btn-ghost btn-sm">Back to albums</a>
<header class="term-cmd">
<div>
<p class="term-cmd-line">
<span class="t-green">visitor@universal-web</span><span class="t-dim">:</span><span class="t-blue">~/audio</span><span class="t-dim">$</span>
cd {{ album.slug }}/ && ls
</p>
<h1 class="term-title">{{ album.title }}</h1>
{% if album.artist %}
<p class="term-sub">// by {{ album.artist }}</p>
{% endif %}
</div>
{% if album.cover_image_id %}
<img src="/images/{{ album.cover_image_id }}" alt="" class="mb-4 rounded">
{% endif %}
{% if album.description %}
<div class="card border border-base-300 bg-base-100 shadow-sm">
<div class="card-body">
<p class="whitespace-pre-line">{{ album.description }}</p>
</div>
<div class="term-cmd-actions">
<a href="/audio/albums" class="btn btn-outline btn-sm">[ cd .. ]</a>
</div>
{% endif %}
</header>
<div class="card border border-base-300 bg-base-100 shadow-sm">
<div class="card-body">
{% if tracks | length > 0 %}
<div class="space-y-2">
{% for track in tracks %}
<div class="border-t border-base-300 pt-2">
<p class="font-medium">{% if track.track_number %}{{ track.track_number }}. {% endif %}{{ track.title }}</p>
<audio controls preload="metadata" class="mt-2 w-full">
<source src="/audio/tracks/{{ track.id }}/stream">
</audio>
</div>
{% endfor %}
</div>
{% else %}
<p class="text-center font-medium">No tracks yet.</p>
{% endif %}
</div>
{% if album.cover_image_id %}
<div class="card mb-6">
<div class="term-head">
<span class="term-dots" aria-hidden="true">
<span class="term-dot r"></span><span class="term-dot y"></span><span class="term-dot g"></span>
</span>
<span class="term-head-name">~/audio/{{ album.slug }}/cover.png</span>
</div>
<div class="card-body">
<img src="/images/{{ album.cover_image_id }}" alt="">
</div>
</div>
{% endif %}
{% if album.description %}
<div class="card mb-6">
<div class="term-head">
<span class="term-dots" aria-hidden="true">
<span class="term-dot r"></span><span class="term-dot y"></span><span class="term-dot g"></span>
</span>
<span class="term-head-name">~/audio/{{ album.slug }}/notes.txt</span>
</div>
<div class="card-body">
<p class="term-prose whitespace-pre-line">{{ album.description }}</p>
</div>
</div>
{% endif %}
<div class="card">
<div class="term-head">
<span class="term-dots" aria-hidden="true">
<span class="term-dot r"></span><span class="term-dot y"></span><span class="term-dot g"></span>
</span>
<span class="term-head-name">~/audio/{{ album.slug }}/tracklist</span>
<span class="term-head-meta term-tag is-green">{{ tracks | length }} tracks</span>
</div>
<div class="card-body">
{% if tracks | length > 0 %}
{% for track in tracks %}
<div class="term-track">
<p class="term-track-name">
<span class="t-dim">{% if track.track_number %}{{ track.track_number }}{% else %}-{% endif %}</span>
<span class="t-green"></span> {{ track.title }}
</p>
<audio controls preload="metadata">
<source src="/audio/tracks/{{ track.id }}/stream">
</audio>
</div>
{% endfor %}
{% else %}
<p class="term-empty-cmd">$ ls → no tracks yet</p>
{% endif %}
</div>
</div>
{% endblock content %}