ConstellationOfHope / README.md
cdr6934's picture
Added tags
11522be verified
|
Raw
History Blame Contribute Delete
2.85 kB

A newer version of the Gradio SDK is available: 6.20.0

Upgrade
metadata
title: Constellation of Hope
emoji: 
colorFrom: indigo
colorTo: purple
sdk: gradio
sdk_version: 6.18.0
python_version: '3.12'
app_file: app.py
pinned: false
short_description: Share a wish and watch it become a star in the cosmos
env:
  GRADIO_WATCH: 'false'
tags:
  - track:wood
  - achievement:offgrid
  - achievement:sharing

Constellation of Hope

Share a wish and watch it become a star in a deep-space sky. A small language model transforms each wish into a poetic, wise saying that lives among the constellations — and a whispered voice will read it back to you when you click the star.

Each star in the Three.js starscape represents a hope shared by someone like you. Wishes are moderated, themed, and persisted across restarts.

What you can do

  • Share a wish — type a hope into the box, release it to the stars, and watch a new star appear in the sky.
  • Hear the wisdom — click any star to open its card, then press ▶ Play wisdom to have the saying whispered back to you.
  • Explore the constellation — drag to orbit the camera, scroll to zoom. Nearby stars connect into small constellations of up to 5 stars each.
  • See where wishes come from — each star is stamped with its category (Shape · Boon · Journey · Bond · Tribute) and the date it joined the sky.
  • Gentle moderation — vulgar or harmful wishes are rewritten into a kind-hearted form before they join the sky; nonsense wishes prompt you to try again, with a soft modal explaining why.

Models

Role Model Notes
Wish moderation, theme classification, and poetic generation Qwen/Qwen2.5-1.5B-Instruct A single Qwen call judges the wish (positive / negative / nonsense), tags its theme, and — separately — composes the one- or two-sentence saying.
Whispered text-to-speech hexgrad/Kokoro-82M Voice af_nicole at 0.85× speed, dampened amplitude, to feel like a hushed voice from the dark.

Both models run on Hugging Face's ZeroGPU runtime via @spaces.GPU decorators, so the GPU is only allocated when a wish is submitted or wisdom is played.

Tech stack

  • Gradio 6.18 for the UI shell, state, and component bridges.
  • Three.js 0.160 for the starscape — custom GLSL shader gives each star a fresnel rim, value-noise surface texture, and a phase-offset pulse.
  • /data persistent storage for stars.json, so wishes survive restarts.

Configuration

Variable Default Purpose
MODEL_ID Qwen/Qwen2.5-1.5B-Instruct Override the language model if you want to swap.
STUB_MODEL unset Local-dev only — set to 1 to skip model loading and use canned sayings. Hard-disabled on Spaces.