Skip to content

Case study · Web app prototype · Personal data

StellarSelf: one profile from a birth date, across astrology, Human Design and five other systems.

A 2025 prototype we designed and built: a four-step chart setup, a calculation service for each system, a library of written interpretations, and XP, levels and daily challenges for learning the vocabulary.

Client
Wiserwires R&D
Service
Web app · data services · AI
Timeline
2025, archived prototype
Stack
Next.js · Express · Python · Postgres · Docker
StellarSelf Today screen redesign with level, daily transit, challenges and profile summary, on a sample profile

01

Why we built it

People who use astrology and related systems as a tool for reflection often juggle several apps: one for the birth chart, another for Human Design, a third for numerology. Each asks for the same birth data and explains it in its own vocabulary.

We wanted to test whether one profile could hold all of them: enter the birth data once, get the positions right, read plain-language texts a newcomer can follow, and have a reason to come back and learn a little each day.

The hard part is not the screens. A birth time and place have to become an exact moment in history, including old time-zone and daylight-saving rules, before any calculation is right. Our own test set included births in 1970s Romania, where those rules changed.

02

What we built

  • Chart setup

    A four-step form: name, date, time, place. Place search returns coordinates; the historical time zone and daylight-saving offset are resolved before calculating, and an unknown birth time is handled as its own case.

  • Calculation services

    Each system runs as its own Python service in Docker: planet positions and houses from the Swiss Ephemeris, Human Design, numerology, biorhythm, the Enneagram, tarot and the I Ching. The web app reaches them through one API.

  • Interpretation library

    Texts are stored per placement, transit and pairing in Postgres, so they can be reviewed and edited instead of being generated on every visit. A language-model step writes one summary across systems.

  • Progress and learning

    XP, levels with titles, achievements and daily challenges, modelled on language-learning apps, so the vocabulary sticks a little at a time.

  • Testing

    Playwright suites for the chart flow, accessibility, mobile and the API, plus scripts that compare calculated positions with reference values.

Screens · Architecture

  • StellarSelf architecture in four layers: chart setup, calculation services, interpretation library, profile and progress
    Four layers, from the birth data to a readable profile.

Screens · Redesigned screens

Redesign
  • StellarSelf Today screen: level and XP, a daily transit, daily challenges, recent readings
    Today: level, transit, challenges. Sample profile.
  • StellarSelf natal chart wheel with placements table and one reading
    My chart: wheel, placements and a reading. Sample values.

Screens · Mobile

Redesign
  • StellarSelf mobile Today screen with XP bar, transit card, challenges and next lesson
    Today on a phone, redesign.

03

Where it stands

  • 230

    commits between July and December 2025

  • 7

    systems in one profile

  • 14

    services in the Docker deployment

  • 35

    API routes in the December rewrite

Status, October 2026: archived prototype. It ran on our own server until that server was retired and is not live today. The screens on this page are a redesign with a sample profile; no real user data is shown.

04

What a relaunch would need

New hosting for the calculation services, a human editor to review every interpretation text, and a clear statement in the product that readings are for reflection and entertainment, not advice.

Birth date, time and place are personal data. A relaunch would store them encrypted, let people delete their profile in one step, and keep the AI summary optional.

Building an app with real calculations and a lot of content behind it?