{% extends "base.html" %}{% block title %}Today's mantra · {{ app_name }}{% endblock %} {% block body %}

🌀 Today's mantra

Three to five minutes: today's mantra, voiced over a quiet bed, with room to say it back. Wake ends rising, with a bright tone. Bed settles and fades to silence, so it isn't offered in restrictive gear. Played to the end, it counts as recited. So does reading it out yourself.

{% if m.enabled %} {% include "trance_mantra_block.html" %} {% if m.voice %}
Use this when today's mantra changed, or a render failed.
{% endif %} {% else %}

The voice is off. It needs the latch-voice sidecar running on this box or your network, and its address under Settings → Trance. Until then, read it and recite it on the Handler page.

{% endif %}
{% if m.enabled %}

{{ 'Choose the voice' if not m.voice else 'The voice' }}

{#- 🔴 The calibration gate (trance Risk #3). Nothing renders until a person picks a voice by LISTENING, at the level it will play: a voice that grates on first hearing turns into a laugh reflex on the anchor, and that does not wear off. -#}

Headphones on, at the volume you'll use. Each one is a whole wake track with today's mantra, so you hear what you'd get. Pick the one you could hear every day.{% if m.voice %} Now: {{ dict(candidates).get(m.voice, m.voice) }}.{% endif %}

{% if samples|selectattr('ready')|list %} {% for s in samples %}
{{ s.label }} {% if s.ready %}
{% else %}not rendered{% endif %}
{% endfor %} {% endif %}
{% endif %} {% endblock %}