DEV Community

Cover image for Soul in Motion — 5:01 PM | 2026-10-08
Dev Rajput
Dev Rajput

Posted on

Soul in Motion — 5:01 PM | 2026-10-08

TL;DR

  • Reverted a costly caching strategy in the ELI business project and replaced it with a growth‑oriented cache that increased reads from 0 to >2 000.
  • Built an ephemeris API (geo.py, birthtime.py) to expose star data for Satya’s astrology front‑end.
  • Fixed UI overflow in Living Books and tuned ElevenLabs voice tiers for a more natural narration.
  • Started a new open‑source cloud repo, HyperCloud, with a Flask login and a React dashboard prototype.
  • Day closed with a clear list of wins: cost control, voice quality, data API, voice tuning, and a new repo seed.

Act I – The Villain Called “Cost”

The ELI business project had a new feature: a conversation‑caching layer intended to cut voice‑to‑text and TTS calls. On paper it was a win, but the metrics told a different story—every call was pushing the bill up. I had to roll back my own PR.

git checkout a49afcd  # revert the caching logic
git commit -m "revert: remove conversation cache"
git push origin main

git checkout 609653e  # disable caching entirely
git commit -m "turn caching off"
git push origin main
Enter fullscreen mode Exit fullscreen mode

After a quick chat with Dev, we decided to keep the cache but change its shape. Instead of trying to fight growing conversations, we let the cache grow with them. Commit 0179eb3 introduced a sharded, LRU‑style cache that stores conversation histories in a Redis cluster.

git checkout 0179eb3
git commit -m "implement growth‑oriented conversation cache"
git push origin main
Enter fullscreen mode Exit fullscreen mode

Within hours the cache read count jumped from 0 to over 2 000, and the cost curve flattened. The villain was held at bay—for today.


Act II – The Stars as Data

Satya reached out with a wild idea: turn astrology into a data‑driven service. I dug into geo.py and birthtime.py, which compute ephemeris data from precise birth details. The scripts use the pyswisseph library to fetch planetary positions and then expose them via a tiny Flask API.

# geo.py
import swisseph as swe

def get_planet_positions(birth_datetime):
    jd = swe.julday(birth_datetime.year, birth_datetime.month, birth_datetime.day,
                    birth_datetime.hour + birth_datetime.minute / 60)
    positions = {}
    for planet in ['sun', 'moon', 'mercury', 'venus', 'mars', 'jupiter', 'saturn']:
        positions[planet] = swe.calc_ut(jd, swe.__dict__[planet.upper()])[0]
    return positions
Enter fullscreen mode Exit fullscreen mode

We sketched a front page and debated the voice for narrating a chart. A mismatched voice feels like a stranger reading your diary, so we spent time aligning the tone with the data.


Act III – Voices of Living Books

Living Books is a platform that reads stories aloud with real human narrators. I first tackled a UI bug where the title text spilled over the book covers.

git checkout 14bf9a0
git commit -m "fix: prevent title overflow on book covers"
git push origin main
Enter fullscreen mode Exit fullscreen mode

Next, I spent hours syncing the human voices with the text. ElevenLabs’ TTS tiers were compared like a sommelier tasting wine—looking for that subtle “alive” quality. I tweaked pitch, speed, and pause patterns until the narration felt natural and engaging. The same voice tuning principles will carry over to ELI and Satya’s projects.


Intermission – The In‑Between

Between tasks the browser wandered: ElevenLabs research, cricket highlights, memes, Netflix in the background. A black‑background Django checklist, half‑filled docs, and endless tabs reminded me that even chaos has a rhythm.


Act IV – Nightfall, a New Beginning

Evening brought a fresh repository: HyperCloud, an open‑source cloud storage platform for small teams. After a quick install marathon (Python, Docker, Kubernetes, Git) and a few episodes of Rick and Morty, I started building with Claude Code as my pair programmer.

  1. Flask login endpoint
# app.py
from flask import Flask, request, jsonify
app = Flask(__name__)

@app.route('/login', methods=['POST'])
def login():
    data = request.json
    # simple auth stub
    if data.get('username') == 'admin' and data.get('password') == 'secret':
        return jsonify({"token": "dummy-jwt"}), 200
    return jsonify({"error": "unauthorized"}), 401
Enter fullscreen mode Exit fullscreen mode
  1. React dashboard prototype
npx create-react-app hypercloud-dashboard
cd hypercloud-dashboard
npm install axios
Enter fullscreen mode Exit fullscreen mode

The dashboard currently shows an empty file list, but the skeleton is there: a FileList component that will later consume the HyperCloud API.


Epilogue

The room is still dark, the cursor still blinks, but something has changed. Today I:

  • Reduced voice cost, raising cache reads from 0 to >2 000
  • Preserved ELI’s voice quality
  • Turned star data into a usable API with Satya
  • Learned what makes a voice feel alive
  • Planted the first commit of HyperCloud

No explosions, no slow‑motion walks away—just a keyboard, a few commits, and a day that quietly added up. Tomorrow will bring new villains and new chapters. The screen will glow again.

Happy building.

Top comments (0)