ciaochris's picture
Update README.md
118f06a verified
---
title: Rhythma
emoji: 🎧
colorFrom: indigo
colorTo: pink
sdk: gradio
sdk_version: 6.12.0
app_file: app.py
pinned: true
license: apache-2.0
thumbnail: >-
https://cdn-uploads.huggingface.co/production/uploads/64628a722a83863b97beed5e/y4bWysnsPMV2asL_LFB9X.jpeg
short_description: Reflective listening sessions for calm and focus
---
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
## Rhythma
Rhythma is an artful wellness companion that translates a felt state into a named listening session.
The app pairs session profiling, layered audio, and reflective copy so the experience feels closer to a guided ritual than a parameter dashboard.
## Local Development
Install the dependencies, then run the Gradio app:
```bash
pip install -r requirements.txt
python app.py
```
Set `GROQ_API_KEY` to enable Groq-backed text classification and voice-note transcription.
If `gradio` is not installed locally, you can still run the focused test suite for `app.py` through the stubbed UI tests in `tests/test_rhythma_ui_copy.py`.
## Session-Led Experience
- The main prompt asks what you are carrying or what intention you want to hold.
- The output surface now leads with a named session and emotional tone before the listening guidance appears.
- `Tone Center` and `Session Pattern` can stay on automatic or be gently overridden from the session controls.
- The output area is framed around `Your Listening Path`, `Session Reflection`, audio playback, and waveform views.
- Example prompts now reflect a calmer, artful wellness voice rather than a technical modulation demo.
## Project Structure
- `app.py`: session-led Gradio interface and request pipeline
- `rhythma_engine.py`: waveform generation, audio export, and visualization
- `rhythma_analysis.py`: text/audio analysis, optional Groq integration, and session-profile shaping
- `rhythma.py`: compatibility facade for the public classes
- `tests/test_rhythma_regression.py`: regression tests for the core behavior
- `tests/test_rhythma_ui_copy.py`: focused UI-copy tests that avoid a real Gradio import