all things vedic · changelog

Release Notes

A running log of what's been added or changed in the Astrology 101 quick reference, freshest first.

v4.72.7 · current

10 May 2026

The site has moved from https://sreebalakrishnan.in/astrology101 to https://atv-companion.sreebalakrishnan.in — its own subdomain, no path prefix. All hardcoded URL references in the codebase swept and updated.

Files updated

What stays unchanged

Side benefit for analytics

The Cloudflare dashboard was configured for atv-companion.sreebalakrishnan.in from the start. Until today, traffic from sreebalakrishnan.in/astrology101 still got counted (token does the auth, not the hostname), but the dashboard's hostname grouping showed "(other)". With the move, the dashboard hostname now matches the actual traffic — clean grouping in the Cloudflare console going forward.

Deferred — _root/

The _root/index.html file still has an og:url pointing at the old sreebalakrishnan.in. That folder is excluded from deploys (per the rsync exclusions in the workflow), so it's not in production. Left untouched as cosmetic-only.

v4.72.6

10 May 2026

Cloudflare Web Analytics is now live across all 23 pages — page-views only, no cookies, no fingerprinting, no individual tracking, no banner needed. Sree can finally see which pages the cohort actually opens (is anyone reading elements.html? does interpret.html stick? is jupiter-tracker.html getting traffic?) without compromising the calm-page property the rest of the site has protected.

Why Cloudflare Web Analytics, not GA4 / Plausible

What changed

What it tracks

Page URL · referrer · approximate country · browser/device family · time of visit. Not tracked: IP addresses (anonymised on Cloudflare's edge), individual users (no cookies / persistent identifiers), button clicks or scroll depth, anything that could re-identify a cohort member. The dashboard answers "is this page being read?" — not "who read it?"

Open follow-ups

If, in a few weeks, Sree wants events too ("did anyone open the Cabinet drawer?", "how many people clicked the technical pane?") — Cloudflare doesn't do custom events; we'd add Plausible alongside (~$9/mo) or wait until Firebase rollout brings Firebase Analytics. Filed for later.

v4.72.5

10 May 2026

Tidy on the changelog itself — five contributor-attribution corrections + three name canonicalisations across the release-notes archive. The contributor-chip index at the top of this page is auto-generated from data-credits attributes, so cleaning the credits cleans the chip row too.

Re-attributions

Name canonicalisations

Why this matters

The contributor index at the top of release notes parses every data-credits attribute and builds clickable chips per name — clicking a chip filters the changelog to releases that person shaped. Without canonicalisation, the same person showed up as multiple chips ("Arpi" + "Arpitha", "Sathvi" + "Sathvika"). Now one chip per person, and clicking it surfaces every release that name actually contributed to.

Going forward

Rule of thumb when adding new data-credits: use the canonical first name only (Arpitha, Sathvika, Vikram, Yash, Sree, etc.). Sub-clauses in parentheses are fine for context. If unsure who deserves credit, ask or attribute to Unknown.

v4.72.4

10 May 2026

Four targeted fixes in § Four — The Planetary Cabinet after Sree caught a vocabulary mismatch between LC's UI and what Vikram actually says in class. The page used "Honoured / Dishonoured" as poetic UI labels. Vikram never uses those words in transcripts — he says exalted / debilitated or the Sanskrit Uchhasthāna / Nīchasthāna (Uccha / Neecha). Fixed.

1 · Vikram's vocabulary added next to the UI labels

Cabinet lede now reads: "Where a planet is honoured (exalted · Uccha) or dishonoured (debilitated · Neecha)…". Both table headers (Wheel of Honour + Learning Companion · nine planets) carry the secondary terms in a smaller muted style. Both sub-ledes echo the pairing. The data-structure keys (honoured / dishonoured) are kept internal — only visible labels changed.

2 · "Count 7 from exaltation" rule surfaced

Vikram states this rule three times across S23–S25 — "if you count 7 from exaltation, you'll reach debilitation". Verified astronomically: every classical pair (Sun-Aries↔Libra, Moon-Taurus↔Scorpio, Mars-Capricorn↔Cancer, Mercury-Virgo↔Pisces, Jupiter-Cancer↔Capricorn, Venus-Pisces↔Virgo, Saturn-Libra↔Aries, plus Rahu/Ketu) is exactly 6 signs apart = 7th house counting inclusively. A saffron-bordered shortcut callout now sits at the top of the "How exaltation and debilitation work" story panel.

3 · Vikram's "fear-mongering" caveat captured

Inside the same panel, a saffron-outlined pull: "Debilitation is used as a fear-mongering tool — you have to do shanti, you have to do homa. Don't get caught in that. The cancellation rules exist; we'll see them slowly." (Vikram, S25). Important teaching disposition that was missing from the page.

4 · Forward-pointer to Neechabhanga in § Yogas

Same callout closes with a soft "stay tuned for Neechabhanga Raja Yoga in § Yogas later" pointer. § Yogas currently only carries Parivartana (the one yoga Vikram has formally taught at beginner level); when Neechabhanga lands there, this pointer becomes a deep-link.

What's not changed

Story panel substance, the cabinet narrative, the Wheel of Honour data, Court Call quiz, and § Five (Planets) — all left alone. The story is exactly as Vikram tells it; we just added Vikram's actual terminology so when learners go back to the recordings, the words match what they read here.

Specific exaltation degrees

Worth noting: Sun 10° Aries, Mercury 15° Virgo, etc. are not in our KB. Vikram doesn't teach them at this level — sign-granularity only. So the page correctly stops at sign-level too. If degrees ever get added to planets-classical.json, they'll naturally surface here.

v4.72.3

10 May 2026

Two small but important touches in the home-page "how today's sky was built" modal — making the sidereal frame impossible to miss.

1 · Sidereal · Lahiri tag in the modal header

Right next to the title "how today's sky was built" a small saffron sub-tag now reads · sidereal · Lahiri — visible the moment the modal opens, regardless of which pane is active. Tells you what frame the chart is in before you read a word.

2 · One-line callout at the top of each pane

A saffron-bordered first line on each pane explains it plainly:

Both callouts sit ABOVE the first heading, so readers see the framing before any architecture detail.

Why this matters

Anyone arriving from a Vikram cohort needs to see "sidereal" in the first second. Anyone arriving from a Western-astrology background needs to know we're not in their frame. One word, one badge, one line — done.

v4.72.2

10 May 2026

Two changes to the home-page "how today's sky was built" modal. The learner pane was rewritten so it leads with "the math runs live in your browser" as Step 1, instead of burying that as Step 5 under "once a month a program runs". The modal is now link-shareable — there's a § button in the header that copies a deep-link to whichever pane is open, and pasting that URL anywhere reopens the page right at that view.

1 · Learner pane reordered

The old order had readers walking past four steps about static computation before learning the page is actually live. New order:

The technical pane was already correct from v4.71.8; trimmed the "(v4.71.8)" version stamp and updated the footer signature to v4.72.2.

2 · Deep-linkable + copy-link button

Three URL hashes now open the modal directly:

A small § button in the modal header copies the right URL for whichever pane is currently active. Click it, paste anywhere, recipient lands on the right view. Hash is updated when the user switches tabs (so the URL always reflects what's on screen) and cleared when the modal closes. Back/forward navigation also works — hashchange handler opens or closes the modal as the URL evolves.

Use cases

WhatsApp Vikram a link directly to the technical pane. Drop the learner-pane URL in a cohort message. Embed the hash in a class invitation so newcomers land on the explanation. Same modal, three audiences, three shareable URLs.

v4.72.1

10 May 2026

Made the cross-link bidirectional. elements.html already deep-linked into Learning Companion's #qualities anchor + back to the reference in its footer. The other direction was missing — LC's "Elements, Modes & Duality" section had no inline pointer to the new lab; readers in that section couldn't see it. Fixed.

What changed

Inside LC's § Two — Elements, Modes & Duality section, just below the "Pairing of the four Mahāśaktis" subhead and above the four-up element grid, a new saffron-bordered callout: "→ See the cohort's break-out exercise alive on the Elements lab — image, song, food, brand, animal, news per element, gathered across Sessions 11, 13, 17 & 18b. Plus a 'which element is showing up?' check and a personal element album."

That makes the cross-reference symmetric:

Why this matters

The Elements lab is where the felt-sense lives; the Qualities section is where the formal definitions live. A learner reading "Earth = practical, grounded, Mahasaraswathi" wants the option to step sideways into "what did Aditya share that felt like Earth?" without hunting through a menu. Now they can.

v4.72.0

10 May 2026

A new peer page — elements.html — bringing back Vikram's break-out exercise from across the year. Sessions 11 (Earth), 13 (Water), 17 (Fire), 18b (Air + synthesis), and 22 (the "which element is showing up?" check). What you remembered as one early exercise was actually a four-part arc; this page collects all four into one place.

What's on the page

Vikram's intent, captured at the top

The pull-quote on the page is the one I think you'll keep coming back to: "Images can be very powerful way of connecting with planets, signs, houses, elements… that itself will be a gateway to your intuition. That is what we are trying to tap into — intuition, not memory." (Vikram, Session 17.)

Cohort names

I attributed each tile to whoever shared it in class — first names only, matching the convention ether.html already uses for retreat attendees. The transcripts capture them speaking openly in class, but if anyone would prefer their tile anonymised ("a cohort member shared…"), it's a one-line edit per tile.

Wired into the More menu of every page

Elements now shows up in the More menu across all 17 active pages, between Where am I and Interactive · beta — discoverable from anywhere on the site.

Pedagogical arc

Set up by Yin/Yang and Cardinal/Fixed/Mutable in Sessions 8–9; layered on top in 11/13/17/18b; re-applied in S22 with a movie clip; carried forward into chart interpretation when Vikram asks the cohort to name "sign, element, modality, duality" for each house. The element-as-felt-sense built in this exercise becomes the raw material for those readings.

What's deferred

The "balance the elements" diagnostic Vikram ran in S17 (which element is over-active in your chart, which is under-active) belongs alongside the personal album but needs the chart-reading flow to be wired in — that's a v4.72.x follow-up. Also: image upload into the personal album (currently text-only) is filed as a future addition — keeping it simple for v1 to ship today.

v4.71.8

10 May 2026

The home-page chart is now real-time sidereal. Planet positions are computed live in the browser via astronomy-engine (Don Cross, MIT) and converted to Lahiri sidereal client-side. The static today-sky-data.js file stays as a graceful offline fallback. Three goals coexisted: real-time freshness, sidereal correctness, and works offline. We hit all three.

What's new under the hood

Why this honours "the page works without internet"

Same constraint as before. The CDN script is async + non-blocking. If it never arrives, the page renders normally from the static fallback. If it arrives late, we re-render. If it's blocked entirely, no error surfaces — the user sees yesterday's snapshot, sidereal Lahiri, exactly as they did in v4.71.7. The only meaningful change for offline users: the Moon's intra-day motion isn't tracked. Sun-sign reading is fine; Moon is within ~6° of correct.

"How it was built" pop-up updated

The technical pane on the home page now reflects the new architecture — live computation as the happy path, the static file as fallback, the boot sequence with the late-arrival retry. Vikram and the engineering-curious can click "how it was built" in the centre cell of the chart to see the full picture, including the exact astronomy-engine calls and the Meeus formula for Rahu.

What this opens up

Real-time motion. The Moon now visually shifts signs within a day if you reload at the right moment. Retrograde detection becomes a one-line addition (v.x sign change). Birth-chart overlay is now a small extension rather than a re-architecture — same engine, just a different date.

v4.71.7

10 May 2026

Stats page refreshed against the live numbers. The page had been frozen since around v4.7.0 — claiming "7 HTML pages, 18.7K lines, 58 transcripts." Reality at v4.71.7: 22 pages, 47.6K lines, 43 numbered transcripts (May 2025 → 3 May 2026), 14 MB of knowledge base on disk, 128 release entries, 36 named contributors. Also patched tools/build-stats.py so it auto-discovers HTML pages instead of carrying a hardcoded list of seven.

Numbers refreshed across the page

Why the script was wrong

tools/build-stats.py had a hardcoded list of seven pages: the original set from v4.29.0 (when stats.html first shipped). Every page added since — index, interpret, where-am-i, sripati, ether, jupiter-tracker, layers, catch-up, reflect, interactive, about, pricing, plus a few redirects — was invisible to the script. Patched html_stats() to root.glob("*.html"), so future bumps pick up new pages automatically.

What the page itself looks like now

Same structure — four sections (Vikram's class, Static HTML, Quick Reference, The cohort, How it stays honest). Same visual language, same stat-card grid. Just truthful numbers throughout. The closing "Auto-counted, not hand-counted" callout finally lives up to its name now that the script auto-discovers.

v4.71.6

10 May 2026

Two small ones. Sree's Loom intro is now embedded on the home page (replacing the dashed placeholder that's been sitting there since v4.68.0), and the build pipeline got a quiet upgrade so it stops leaving .bak artifacts behind every version bump.

1 · Loom intro embedded

The "A short introduction from Sree" section on the home page now renders the actual Loom video — 2d286ea…f8dec — in a responsive 16:9 frame. Lazy-loaded (loading="lazy"), so it doesn't fetch the player until the user scrolls down to it. The page itself still works without internet — the iframe just doesn't play if you're offline.

2 · Build hygiene — no more .bak files

Earlier today's bumps used sed -i.bak, which always writes a sibling backup file. That cluttered the working directory with 18 *.bak files (~3.4 MB) per bump and snuck three *.bak2 files into git. Switched to a Python file-rewrite that doesn't create artifacts. .gitignore hardened to also catch *.bak2 and *.bak.* patterns as a belt-and-braces against future incidents.

What didn't change

The home page layout is unchanged. The chart, centre cell, "how it was built" modal (v4.71.1), and Daily Gem all stay where they were. The Loom is the same 60-second slot it has always occupied — just with content in it now.

v4.71.4

10 May 2026

Final cut on the LC search. The masthead search bar is gone. The modal — the experience you called "very refined" — is now the only search surface. Opened from the always-visible Search pill (top right), the / keyboard shortcut, or the bottom-of-page "Search again" CTA. The example chips moved into the modal's empty state, where they now belong.

What's gone

What changed

Why this won

Three iterations on this in a single day: v4.62.0 added the masthead bar; v4.71.2 demoted it to a passive trigger; v4.71.3 fixed its chip examples; v4.71.4 just removed it. The lesson — your instinct from the start was right: one canonical search experience is better than two, even if the second one looks helpful. The modal's depth (500+ indexed items, drawer-or-jump dispatch, keyboard nav, diacritic-folding) was always the answer.

Cleanup deferred

The masthead-search JS IIFEs (the typeahead at line 12242, the form-submit handler at 12655) are kept as dead code for one more release. They self-skip when the form/input doesn't exist (if (!input || !box) return;). Same for the .lc-masthead-search-* CSS rules. Removing them is a follow-up.

v4.71.3

10 May 2026

Two fixes on the LC search experience. The example chips below the search bar were showing diacritic Sanskrit (Mūlatrikoṇa, Kāla Puruṣa) — terms nobody types and that, when clicked, returned "No matches in the Companion" because the search index keeps the IAST source ("mūlatrikoṇa") and the user's typed form ("mulatrikona") never matched. Two layers, both fixed.

1 · Chips are now English / typeable

Replaced Drishti · Parivartana · Mūlatrikoṇa · Kāla Puruṣa with Houses · Cabinet · Aspects · Yogas · Avatars · Ascendant. Every chip now shows a term a learner could plausibly type AND the modal returns useful results for. The Sanskrit terms are still findable — just not held up as the example.

2 · Diacritic-folding in the search

Added a two-step Sanskrit fold to searchQuery(). Step 1: phonetic transliteration of consonants users would write with "h" or "i" — ṛ → ri, ṣ → sh, ś → sh, ñ ṅ ṇ → n, ṭ → t, ḍ → d, ḥ → h, ṁ ṃ → m. Step 2: NFD-strip the remaining combining marks so ā ī ū become a i u, then lowercase. Result:

The fold is cached per index entry on first hit, so the runtime cost stays at one String.normalize per entry per session.

What's deferred

The masthead's dead-code helpers from v4.71.2 (KW array, render(), submitWith(), pushRecent()) are still untouched. They cause no harm but should be cleaned up in a follow-up. And the section-level content for Mūlatrikoṇa as a standalone concept (degrees per planet, why it matters in interpretation) still isn't a first-class drawer in the Companion — only mentioned inside planet content. Filed for v4.72.x.

v4.71.2

10 May 2026

LC search UX cleanup. The masthead search bar (added in v4.62.0) ran its own inline suggestions dropdown and on submit opened the canonical "/" search modal — so users were effectively answering the search question twice. Now the masthead bar is a passive trigger: focusing or clicking it opens the same modal directly. One search, one place. The modal — the experience you said felt "very refined" — is now the single source of truth.

What changed

What got dropped

The inline dropdown's curated KW array (~50 hand-picked keywords), the recent-searches store at the masthead level, the "did you mean…" Levenshtein logic, and the exact-match preview block. The modal's SEARCH_INDEX (500+ items, page-aware) is richer than KW ever was, so nothing the user could find before is missing now. The dead-code helpers in the original masthead IIFE are kept for one release as a safety net; they'll be removed in a follow-up.

Why this won

Two surfaces with different indexes were the problem. The bar was promising a search the modal then re-did, with results from a different (richer) source — confusing. Demoting the bar to a thin trigger keeps the visual affordance ("you can search here") and the canonical /-shortcut behaviour everyone learned, while removing the redundancy entirely.

Why a v4.71.2 not a v4.72.0

This is small and surgical — about 30 lines of code touched in the masthead IIFE plus the / handler — and it's a UX tidy on top of the v4.71.x line. Group B from the sessions 39–43 mining (four-intent rewriter, yoga first-pass, "feel the planet" prompts, retrograde line) is the next minor release.

v4.71.1

10 May 2026

Two changes on the home. First — dropped the "what's notable today" list under the chart; the page is now just the chart, the centre cell, and Daily Gem. Second — added a "how it was built" trigger inside the centre cell. Clicking it opens a single modal with two tabs: For learners (plain English, no code) and Technical (astronomy formulas, code excerpts, file structure). Two artifacts, one launch surface.

For learners

Five short steps in plain language: where the planets actually are; the tropical → sidereal (Lahiri ayanāṁśa) step; the South Indian chart layout; the live Lagna marker; why the page works without internet. No code, no equations. Designed to be readable by someone three weeks into Astrology 101.

For Vikram + the engineering-curious

Nine sections: stack at a glance, ephemeris generation (PyEphem + the Rahu mean-node analytic formula), the Lahiri linear approximation, the JSON+JS dual-output trick (and the file:// CORS bug behind it), the CSS-Grid named-area chart layout, the full Lagna calculation with the quadrant-correction step (and the bug we hit at noon when atan2 landed 180° off), the four anchor-time verification, the monthly refresh routine, and the file list. Code excerpts are short and inline.

Why the "notable today" list went away

Sree's call: keep the home page minimal. The page now reads: chart, centre cell with date/time/location/how-built, Daily Gem. Nothing else. The notable-today list duplicated what the chart already shows visually, and the link-out actions belong on the Learning Companion, not the home.

How to open it

Click the dotted "how it was built" link inside the centre square of the chart. The modal opens with the For learners tab active. Toggle to Technical for the depth. Esc or the backdrop closes it.

v4.71.0

10 May 2026

Group A from the sessions 39–43 mining: four procedural fixes Vikram has been hammering on in the Google Doc reviews. All land in Interpret · beta's Path A (House walk).

1 · "Bracket your sources" hint on the writing pad

Above the textarea is a new dismissable hint: after each word, note where it came from in brackets — wisdom (Jupiter) through reflection (yin). If brackets reveal a wrong source, the line is wrong even if it sounds right. Source: Session 41, Vikram's most-repeated correction across the cohort's submissions. Saved-as-dismissed in localStorage (astro-mychart-pad-bracket-hint-v1) so it stays out of the way after you've internalised it.

2 · Live "8-billion-people" warning above the textarea

As you type, if your sentence combines the karaka keyword for the current house and the house keyword without any sign building block (yang/yin, cardinal/fixed/mutable, fire/earth/air/water, or a sign name), a soft saffron warning surfaces: "Karaka of House N is [planet] — that pairing is true for everyone. Combine [planet]'s keyword with the sign [planet] sits in, not with House N's keyword." Detection is word-boundary regex over the textarea contents; the warning is non-blocking and disappears the moment the line passes the test. Source: Session 41 — the rule that already existed as a static reminder in the self-check is now a live nudge in the moment of writing.

3 · "Don't chase the dispositor" callout in Step 3

Inside the Pati / Ruler block, a new saffron-tinged stop sign: "When you reach planet-in-sign, write. Don't chase the dispositor further — Mercury → Sagittarius → ruled by Jupiter → in Cancer → ruled by Moon… 'all this is not needed.'" Source: Session 41, near-verbatim from Vikram. The depth-first dispositor walk was a recurring failure mode in submissions; this catches it before the user starts.

4 · Step 4b · "Aspects on the Karaka"

A new sub-step appears immediately after the Karaka block: "Look at your chart. Is anything aspecting your [karakaPlanet]? Count this separately from aspects on House N itself — the two questions are different." Includes Vikram's worked example for the 9th: nothing aspects the 9th, but Mars aspects Jupiter (the karaka of the 9th) — and that aspect carried the read. The card also includes the rule-of-thumb aspect rules (everyone aspects 7th; Mars also 4+8, Jupiter 5+9, Saturn 3+10). Read-only learner prompt — no aspect engine yet (deferred to a separate KB+JS effort).

What didn't land in this release

The other recommendations from Group B (four-intent sentence rewriter on the synthesis card; first-impressions yoga-scan card; experiential "feel the planet" prompts on Path B; retrograde line on each planet card) are queued for v4.72.0 onwards. They depend on slightly more data (yoga rules, retrograde detection) and on a separate UX cut.

Cohort homework rhythm

Across all five sessions Vikram repeats: make sentences for each planet in each sign yourself, then look at the deck. Eventually a "this week's homework" strip should pull from the latest transcript and surface near the path-intro card. Filed for a follow-up.

v4.70.3

10 May 2026

Hotfix on the LC search dropdown. Clicking the search bar showed all suggestions stacked vertically and centre-aligned because the .hero-suggest-* CSS rules were missing entirely (probably dropped during a much earlier merge). The JS was rendering the right HTML; the styles just weren't there. Now the dropdown panel renders as intended — group headers, two-column rows (label on the left, category pill on the right), the foot row with hint, and the "did you mean…" + exact-match preview blocks.

What was missing

Twelve rules covering .hero-suggest, .hero-suggest-group, .hero-suggest-group-h, .hero-suggest-item (the flex-row row that holds the label and the category pill), .hero-suggest-name, .hero-suggest-cat, .hero-suggest-foot, .hero-suggest-empty, .hero-suggest-dym, and the exact-match preview block (.hero-suggest-preview + name + cat + blurb).

How it slipped through

Pure CSS regression. Nothing in the JS ever surfaced an error — every class name resolved, every node rendered, the keyboard nav worked. It just looked broken. A reminder to run a manual visual check on the LC search dropdown when touching anything in the masthead area.

v4.70.2

10 May 2026

Tidy on the home chart: the date was being shown twice (once above the chart, once inside the centre cell). Kept the inside one. And added the most-asked-for marker on the chart — the Lagna / Ascendant, computed live for the current moment at the centre-cell location. Plus a KB-only update: class transcripts 39–43 ingested.

Cut · remove duplicate date above the chart

The masthead used to read "10 May 2026 in the sky" while the centre cell also showed "10 May 2026". Now the heading is a static "today in the sky" and the date lives only in the centre cell, where it sits alongside time and location. One clear source of truth.

Add · Lagna / Asc marker on today's chart

KB · class transcripts 39–43 imported

Five new class transcripts came in — Ether Debrief & Sun (5 April), The Moon and Houses (12 April), Improving Interpretations & 9th House (19 April), Mars (26 April), and Mercury & 10th House (3 May). Each is now a markdown file in astrology-101-knowledge-base/transcripts/ with the established naming convention. _mapping.json, INDEX.md, and HANDOFF.md all updated. Caught one duplicate file in the source folder ((38).docx(37).docx) — flagged in the KB notes.

Caveat for the Asc marker

This is the current Lagna at this location, not your personal birth Lagna. To mark your own Lagna we'd need your birth time + birthplace, which is a v4.71+ piece (a tiny "set my chart" form that overlays a separate marker). For now the saffron Asc badge answers "what's rising right now" — useful for muhūrta-style reading and for getting familiar with how the wheel turns through the day.

v4.70.1

10 May 2026

Hotfix on Today's Sky on the home. The chart was rendering empty because the data was loaded via fetch(), which fails on file:// origins (CORS). And the chart layout was a custom one rather than reusing the proven .stage + .chamber pattern from Interpret · beta. Both fixed.

The two issues

Fix · script-tag data loading

The Python generator now writes two files: today-sky-data.json (for any future server-side use) and today-sky-data.js (a thin wrapper that sets window.__todaySkyData = {...}). The home now loads via <script src="today-sky-data.js">, which works on file:// — no CORS, no fetch. Browser script tags don't have origin restrictions for local files in the same directory.

Fix · adopt the interpret.html chart layout

Refresh routine — unchanged

Run python3 scripts/generate_today_sky.py on the 1st of each month. It now writes both files (JSON + JS wrapper) in 15 seconds.

v4.70.0 ships in the same release window — the home rebuild, Daily Gem migration, copy-anchor pattern, and version bump all stand. This hotfix is purely about getting the chart to actually render.

v4.70.0

10 May 2026

A major rearchitecture. Home is now the "today" page — Today's Sky chart at the top showing where every graha is in the sidereal sky right now, plus the Daily Gem migrated from LC, auto-rotating every visit. The home search bar is gone. Per-section copy-link pills have been replicated across every chrome page (LC, Astronomy, Mercury Spectrum, Jupiter Tracker, Kāla­purusha, Ether, Reflect, Where am I, Catch up, About, Release Notes). The LC inline-search refactor (search results render inline instead of in a modal) ships in v4.70.1 — splitting it out to keep this release stable.

New on home · Today's Sky

Daily Gem · home

Home search bar · removed

Per the rearchitecture decision, the home search input + typeahead dropdown is gone. Search lives on the LC, where it belongs. The home becomes a quiet, contemplative landing — Today's Sky, Today's Piece, three rooms.

Per-section copy-link · site-wide

The pattern shipped on Sripati in v4.65.1 has now been lifted to every chrome page. Hover any section heading on desktop (or just look for the always-visible pill on touch) and you get a small § link button — click to copy the canonical URL with anchor. Eleven pages got the module: LC, Astronomy, Mercury Spectrum, Jupiter Tracker, Kāla­purusha, Ether, Reflect, Where am I, Catch up, About, Release Notes. Standalone JS — walks every section[id], no markup changes required.

What's deferred to v4.70.1

These are the biggest UX wins from the demo with Anil, but they touch the LC search engine internals deeply enough that I'm splitting them into a follow-up release this week so v4.70.1 stays stable. Today's release ships the home rebuild + copy-anchor pattern — the most user-visible new features.

Today's Sky pipeline · refresh procedure

To refresh the data: open the workspace, run python3 scripts/generate_today_sky.py, and it regenerates today-sky-data.json for the next 13 months. Takes about 15 seconds. Set a calendar reminder for the 1st of each month.

v4.69.1

10 May 2026

A Jupiter release. New peer page The Jupiter Tracker, built straight from today's session — Vikram's auction game where everyone bid 100 coins on financial security, recognition, pleasure, good fortune, protection, wisdom, children. Eight slider pairs from false expectation to divine grace, three reflection prompts, an embodiment practice that surfaces from your lowest score, and the auction story as the page's origin.

The eight pairs

Drawn directly from the auction-game arc and the discussion that followed. Each pair carries a small embodiment practice that surfaces when you score low on the shadow side:

Vikram's three reflection prompts

Embedded as private textareas on the tracker, saved only in your browser:

  1. Where in your life have you felt protected? Even if it didn't appear as protection in the moment.
  2. What appeared as a loss — a failure, a missed opportunity — that turned out to be a blessing in disguise?
  3. One blessing you received in life, but you don't fully feel you deserved.

Embodiment practice surfaces from the shadow

When you slide a pair into the shadow side (≤ 5/10), a small saffron card appears at the bottom with one practice for the day. Hoarding low → give one thing away. Doubting blessings low → name three blessings before sleep. Bookish knowledge low → take one teaching you know intellectually and apply it once today. If everything is on the grace side (≥ 7/10), the card congratulates you and asks you to name one blessing you're inhabiting before the moment passes.

Cross-app updates triggered by the class

What's next

LC Planets · Jupiter content (currently a stub) and LC Yogas · Hamsa Yoga / Guru-Chandala / Dhana Yoga full write-ups land in v4.69.2. Today's release ships the tracker and the cross-app links so the cohort can use the page tonight while the class is fresh.

v4.68.2

10 May 2026

Search gets a serious upgrade. The home dropdown now has recent searches, did-you-mean for misspellings (especially Sanskrit), category groups with italic headers, and an exact-match preview card with one-line blurbs for ~80 keywords. The Learning Companion gets its own masthead search bar, a sticky pill that appears once the masthead scrolls away, a "/" keyboard shortcut, and a "Couldn't find it?" CTA at the bottom. Inspired by Google, Notion, Spotlight, Algolia DocSearch.

Why this happened

From Anil's demo: he didn't know he could search the LC until Sree pointed at the small pill. Search exists; the *signal that you can search* was missing. From everyone: a basic typeahead doesn't help much when learners half-remember a Sanskrit name like "Krishn" or "Sripathi." Search needs to be smart enough to handle imperfect spelling, and visible enough that nobody has to ask if it's there.

Home search — four new states

Learning Companion — search becomes findable

Recent searches — privacy

Lives in localStorage only (astro-recent-searches-v1). Last 5 queries. Nothing leaves the browser. Cleared if the user clears their site data; not synced anywhere.

Inspired by

Google's autocomplete + did-you-mean. Notion / Linear / Stripe Docs's command-palette pattern (recent + categorized + group headers). Apple Spotlight's italic group headers + the idea of preview cards. Algolia DocSearch's hierarchical breadcrumbs. We deliberately skipped Cmd+K overlay, trending searches, and other power-user patterns that would feel app-y rather than reading-room. The contemplative tone stays.

Easy to extend

The keyword inventory is one array of {q, cat, alt, blurb, popular} objects at the top of the typeahead module — currently ~80 entries with most concepts having one-line blurbs. As learners surface searches that fall through to the empty state (and feedback comes in via WhatsApp), the list grows. The module is shared (same logic) between home and LC.

v4.68.1

10 May 2026

Two upgrades to the home search. Typeahead suggestions as you type — a curated dropdown of ~85 keywords (signs, planets, houses, avatars, concepts, app pages) with category labels. Plus a richer empty-state: when nothing matches, learners can search anyway, jump into the Companion to explore, or send Sree a WhatsApp with their query pre-filled.

Typeahead on home

Empty-state — when nothing matches

If the typed query matches none of the 85 keywords, the dropdown shows a small panel with three CTAs:

Same empty-state inside the Learning Companion

The full LC search engine (the modal that opens when you click the search pill or land via ?q=) also got the upgrade — when its index returns nothing, the same three CTAs show up: Open Learning Companion · Tell Sree what you wanted. Both empty-states use the same WhatsApp number and the same pre-filled-message pattern.

Keyword set is a starting point

~85 entries is curated, not exhaustive. As learners surface searches that fall through to the empty state (and feedback comes in via the WhatsApp link), the inventory will grow. The data structure (an array of {q, cat, alt} objects) is intentionally simple so adding new entries is a one-line edit.

v4.68.0

10 May 2026

Bundle of onboarding upgrades after Anil's demo. A new Catch up page for missed classes (Vikram's #1 ask from the seniors group). A shareable ?role=senior URL flag that auto-flips Learning Companion to Reference + All (Sarika ask). A dark-mode audit so iOS Safari stops bleeding system dark through the cream theme. Plus a Loom-intro placeholder on home, ready for Sree to record into.

New: catch-up.html · "Missed a class?"

The strongest signal from Anil's demo was unspoken — when he said "I missed the Sripati class. I'll learn from this instead." Time-poor seniors miss classes; the app should be the way they catch up. The new page lists every Astrology 101 session, newest first, each with one paragraph on what was covered, an in-class Vikram quote, and direct links to the deeper material. The page also accepts ?session=37 to filter to one session — used by the per-page "If you missed this class" cards (see below).

Per-peer-page · "If you missed this class…" cards

Pattern shipped on Sripati and Astronomy first. A small saffron-bordered card sits between the masthead and the body, naming the class the page covers (session number + date), telling you what's on the page in one sentence, and linking back to Catch up filtered to that session. Will propagate to the other peer pages in a follow-up.

Shareable ?role=senior URL flag

Sarika asked for a way to share a link that opens the Companion already in Reference mode with level All — no soft-locks, everything open. Now possible. Append ?role=senior to any Learning Companion URL and the page applies the settings on load (and persists them, so reload keeps them). Also accepts ?mode=reference and ?level=all as direct overrides. A small toast confirms "Senior view: Reference mode · all sections open".

Dark-mode audit + fix

From Anil's demo: "I just don't like a black background." Likely iOS Safari was bleeding system dark mode through despite our color-scheme: light only meta. Fixed by adding html { color-scheme: light; background-color: var(--bg); } as an explicit rule on every page (16 pages updated). Forces the cream background at the html element so no dark colour can leak through from system preferences.

Home additions

What's next

Roll the "If you missed this class" pattern to Mercury Spectrum, Kaalapurusha, Ether. Add catch-up entries when each new session lands. Record the Loom and replace the placeholder.

v4.66.0

10 May 2026

Major release. The home page is rebuilt around search instead of nine equally-weighted doors. read.html is renamed to interpret.html with a clearer label — Interpret your chart · beta — and the old URL redirects. The cohort photo, the blue file, and the nine-door grid all moved to a new About page. Site-wide regression run.

Why this happened

Vikram is about to share the app with the seniors group and worried it would feel overwhelming. The diagnosis was that the home page was asking visitors to make a structural choice (nine doors) before they had tasted anything. For seniors with prior 101 context who just want to look something up, the right mental model is search, not a museum of rooms.

The new home

read.html → interpret.html (renamed; old URL redirects)

About page · how this came to be

A new about.html is the home for the longer story: the cohort photo from the Ether retreat, the infamous blue-file origin story, and the full nine-door "All the rooms" grid that used to live on the home. Existing inbound URL anchors like #cohort and #origin are preserved on the About page.

Pedagogy notes

Three principles guided the rebuild: give value in under sixty seconds before asking the visitor to make choices; one primary action on the landing page, not nine; depth available, not advertised. Net effect: the home went from ~24 visible routes to roughly 9 (search + 6 chips + 3 rooms), with everything else one click away in More.

Regression

Verified across all 14 active pages: every page eyebrow + footer reads v4.70.1, every PAGE_VERSION constant is on '4.70.1', every More menu has both Interpret · beta and About entries, and every internal href="read.html" has been swapped to interpret.html. The redirect file at read.html handles any cached or external links to the old URL.

v4.65.1

10 May 2026

Every section heading on Sripati Paddhati now has a small § link button next to it. Hover the heading on desktop, or just look for the pill on mobile, click it, and the link to that exact section is copied to your clipboard — ready to paste into a chat with Vikram or Arpitha.

How it works

Why this is useful

Sripati is the longest peer page in the app and the conversations it triggers usually circle around one specific section — "how does the trisection work again?" or "can you re-read the bit about M.C. and zenith?" Sending a friend the right paragraph beats sending them the whole page and saying "scroll to § Five." This makes that one click.

The pattern is light-touch and self-contained — pure JavaScript walking each section[id], no markup changes needed. If it lands well on Sripati, it can be lifted into the other peer pages in a follow-up release.

v4.65.0

10 May 2026

Substantial update to astronomy.html. A new opening section makes the geocentric foundation explicit — the chart is the visible sky from where you stand — and the Stellarium Lab at the end is rebuilt around deva.guru + Stellarium open at the same time, on the same birth details, so the chart and the sky reveal themselves as one thing.

New § One — The Geocentric View

Every section that follows depends on this one. Vikram explicitly names the geocentric frame on the whiteboard in Session 18 ("we have the geocentric view, and because the earth is tilted, the equator is going to be tilted…"); the page now opens with that quote and unpacks what it means. Vedic astrology is not abstract. It is what the eye can see, slowed down enough to study.

Rebuilt § Nine — The Stellarium Lab · sky & chart side by side

The previous Stellarium Lab told you to open Stellarium and step outside. The new version pairs Stellarium with deva.guru and walks the cohort through using both together — the realisation Vikram is pushing is that the chart on your screen and the sky outside your window are the same thing. One is the geometry written down. The other is the geometry, alive.

Renumbering & TOC

Inserting the new § One pushed the existing eight foundations down: Solar System → § Two, Ecliptic → § Three, Coordinate Systems → § Four, Celestial Equator → § Five, Eclipses → § Six, Apparent Motions → § Seven, Precession → § Eight, Stellarium Lab → § Nine. The TOC was updated to "Nine foundations" and the masthead now leads with "Astronomy and astrology are intertwined — the chart is the visible sky, slowed down enough to study." URL anchors (#solar-system, #ecliptic, #coords, #celestial-equator, #eclipses, #motions, #precession, #stellarium) are unchanged so any inbound links still resolve.

Sources

Primary source for the new § One is Vikram's whiteboard moment in Session 18 · Retreat Debrief, Parashurama & Stellarium, where he explicitly names the geocentric view while drawing the celestial equator. Same session is the source for the rebuilt § Nine framing.

v4.64.1

10 May 2026

Deep-linking pass on Where am I. Every topic now points to the right place to actually go and study it.

Where the links go

The page was already grouping topics by section and giving you a place to take stock — but the source citation underneath each topic was just text. Now those citations are real links that take you to the relevant section in the rest of the app, and the surfaced items in the What to discuss next panel at the bottom are clickable too.

How the links surface

v4.64.0

10 May 2026

Substantial update to Sripati Paddhati. A new foundations section on the visible sky, plus two layers of clarity from a late-night WhatsApp with Arpitha on house systems.

New § Two — The language of the sky

Before any house system can land, the vocabulary has to. A new foundations section now sits right after Origin, covering the words people most often confuse:

"Four ways to look at the sky" — Arpitha's framing

§ Two retitled to Four ways to look at the sky. The systems grid now reads as four genuine alternatives rather than three plus a dismissive footnote: Whole Sign, Equal House, Sripati Paddhati, and the KP system. Beginners often reach for Equal House; traditionalists prefer Whole Sign or Sripati. KP astrologers — what most Indian astrologers in popular practice will reach for — uses Placidus underneath. All four are now described on their own terms, not in opposition to each other.

New § Three — Rāśi chart vs Bhāva Chalit

The conceptual layer the old page was missing. The four house systems aren't competing answers to the same question — they feed two different charts:

Both charts can show the same planet sitting in different houses; both are true, each answering a different question. The page now makes that explicit, and quotes Arpitha's framing verbatim in a callout.

Section renumbering + duplicate-§-Five fix

Inserting the new section pushed every subsequent section number down one. Also fixed a pre-existing display bug where two sections both said "§ Five" — Quick Check is now § Six and "When does Vikram use which?" is § Seven, with cross-references closing as § Eight. URL anchors (#origin, #systems, #why, #worked, #workbook, #when, #xref, #sources) are unchanged so any existing inbound links still resolve.

Sources updated

Added the late-night WhatsApp with Arpitha (9 May 2026) to the sources list at the bottom of the Sripati page. Credit where credit is due.

v4.63.1

10 May 2026

Hotfix on Where am I. The stage pills (Aware · Familiar · Confident) weren't saving reliably — tapping a pill toggled it on, then immediately off. Visual flicker was too fast to see; the saved value just looked empty.

Root cause

Each pill was a <label> wrapping a hidden <input type="radio">. Browsers fire two click events when you tap a label that contains a radio: one on the label, then a synthetic click on the input it activates. Both bubbled up to the document-level click handler, which ran the toggle logic twice — first click selected the stage, second click saw the same stage already selected and toggled it off.

The fix

Replaced each pill with a plain <button type="button"> carrying role="radio" + aria-checked for accessibility. State is handled in JavaScript anyway — the radio inputs were doing nothing useful and causing the dual-fire. Single click now fires once, saves once.

v4.63.0

10 May 2026

A new self-assessment page — Where am I — for honest stock-taking across every topic in the 101 journey. Came out of a conversation with Arpitha after our Sripati Paddhati call: the topics one can teach back are the ones that have actually landed. So instead of one more quiz, this is a space to mark each topic as Aware · Familiar · Confident, and write the specific question to take to Vikram next.

Why this exists

Existing quizzes in the Learning Companion test recall — they're useful for getting from aware to familiar. But there's a third stage no quiz can grade: whether you can sit across from someone and teach the topic back to them. That stage is self-knowledge. Where am I leaves the grading to the learner.

Topic inventory · 58 items across 7 sections

The page itself

Where it lives

In the More menu, first item. Sripati Paddhati and the existing peer pages are still in there too. Primary nav (Learning Companion · Read · Reflect) is unchanged.

What this is not

Not a replacement for the LC quizzes — those still test recall and are great for the Aware → Familiar move. Where am I sits one layer above: it's the meta-page, the place to take stock between sessions and decide where to spend the next hour of study.

v4.62.5

9 May 2026

Two simplifications on pricing.html. The cohort/special-arrangement section is gone — flat fee for everyone, no exceptions language. And a small coffee analogy now sits inside the price card to make the amount feel concrete and warm.

What changed

v4.62.4

9 May 2026

Real photo of Vikram Devatha now lives in the dedication block on pricing.html. SVG silhouette replaced. Photo treatment tuned for the cream context.

What changed

Still unlinked

Pricing page itself remains unlinked from nav and footer. The dedication block is now visually complete — when you and Vikram align on commercials, this is what learners will see at the bottom of the pricing page.

v4.62.3

9 May 2026

Vikram Devatha is named explicitly on the pricing page now, with a dedication block — silhouette portrait + role + offering text — at the bottom of the page. The companion app is built alongside his class, and the dedication makes the relationship clear when commercials become public.

What landed on pricing.html

Still unlinked

Pricing page itself remains accessible only by direct URL. No nav link, no footer link. The dedication is ready for whenever you and Vikram align on commercials.

v4.62.2

9 May 2026

Two threads. Devanagari + IAST added alongside the English Nirvāṇa Shatakam verses on Ether. Pricing page built and ready, but intentionally unlinked from the nav until Vikram aligns on commercials.

Devanagari + IAST on Ether

Pricing page (built, unlinked)

What's deferred

No banner anywhere. The Style toggle, Your name, and existing menu items are unchanged. The pricing page is genuinely a draft — copy can be revised, payment integration isn't built yet, no Stripe / Razorpay button. When commercials are agreed, those land in a separate release.

v4.62.1

9 May 2026

Two interactive layers added to Sripati Paddhati: an animated 7-step derivation that walks through the cusp math one tap at a time, and a 3-question workbook to lock in the concept. Both KISS-aligned — no auto-play, no over-engineering.

Animated derivation

Three-question workbook

What we deliberately didn't build

Latitude slider on the celestial sphere (idea #2 in the proposal), live cusp calculator (idea #3), and three-system planet comparison (idea #4) were considered and deferred. They're rich but the static math + animated derivation + 3-MCQ check is enough teaching surface for v1. Will revisit if Vikram or Kanika asks for "what would change at the equator" or wants to plug in their own chart.

v4.62.0

9 May 2026

New peer page — Sripati Paddhati — built from class material. Plus search prominence: a search bar on Home that lands you in Learning Companion's search modal with your query pre-filled, and a brief shortening of the Sripati section inside Learning Companion (now teaser + jump link).

Sripati Paddhati page

Search prominence

Learning Companion section trim

The Sripati Paddhathi card inside the House Systems block on Learning Companion has been shortened — keeps a 2-paragraph teaser, then drops a saffron-italic jump link to the full page. Avoids duplication; depth lives on the dedicated page.

Note on the index

Sripati Paddhati's content lives on its own peer page, so it's not yet inside Learning Companion's auto-built search index. Searching from Home for "sripati" or "paddhati" will surface the existing teaser inside Learning Companion (which links to the new page). A future cut may add cross-page indexing if it becomes friction.

v4.61.3

9 May 2026

Sree spotted that the site nav looked different across pages — index and Kaalapurusha had no .site-nav CSS rule at all (only .site-nav .primary and aria-current selectors), so the nav fell back to default browser styles. Mercury Spectrum and Astronomy carried an older shorter .site-nav block left over from before v4.59 (no flex layout, just margin + font + underline). Result: those four pages had different nav padding, alignment, and link styling than the unified version on Learning Companion / Read / Reflect / Layers / Ether / Interactive / Stats / Release Notes.

Fix: pasted the standard nav CSS block (the one used by the majority) into all four outliers. All 13 pages now share identical nav layout, padding, link styling, separator styling, and hover behaviour. Confirmed via grep — every page has the canonical .site-nav { padding: 22px 0 14px; display: flex; ... } rule.

v4.61.2

9 May 2026

Body paragraphs site-wide now use Switzer Extralight (weight 200) instead of regular (400). Cohort feedback channelled through Sree pointed at the brand book's body example: "Switzer Extralight, 27pt." We weren't loading the 200 weight before, and the body wasn't requesting it. Both fixed: Fontshare import now includes 200 alongside 300-700, and body { font-weight: 200 } applied across all 13 pages. Reads lighter, more deck-like, closer to Yash's specimen.

v4.61.1

9 May 2026

Three urgent fixes from Sree's iPhone Safari testing of v4.61.0.

1 · Settings popover pills weren't working

The Settings popover on Learning Companion opened correctly, but tapping Mode / Level / Aa pills inside did nothing. Cause: the existing .mode-pill, .level-pill, and #a11yToggle click handlers attached at script-parse time using document.querySelectorAll — but the popover HTML lives at end of body, parsed AFTER those scripts. So the handlers attached to zero elements. Fix: switched to event delegation on document — clicks bubble up regardless of when the pills are rendered. Mode, Level, and Aa now all respond correctly.

2 · More menu rendered off-canvas on iPhone

On narrow viewports where the site nav wraps to a second line, the More button could end up at the LEFT side of its row. The dropdown's position: absolute; right: 0 then placed it off the visible canvas, partially hidden behind page content. Fix: on viewports under 600px, the More menu now uses position: fixed anchored to the top-right of the viewport. Always fully visible, regardless of where the More button sits in its wrapped row.

3 · Some users seeing the page in dark mode

A few demo viewers reported the page rendering "all black" — caused by iOS Safari (and other browsers) auto-applying their system dark mode preference to our cream-coloured page. The cream palette doesn't survive auto-inversion well. Fix: added <meta name="color-scheme" content="light only"> to all 13 pages. Browsers now know to render the page exactly as designed in cream, regardless of system dark mode setting. Light-only by design, by tradition, by Vikram's deck aesthetic.

Follow-up — proper skin picker

Sree also asked for a user-selectable skin (light / dark / sepia / etc.) so individual learners could match their preference. That's a bigger build — token mapping for each skin, dropdown in Settings, persistence. Deferring to a future release. For now the Style toggle in the More menu still offers ATV-brand vs Legacy as the two flavours; both are light.

v4.61.0

9 May 2026

Two fixes on Learning Companion. The top of the page was eating ~800-900px on iPhone before content appeared — site nav, Mode switcher row, Level filter row, Search button, masthead. Sree asked for a non-technical reorg with KISS in mind. Picked Option B from the proposal: collapse Mode + Level + Aa into a single Settings button next to Search. The page lands faster on mobile; controls stay one tap away. Also fixed a Rāśi Chakra spacing bug where Aquarius / Cancer / Capricorn / Leo chambers (rows 2-3) had a noticeable extra gap between planet glyphs and the bottom sign glyph compared to other chambers.

Top-section reorg

Rāśi Chakra chamber spacing

v4.60.0

9 May 2026

Limited personalisation, local-only. The app can now hold a learner's first name (or nickname) and use it sparingly across a handful of high-value touchpoints. Stays on-device — no accounts, no backend, no OAuth. KISS, in Sree's words.

How it works

Where the name shows up

Light hand by design. Vikram's class is humble; sprinkling the name in 50 places would feel uncanny. Five touchpoints anchor the personal feel without overdoing it.

Tone

Context-sensitive — warm at entry points, casual where instructional. "Welcome back, Sree." at the door of the app, "Sree, three characteristics." at the writing pad. It's a learning app, not a corporate one.

Mechanics for future authors

To add a new personalised touchpoint anywhere, decorate a DOM element:

The site-wide JS auto-applies templates on page load and after every name change. Adding a new spot doesn't require touching the migration script.

Why no OAuth

Considered Google / MS sign-in for cross-device persistence. Rejected for this round: adds backend, OAuth flow, account state, security review, GDPR concerns. The cohort reads on one device mostly. Local storage covers ~95% of the value at <5% of the complexity. Worth keeping in mind for a future release if a class member explicitly asks.

Validation

Trim whitespace, max 30 characters. Anything else goes — nicknames, special characters, spaces, emoji. It's their name, they decide.

v4.59.0

9 May 2026

The pilot landed; this is the cascade. Every page in the app is now ATV brand-aligned by default — Terracotta Ember, Charcoal Ash, Sunlit White, Switzer body, Libre Caslon Text headlines. Quick Reference is renamed to Learning Companion (Vikram's call, more global appeal). The site nav is redesigned: four primary anchors plus a More dropdown for the deep dives. The style toggle (ATV ↔ Legacy) lives inside the More menu, available on every page, persisting across navigation. Old quick-reference.html URL is preserved as a redirect so external bookmarks don't 404.

Phase 1 · Site-wide brand cascade

Phase 2 · Site-level theme toggle

Phase 3 · Nav redesign

Phase 4 · Quick Reference → Learning Companion

Sanity-check pass

Known follow-ups (not blocking)

v4.58.2

9 May 2026

The green WhatsApp feedback FAB sits bottom-right on every page. On Interpret · beta, the writing pad is fixed at the bottom of the viewport — so the FAB was overlapping the textarea and competing for attention while learners were trying to write. Removed the FAB on this page only and replaced with a small inline Send feedback link in the footer next to Check for updates and Release notes. Other 11 pages keep the FAB unchanged. Same WhatsApp pre-fill text and same target number; just calmer surfacing.

v4.58.1

9 May 2026

Companion to v4.58.0. Adds a style toggle on Interpret · beta so Vikram can flip between the new ATV brand-aligned design and the pre-v4.58 legacy design without leaving the page. Top-right pill button labelled Style · ATV brand / Style · Legacy. Choice persists in localStorage; default is ATV brand. Apply happens before first paint via an inline script in <body>, so there's no flash of the wrong theme on reload.

How it works

Known artifact

A handful of CSS rules use literal rgba values for subtle tints (drawer chip backgrounds, chamber border-shadows, etc.) — these were converted to Terracotta Ember in v4.58.0 and stay that way regardless of theme. So legacy mode looks almost identical to pre-v4.58 but a few shadows carry a slight warm undertone. Won't materially affect Vikram's read of the comparison; flagged here for honesty.

The pitch to Vikram

"Open read.html. The page you see is the brand-aligned version — Terracotta Ember instead of saffron, Switzer body, Libre Caslon headlines. Tap the Style pill in the top-right to flip back to how it looked yesterday. Toggle between them. Tell me which one wins."

v4.58.0

9 May 2026

Pilot release. Interpret · beta is now visually aligned to the official ATV Brand Guidelines (Vikram + Yash, Sept 2025). The other 11 pages are unchanged — they keep the legacy palette and serif body until Vikram has eyes on the new look. Sree requested all three migration stages on read.html in one go so Vikram can see the full intended look in one place.

Stage A · Color migration

Stage B · Switzer for body

Stage C · Libre Caslon Text for display

Why pilot, not big bang

Migrating all 12 pages at once locks in the new look before Vikram has seen a real surface. Doing read.html alone gives him a single, in-depth page to react to — chart + walk-through + drawer + writing pad all in one. If he says yes, we cascade colors and fonts to the other 11 pages in v4.59.0. If he wants tweaks, we adjust on read.html only — cheap to revert.

Known cross-page artifact

While the pilot is live, clicking from read.html to any peer page (Quick Reference, Kaalapurusha, etc.) will show a visible style shift — peer pages still use Cormorant Garamond display + Spectral body + the saffron palette. This is expected and temporary; flagged here so the cohort isn't surprised.

Source

Brand book: astrology-101-knowledge-base/sources/ATV-Brand-Guidelines-2025-09.pdf (preserved verbatim). Working derivative: astrology-101-knowledge-base/style-guide.md (the doc I reference before any color or typography change going forward).

v4.57.1

9 May 2026

Hotfix on the Self-check section inside Path A walk-through cards. On iPhone-width screens, each check item was rendering as four narrow columns — checkbox, then "My / sentence / stayed / about" word-stacked, then "this / house" word-stacked, then the rest. Caused by display: flex on the <label> with loose text and <strong> inside: each became its own anonymous flex item and shared horizontal space, wrapping into single-word columns. Fixed by wrapping every label's text content in a single <span> so it's one flex item with normal text flow. Also added a defensive CSS rule (.selfcheck-list label > span { flex: 1 1 auto; min-width: 0; }) so future authors can't trigger the same bug. Wrapped the Path B labels too for consistency. Sree caught it on his actual phone reading the 2H Pisces card.

v4.57.0

9 May 2026

Two fixes on Interpret · beta, both from Sree's eyes-on testing. The Quick Reference drawer inside each walk-through card was eating ~485 vertical pixels before the user reached the analysis card — nine attribute tiles laid out, six of them irrelevant for the current sign. It's now compacted to one prominent tile per dimension with chip-row alternates. Separately, on mobile some planet glyphs were getting clipped at the bottom of their chambers because long deck-61 keyword strings (9H, 11H) were wrapping to 3-4 lines and pushing the planets past the chamber's bottom edge.

Quick Reference drawer · compact mode

Chart chamber overflow · mobile fix

Why both shipped together

Both came out of Sree's same testing pass — open the chart, scroll to the walk view, see what's in front of you on a phone. The drawer audit and the clipping bug were two halves of the same answer to "is read.html actually usable in your hand?" Shipping them as one release keeps the version history readable.

v4.56.1

8 May 2026

Tightening pass on yesterday's deck-61 keyword landing. Sree spotted the obvious — there's plenty of room inside each chamber, so the 12-card legend grid below the chart was redundant. The full keyword strings now sit in the chamber itself; the legend grid is gone. The chart view is lighter, and each chamber carries the complete reference instead of a one-word teaser.

What changed on Interpret · beta

Why this lands

v4.56.0

8 May 2026

The South Indian chart on Interpret · beta now speaks. Vikram's per-house keyword map from deck 61 (Kinds of Houses, continued) lands inside each chamber and as a legend grid below the chart. Each chamber gains a single short keyword on a new line under the sanskrit (Self · Resources · Hobbies · Home · …). Below the chart, a 12-card legend shows the full keyword strings verbatim from class — and a frame line clarifies that keywords attach to the house number, not the sign: in your chart, House 1 is your Lagna; only the Kāla­purusha cosmic chart defaults House 1 = Aries.

What landed

The full keyword map (deck 61)

Why this lands

v4.55.3

8 May 2026

Two corrections on Read · beta. One: the Path B Step 1 line was rendering "undefined · mutable · yang" — a code bug where SIGNS[sid].element was read instead of the correct SIGN_ATTR[sid].element. Fixed; now reads "fire · mutable · yang". Two: Sree's-chart references (Sun in Sagittarius 11H · Aquarius Lagna) removed from in-page surfaces. The page now leans entirely on Vikram's class material — deck 72 Sun in Aries 2H, deck 73 Moon in Taurus 2H — for worked examples. Per-planet cards already carry Vikram's deck-sourced examples.

What changed

Why this lands

v4.55.2

8 May 2026

Each planet card on Path B (Interpret · beta) now carries Vikram's deck-sourced Parts of Speech worked example for that specific planet. Sun's card surfaces deck 72's "Sun in Aries 2H" example with both Vikram synthesis sentences. Moon's card surfaces deck 73's "Moon in Taurus 2H" example. Cohort members reading the Sun see Vikram's Sun example; reading the Moon see his Moon example. Same framework, different planets — the room for the learner's voice within each.

What landed

Why this lands

v4.55.1

8 May 2026

A focused cleanup pass on the Path A (house) walk-through after Sree's deep-scan review of Interpret · beta. The per-house card was carrying material that belongs to Path B (Parts of Speech grammar) or duplicated material the new intro card already carries (the inline 8-step procedure). v4.55.1 strips both, rewrites the self-check to ask Path-A-relevant questions, makes the page-level subject frame path-aware, relocates the Synthesis Examples to the Synthesis destination, and adapts the drawer's avatar section header per path. The per-house card now collapses from ≈8 elements below the prompt to ≈3.

What was removed from per-house cards (Path A)

Self-check rewritten for Path A

Walk-frame is path-aware

Synthesis Examples relocated

Drawer Avatars section adapts per path

Net effect

v4.55.0

8 May 2026

A two-path rearchitecture of Interpret · beta. Vikram teaches two distinct interpretation procedures — Path A for analysing a house (8 steps), Path B for analysing a planet (3 steps) — with different combination rules for each. The page now offers them as two equal first-class doors from the chart view. Each path has its own intro card with a step-by-step worked example, a class transcript quote with timestamp, and deck citations. All inline. All sourced from Vikram. No public internet.

Two doors on the chart view

Path intro cards · the procedure made visible before walking

Path B walk-through · 9 planet cards, 3 steps each

Path-aware writing pad and notes

Synthesis examples card relabelled

Why this lands

What's next

v4.54.1

8 May 2026

Hotfix on top of v4.54.0. Sree caught that the new "↗ See Vikram's 8-step procedure" link inside Interpret · beta pointed at a raw .md file in the knowledge base — wouldn't render in a browser, wrong artefact for users. The principle: any reference material from inside the page lives inside the page; no links to MD. v4.54.1 inlines the entire 8-step + 3-step procedure as a tap-to-expand <details> block right where the link used to be.

What changed

The principle this codifies

v4.54.0

8 May 2026

Sree spotted that two of his class references — older deck 63 (Interpreting the Ascendant) and the newer house-interpretation guidance PDF — teach moves that contradict each other. A deep read of six class transcripts (Sessions 35, 39, 40, 41, 42, 43) confirmed: deck 63's worked example combines a Lord keyword with the house-of-Lord's-placement keyword, which Vikram explicitly forbids in Session 41 (April 19, 2026). v4.54 makes the subject of every analysis visible inside Interpret · beta, surfaces the 8-billion-people test prominently at the writing moment, and adds a KB correction note that re-derives deck 63's example using the May 2026 procedure.

The diagnosis

What landed in Read · beta

What landed in the KB

Why this lands

What's next

v4.53.0

8 May 2026

A sticky writing pad now lives at the bottom of the viewport on the Interpret · beta walk-through. Sree caught the friction: the textarea was buried below the references, so writing meant scrolling between read and write. The fix — pin the textarea as a fixed bottom-banner that stays visible while the user scrolls up to re-read the drawer, the Pati block, the Karaka block. Writing happens with references in view, not after them.

What landed

Why this lands

Implementation note

v4.52.0

8 May 2026

Cut B1 of the deeper interpretation layers from Vikram's recently-shared house-interpretation guidance lands on Interpret · beta. Two pieces: a new Karaka · Natural significator block on every walk-through card (Step 5 of the guidance), and a new Synthesis destination card after House 12 that surfaces what the cohort member's chart emphasizes across duality / modality / element (Step 8). Both stay strictly in the fact-surfacing register — Vikram's principle is honored throughout: the system shows the data, the learner draws the meaning.

Cut 1 — Karaka block on every house

Cut 2 — Synthesis card after House 12

Why this lands

What's coming next

v4.51.0

8 May 2026

A worked-examples card joins the "📐 Two anchors before you write" expander on Interpret · beta. Two tabs — Vikram's teaching (Sun in Aries 2H) and Sree's chart (Sun in Sagittarius 11H · Aquarius Lagna) — each show the Parts of Speech table mapped to that placement, plus the synthesis sentence(s). Same framework, two charts, two voicings each. The teacher's example anchors the framework; the learner's example shows what the framework actually yields when a real cohort member uses it on their own chart. The room for the learner's own voice becomes visible.

What landed

New canonical reference in the KB

Why this lands

v4.50.0

8 May 2026

Two craft anchors from Vikram's class now sit with the writing surface on Interpret · beta. Above each per-house exercise textarea: a small expander — "📐 Two anchors before you write" — opens to show his Parts of Speech grammar map and the four Intentions (with prediction explicitly struck out, since year-1 of the class doesn't read for prediction). Below the textarea: a "🪞 Self-check" panel that asks the learner to verify their own line against both anchors — five tick-boxes for the grammar, a four-radio for the intention, with a saffron warning if the learner picks "Prediction." The system asks the questions; the learner answers — same Vikram principle as v4.49, deepened.

Anchor 1 — Parts of Speech

Anchor 2 — The Intention

The self-check

Other

Why this lands

v4.49.0

8 May 2026

Vikram reviewed Read · beta and sent a clear principle: "Just don't let the computer take away the human. We need to make sure people use their mind and intellect to do the interpretation." He flagged the per-planet line on each walk-through card — "Moon in Aries — energized initiating bold changes" — and asked whether it was learner-written or system-generated. It was system-generated, baked from his class decks 72–77. v4.49 corrects this. The system now only surfaces references; the learner writes the sentence. Plus Sudha's earlier "Pati of the House" sketch lands in the same release — it fits the same principle, surfacing facts not interpretations.

Cut 1 — Honor Vikram's principle

Cut 2 — Pati of the House (Sudha's sketch)

Why this lands

Note for Vikram

v4.48.0

8 May 2026

Two refinements to the v4.47 quick-reference drawer on Interpret · beta, both from Sree's reviewing eye. One: the duality / modality / element descriptions are now Vikram's exact keyword lists pulled verbatim from Quick Reference — no drafted paraphrase. Same words on both surfaces. Two: the Avatars section is now contextual-only — it shows only the avatars of planets actually placed in the current house, with explicit "Avatar · Planet · English" tagging, instead of all ten regardless of placement.

Cut 1 — QR-sourced keywords

Cut 2 — Contextual avatars

Why this lands

v4.47.0

8 May 2026

A quick-reference drawer lives inside the walk-through on Interpret · beta. Collapsible. Shows the four foundational grids — Dualities, Modalities, Elements, Avatars — in light-only descriptions, matching year-1 of Vikram's class. As you walk through your houses, the drawer adapts: tiles for the current sign's duality · modality · element get a saffron border, and the avatars of any planets in this house light up too. So general look-up and contextual learning happen in the same surface.

What landed

Why this lands

v4.46.0

8 May 2026

Two changes on Interpret · beta. One: Sudha caught that the chart was rotating per-Lagna (her Virgo Lagna landed in the top-left corner). The South Indian chart format is canonical — signs sit fixed in their positions; only the house numbers move with the Lagna. Restored to match Quick Reference + Interactive. Two: Cut 2 of the chart-interpretation arc — the per-house walk-through. Twelve cards, navigated one at a time, each carrying Vikram's deck-sourced one-liner for the planets present, plus his "My ___ is X. Three characteristics. I am ___" exercise with an auto-saving textarea.

Cut 1 — South Indian chart layout fix

Cut 2 — The per-house walk-through

What's still coming — Cut 3

Why this lands

v4.45.0

8 May 2026

A new beta peer page — Interpret · beta — opens the chart-interpretation arc Sudha sketched in her voice note. Phase A ships the shell: pick your Lagna, place your nine planets, and see your South Indian chart with sign labels computed via Whole Sign. The walk-through (house by house, "I am ___" exercise, Signature, full reading) lands in Phase B. Cohort can use Phase A immediately to render the chart Vikram cast for them.

What landed in Phase A

What's next — Phase B

Why this lands

v4.44.0

8 May 2026

Sudha tested the Interactive Lab on her phone and sent five precise WhatsApp notes — voice felt mono, audio wasn't continuous, "Currently in this chamber" should read in Sanskrit, the Prince scene was highlighting Libra instead of Virgo, and the Workbook overview's Module 4–6 links weren't opening. v4.44 closes all five. Plus visible "coming soon" placeholders for the bigger asks she sketched — per-scene content slicing, an Elements page, and a chart-interpretation mode — so the cohort can see what's queued.

Cut A — Prince → Virgo highlight bug

Cut B — "Pati / Ruler" Sanskrit relabel

Cut C — Workbook Modules 4–6 broken jumps

Cut D — Continuous narration

Cut E — Less-mono voice

Coming soon — visible placeholders

Why this lands

v4.43.0

8 May 2026

As the page has grown — Quick Reference, Interactive, Reflect, Kāla­purusha, Mercury Spectrum, Astronomy, Ether, Layers, Release Notes, Stats — finding the right door has gotten harder for someone arriving fresh. v4.43 keeps the help integrated rather than building a separate guide. Two layers: a "Where to start" map on the home page that routes by intent, and a first-visit tip card on every peer page that says, in one line, what this page does and how to use it.

Layer 1 — Where-to-start map on the home page

Layer 2 — Per-page first-visit tip card

Why this lands

v4.42.0

8 May 2026

The 💬 feedback button — previously only on Quick Reference — now lives on every page. Whichever page someone is reading, they can fire a pre-filled WhatsApp message to Sree without losing their place. The pre-fill auto-detects the page (Layers, Mercury Spectrum, Reflect, Interactive, etc.) so feedback always arrives with context.

What landed

Why this lands

v4.41.1

8 May 2026

Vikram noticed the Matsya Check-in framing was retelling the myth — which is already the next section in the drawer. He sent a sharper line, swapped in tonight: "Before you read or hear the story, take a little time to reflect on these questions."

What changed

Why this lands

v4.41.0

8 May 2026

A new peer page — Reflect — gives the workbook prompts room to breathe. The eleven Matsya reflection clusters, which used to live inside an expandable inside the Matsya drawer, now also have a focused full-page experience with a textarea under every prompt. Notes save automatically to your browser. "📋 Copy my reflections" exports everything as plain text, ready for a journal, a doc, or a WhatsApp message. Notes never leave your device.

What landed

Why this lands

v4.40.0

8 May 2026

Vikram wrote in to ask how the Companion Workbook material can be folded into the learning tool. Most of the Matsya draft (drafted by Marie · Sudha · Mannat · Spandana with Vikram · Megha · Neha) was already integrated; v4.40 closes the remaining gap and lays a template for the other eight avatars when their drafts land. Plus a long-overdue affordance: every drawer is now deep-linkable — tap "🔗 Copy link" inside any open drawer to copy a URL that lands directly back at that drawer.

Cut A — Matsya gap-fill

Cut B — Workbook authoring template

Cut C — Deep-linkable drawers

Why this lands

v4.39.0

8 May 2026

Sathvika sent precise feedback on Story mode in the Interactive Lab"It's moving fast before I finish reading. For me either sound or pictorial representations help me stay attentive. Too many letters, gets confusing." Three direct asks. v4.39 answers all three: a Storybook view with one focused scene per card and no autoplay, a speed control for autoplay (Slow / Normal / Fast, default slowed from 5.5s → 9s), and read-aloud narration via the browser's Web Speech API.

What landed

Why this lands

v4.38.0

8 May 2026

The Moon today block moves into the Rāśi Chakra centre itself — visible without a tap. Below the "Do you know? — tap" pill, the chart's centre cell now shows today's paksha, approximate tithi, and the English phase name with a small lunar glyph. The page now feels different every day, even before you've interacted with anything.

What landed

Why this lands

v4.37.0

8 May 2026

The Rāśi Chakra centre — the popover that used to read "From the class — tap to read" — becomes a richer surface, "Do you know?" Thirty curated insights drawn entirely from Vikram's class corpus (decks, transcripts, retreat notes, peer-group threads), each wearing a small badge that says where it came from. Below the card sits a second always-visible surface: Moon today — paksha, approximate tithi, and English phase name, with a one-line note rooted in Vikram's framing of the Moon as Queen.

What landed — Do you know?

What landed — Moon today

Why this lands

v4.36.0

8 May 2026

A new peer page — Layers — that captures the longer arc of how this came to be. Eight months of milestones, in Sree's voice, named after Vikram's own line: "we learn in layers." Holds the dates that won't fit in release notes — the blue file, the Ether retreat, the V0 prototype on a kitchen table, the kālapurusha rounds with Vikram, the Mercury session that triggered something deeper, May 7's partnership with Sanchi, and the open ellipsis at the end.

What landed

Why this lands

v4.35.0

8 May 2026

Two big additions to the Interactive Lab in response to Sree exploring the cabinet and finding it underwhelming: a cinematic Story autoplay and a new fifth mode, Court · Mitra/Shatru, that visualises the friendship layer Vikram emphasises in class.

Cut A — The Cinematic Story

Cut C — Court of Friendships (Mitra / Shatru)

Why this lands

v4.34.0

7 May 2026

A new experimental peer page — Interactive · beta — opens with the Planetary Cabinet as a stage. Built in response to Sathvika's WhatsApp note that text-heavy reference doesn't always land for her: "I learn through visuals, spatial layouts, 3D representations. Stories help me hold on to things." Rather than re-paint the main reference page, this is a separate room to test ideas in. The first experiment turns Vikram's planetary court narrative into a tappable 4×3 grid of zodiac chambers — the king (Sun) walks into Leo, the queen (Moon) into Cancer, the commander (Mars) into his offices in Aries and Scorpio, and so on. Tap any planet to read its role from Vikram's class. Tap any chamber to see who lives, who is honoured, who is in disgrace there. Four modes: Office (where each planet rules), Honour (where each is exalted), Disgrace (where each is debilitated), and Story (an 8-scene walkthrough of the kingdom assembling).

What landed

Why this lands

v4.33.0

7 May 2026

A new "How it started" section on the index page, replacing the brief project-level origin paragraph with Sree's actual genesis story — the infamous blue file. Photo of the binder of Astrology 101 printouts that Sree carried before the page existed, with Sree's own words about why he built this: "I don't learn by memory. I need a lot of references all the time. I needed something pocket-friendly and handy." Closes with the deeper register that drives the project: "That was the genesis. But it also coincided with something deep — something touching and resonating for me. I'm still yet to understand why I have a deep calling in this path. But I am in a flow, and that's what matters, right?"

What landed

Why this lands

v4.32.2 · naming the cohort

7 May 2026

Sree replaced the placeholder names in the cohort lede on index.html with the actual people — and once we started naming, the layers came through. Four groups instead of one inline list: in this picture (the eleven retreat attendees plus Sanchi), co-facilitating with Vikram (Suraj, Megha), the larger learning group (those not at this frame but in the conversations), and mentors who shaped the path. The honest acknowledgment: "the list goes on."

Who's named, by group

How this lands in the contributor index

Why this matters

v4.32.1 · typography fix

7 May 2026

Sree noticed the Nirvāṇa Shatakam verses on ether.html were center-aligned, which created orphan-word wraps when English lines ran long ("…nor the organs of generation and elimination" wrapped with "elimination" alone on the next line). Switched the verse body to left-aligned with comfortable line-height. The refrain — "I am pure consciousness and bliss. I am Shiva." — stays centered and saffron, becoming the ceremonial beat that returns at the end of each verse instead of competing with the centred body. Cleaner reading, ritual still present.

What changed

v4.32.0

7 May 2026

A new peer page — ether.html — built from Sree's reflections after Vikram's Astrology 101 ether retreat in March 2026. Substantial: the five-elements core framework, an element-and-senses table, the practice of pratyahara and Neti Neti, the full Nirvāṇa Shatakam (six verses, beautifully laid out), and a deep dive into the Chidambaram temple — Naṭarāja, Apasmāra, Patañjali and Vyāghrapāda, the Chidambara Rahasyam (the great secret of the empty inner sanctum), the Dīkṣitar priesthood, and the five Pañca Bhūta Sthala temples in South India. Linked from the cohort section on the home page and added to the site nav across all pages.

What landed

Site integration

Source

v4.31.0

7 May 2026

A new "The Cohort" section on the index page, between the origin paragraph and the starting-point cards. A frame from the Ether retreat — Vikram's Astrology 101 cohort, in joyful poses around a small puja plate — sits as a meaningful image with caption and a pull-quote: "I owe a lot to this group." — Sree. Names visible contributors (Sudha, Marie, Mannat, Spandana, Megha, Neha, Arpitha, Sanchi) right inside the body text. Frames the project honestly: Vikram has been the teacher; the cohort has been the second teacher.

What landed

Why this matters

v4.30.1 · default flip

7 May 2026

Reverses v4.27.0. With index.html + the welcome card now buffering first-time visitors, the original Learning + Foundations default makes more sense — it matches Vikram's contemplative pedagogy (quizzes unlock as you go, sections reveal progressively) rather than dumping a new visitor into the full reference at once. Cohort members coming via the share URL land on index → see the three starting points → click a card → arrive in Learning mode with the structured walk in front of them. Reference + All is still one tap away in the Mode pill at the top.

What changed

Why this is the right move

Known edge case

v4.30.0

7 May 2026

A new index.html as the project's landing page — built for the moment Sree shares the link with the wider cohort. Clean intro: hero, one-paragraph origin (kitchen table → Vikram's blessing), three starting-point cards (Wheel of Signs / Planetary Cabinet / Trace Exercise) each linking deep into Quick Reference, a "What's inside" two-column list of all 16 sections, an "Open the Quick Reference →" CTA, and a peer-pages row. Cohort members arriving via the share URL now land somewhere quiet first, instead of straight into the dense Quick Reference. The share URL stays the same — atv-companion.sreebalakrishnan.in — because static hosts auto-serve index.html as the directory default.

What's on the page

Welcome-card coordination

Site nav update

Why this matters now

v4.29.0

7 May 2026

A new peer page for the geek-out — stats.html. Big italic numbers under four headings: the source corpus (73 class decks · 58 transcripts · 553K words parsed), the build (7 HTML pages · 1.66 MB · 18,796 lines), the Quick Reference itself (16 sections · 15 quizzes · 14 Vikram quotes · 30 Court Call questions · 9 cabinet roles), and the cohort (53 release entries · 10 named contributors). Plus a per-page breakdown table showing where the bytes live. Linked from the site nav across all pages.

What landed

Tools / build-stats.py

Site nav

v4.28.2 · fix

7 May 2026

Sree noticed that the V0 entry didn't get a copy-link 🔗 button like every other release. Root cause: the deep-link script's versionToId() regex required three dot-separated digits (v4.20.1), so it skipped over V0 and v1 entirely. Patched the regex to also match no-dot and one-dot versions. V0 now resolves to #v0, v1 baseline to #v1, and both pick up their hover-revealed copy-link buttons. Send release-notes.html#v0 to anyone who wants to land directly on the origin story.

The regex change

v4.28.1 · UX fix

7 May 2026

The V0 origin block at the bottom of these release notes finally has its visual. Sree shared the original prototype — "Vedic Astrology Explorer", a single dark-themed HTML file from before the cream-and-saffron rebuild — and rather than embed a static screenshot, we copied the actual file into the repo as v0.html and dropped it into the V0 entry as a live <iframe>. Lighter than an image, scrollable, and fully interactive: tap a chart cell, change the ascendant, watch the houses rotate. The V0 narrative was rewritten to match what the iframe actually shows — first digital build (after the kitchen-table flashcards), 73 class decks + 50 sessions, no avatars or cabinet yet, just chart geometry and a flashcard tab.

What landed

V0 narrative — rewritten

Why iframe over image

v4.28.0

7 May 2026

v4.27.0 fixed Arpitha's first-time pain about locked sections. Then she asked a second question: "Now what do I need to check Anna?" — even with everything visible, she didn't know where to start. v4.28.0 answers that with a soft nudge: a small welcome card appears once on the first visit, offering three concrete places to begin (the wheel of signs, the Cabinet, the Trace exercise). Once dismissed (or once a learner taps any of the three), the card never shows again. Returning users see nothing. Plus a small refresh of the masthead sub-line to invite first-timers in.

Welcome card · three places to start

Masthead sub-line refresh

Why this and not a tutorial

Reset hint (for testing)

v4.27.0

7 May 2026

First-time visitors now land on Reference + All instead of Learning + Foundations. Direct response to user testing — Arpitha (cohort) opened the page from a deep link to #practice, saw locked sections, and messaged: "I don't understand Anna · Everything is locked for me." The Learning-mode default put her behind hard locks she hadn't earned yet, and the Foundations level filter further hid most content. Reference mode + All filter shows the whole page open from the first tap. Returning users keep whatever they last picked.

What changed

Why this is right

v4.26.0

7 May 2026

A retroactive entry at the very bottom of these release notes — V0 · how it started. The page has had twenty-five-some releases now, but it began before any of them: as a stack of paper flashcards that Sanchi and Sree built during their annual year-planning ritual. Until now there was no record of that. This release adds it — a short narrative section at the foot of the changelog, plus a placeholder for the photograph of the original cards (Sree to share next; will be embedded at ~640px wide).

What was added

Image, when it lands

v4.25.3 · UX simplification

7 May 2026

Sree pointed out that the feedback FAB's two-path approach (auto-screenshot via html2canvas + Web Share on mobile, wa.me deep link on desktop) added friction. On mobile the user clicked, waited for a screenshot, then got a system share sheet — they expected WhatsApp. Now the click does exactly what the button promises: opens WhatsApp with prefilled context. One predictable behaviour everywhere — iPhone Safari, Android Chrome, Mac Safari, desktop Chrome. Learners attach a screenshot manually if they want to send one (one extra tap on mobile, drag-drop on desktop).

What changed

What stayed

Why this is the right call

v4.25.2 · UX fix

7 May 2026

Sree spotted that the v4.25.1 popover was rendering with a transparent background — the page's lede text bled through the card, making the Vikram quote unreadable. Root cause: the CSS used var(--cream) in seven places, but --cream was never actually defined as a token in :root. CSS silently fell back to the initial value (transparent). Fix: add --cream: #F8F4E1 to the root token set as an alias for the existing --surface. The popover card now renders with an opaque cream surface; the .ground-btn and .reflect-btn hover states (which also referenced --cream for on-saffron text colour) also start rendering correctly. Backdrop opacity also bumped from .42 to .58 for cleaner separation between the popover and the page beneath.

What was broken

The fix

Lesson

v4.25.1 · UX fix

7 May 2026

v4.25.0 stuffed the rotating Vikram quote and three jump pills directly into the Rāśi Chakra's 2×2 centre cell. On iPhone Safari (and any narrow viewport) the long quotes overflowed into Scorpio and Libra below — exactly the kind of UX paper-cut that makes a page feel unfinished. Fix: the centre cell now holds a compact "✦ From the class — tap to read" pill. Tapping it opens a centred popover (works identically on iPhone, Android, Safari, Chrome) with the full quote, attribution, ↻ another reroll, and the three jump pills. No overflow ever; one interaction pattern across all devices.

What changed in the centre cell

The new popover ("Vikram wisdom card")

Quote rotation (small extra)

Why the popover pattern

v4.25.0

7 May 2026

Two ideas Sree was thinking out loud about. (1) The four-grid centre of the Rāśi Chakra used to say "the wheel of signs · tap any sign to expand" — informational but inert. It now holds a rotating Vikram quote drawn at random from the existing VIKRAM_QUOTES const, with full attribution and a small ↻ another reroll button. Below the quote, three jump pills — Mahāśaktis · Cabinet · Kālapurusha — link to related sections. The page comes alive every visit; voice stays Vikram's. (2) A new WhatsApp feedback FAB sits next to the floating ॐ button — one tap opens WhatsApp at +91 9880337337 with prefilled context (version + which section the learner is on). On modern mobile browsers it captures a screenshot via html2canvas + Web Share API and attaches it to the message; on desktop it falls back to the wa.me deep link.

Rāśi Chakra centre · quote + jump links

WhatsApp feedback · two-path FAB

Why this matters

v4.24.0

7 May 2026

The project gets a working name — Astrology 101 Companion App. Small, reversible rebrand: the iconic Astrology 101 h1 stays, but the eyebrow now reads "all things vedic · the companion app · v4.24.0" and the sub-line under the masthead now says "The companion app for Vikram's class." Page titles in browser tabs across all five HTML files updated. USER_TESTING.txt header rebranded. Footer line on the Quick Reference now reads: "Astrology 101 Companion App — a pocket reference distilled from Vikram's class, alongside the Companion Workbook."

Why this name (for now)

What didn't change

v4.23.0

7 May 2026

The cohort's Companion Workbook gets surfaced inside the page in three ways. (1) A new cross-cutting view table inside the Avatars section — Avatar / Planet / Brain region / Trauma / Life expression for the nine drafted avatars (Table 3 from the workbook). (2) A new § Sixteen — Companion Workbook section at the bottom showing all six modules, each with its main goal, learning outcomes, and a link to the page section it maps to. (3) Inside the avatar drawer for the eight unfilled avatars (Kurma → Buddha), a small "in progress" block tells readers exactly what's coming and credits the drafting team — so Sudha sees her own name on the work in flight.

1 · The cross-cutting view (Table 3)

2 · The new Companion Workbook section

3 · "Workbook content — in progress" block in avatar drawers

What's blocked and what isn't

v4.22.0

7 May 2026

The contributor index that finishes Cut C from the planning conversation. A new "Heard from" panel sits between the masthead and the first release. It auto-extracts every name from data-credits across the page, shows them as filter chips with counts, and lets you click any name to see only the releases credited to that person. The "All" chip resets. Combined with v4.21.0's deep links, the trail is now fully self-evident — for Sudha, Vikram, Sanchi, the Companion Workbook authors, or anyone else whose feedback shaped a version.

How it works

Resilience

What's still ahead

v4.21.0

7 May 2026

Sree wanted to point Sudha at the specific releases that came from her feedback. So this page now does two things: (1) every release section gets an anchor ID and a small 🔗 button next to its heading — click to copy a deep link to the clipboard. (2) Releases that came from external feedback show a small "Heard from: …" credit line, so the trail is self-evident. Six versions credited so far — Sudha (v4.13.0, v4.20.0), Vikram (v4.10.0, v4.14.0, v4.15.0, v4.17.0), Sanchi (v4.16.0, v4.17.0), and the Companion Workbook authors (v4.18.0).

Deep links

Heard from

Why

v4.20.1 · hotfix

7 May 2026

Hotfix. Sree spotted that the Mode toggle ("Learning / Reference") and the level filter ("Show content for: Foundations / Beginner / …") were not clickable after v4.20.0 shipped. Root cause was a temporal-dead-zone error in v4.20.0's INIT block — initTraceExercise() was being called before its const TRACE_PLANETS and const traceState declarations executed, which threw a ReferenceError that killed the rest of the script and prevented the toggle handlers from binding. Fix: moved the initTraceExercise() call to immediately after its const declarations, with a code comment explaining why. Toggles work again. No content changes; v4.20.0 features (Yogas section, drawing exercise) all intact.

v4.20.0

7 May 2026

Two of Sudha's bigger asks land. A new Yogas section sits between Aspects and Houses (§ Nine — everything below shifts up one number), holding Parivartana with Vikram's verbatim framing and a placeholder note for the yogas he has named but not yet taught. A Trace the symbols drawing exercise sits at the bottom of Practice — nine planet glyphs, faded as a guide, draw on top with finger or mouse.

Yogas section · Parivartana, sourced honestly

Trace the symbols · drawing exercise (Phase A)

Why no Gajakesari, Raja Yogas, etc.

v4.19.0

7 May 2026

A recall-side audit caught what we'd been avoiding: most quizzes and flash cards were still riffing on the original v4.5 content, even after twelve versions of source material had landed (cabinet, vikram_story, astronomy → meaning, workbook). The Cabinet quiz was the only one that had been refreshed. v4.19.0 closes three of the worst gaps — Avatars quiz, Cabinet flash card deck, Planets quiz with astronomy content.

Avatars quiz · refreshed for vikram_story content

Cabinet flash card deck · new

Planets quiz · astronomy → meaning

Avatars deck · vikram_story themes card

What's still on the list

v4.18.0

7 May 2026

A four-part build directly informed by the Companion Workbook draft (Marie, Sudha, Mannat, Spandana — with Vikram, Megha, Neha) and the cabinet section's deferred Phase B. Matsya becomes the gold-standard avatar drawer with eleven reflection clusters and a full embodied-practice block; the same scaffolding is now ready for the other nine avatars as workbook content lands. The Cabinet section grows a self-contained game called Court Call. Section eyebrows pick up subtle family colours so the page reads as four threads, not fourteen sections.

1 · Matsya — the gold-standard drawer

2 · Court Call — a game inside the Cabinet

3 · Section family colour coding

4 · Workbook-block CSS (reusable scaffolding)

v4.17.0

7 May 2026

Phase 1 from the post-call plan. Four items shipped together: rename "Test yourself" to "A check-in" everywhere; add a writeable reflection space inside every section's check-in (the workbook gap Vikram pointed at); a single accessibility toggle for larger text + higher contrast; and a USER_TESTING.md doc with the seven questions for the first cohort. This is the version we'd ship to user testing next.

Rename · "Test yourself" → "A check-in"

Reflection space — the workbook gap closed

Accessibility — larger text + higher contrast

USER_TESTING.md — for the cohort

What's deferred from Phase 1

Mechanics

v4.16.0

7 May 2026

Co-credit. Every page footer now reads: "Content © All Things Vedic · Vikram. The page itself is built by Sree & Sanchi alongside the class." Sanchi joining as product owner this week — the page is a project we're building together. The demo deck's title slide updated to match.

What changed

v4.15.0

7 May 2026

Phase B of the astronomy work — a new astronomy.html peer page sitting alongside Kaalapurusha and Mercury Spectrum. Eight foundations covering Solar System, Ecliptic, Coordinate Systems, Celestial Equator, Eclipses, Apparent Motions, Ayanamsha, and the Stellarium Lab. All material from Vikram's transcripts and decks; nothing borrowed from elsewhere.

Eight sections

Each section has

Site nav

Source discipline

v4.14.0

7 May 2026

Phase A of the astronomy work — the science under the symbolism, surfaced inside the Quick Reference. The astronomy mappings already baked into the page (which were buried inside an "intermediate" classical block) are now first-class. Plus small Vikram-quote ledes in §1 Signs and §10 House Systems explaining the astronomy under the structure.

Per-planet "From the sky" section

Astronomy ledes in §1 and §10

What's next — Phase B

v4.13.0

7 May 2026

Light / Shadow vocabulary fix in §2 (Elements · Modes · Duality), caught by Sudha. The subheading on every element / modality / duality card was reading "Qualities"; Vikram\'s actual pair across the transcripts is "Light" and "Shadow". Also aligns the Quick Reference vocabulary with the Mercury Spectrum sister page, which was already using Shadow and Light.

Sourced in Vikram\'s words

What changed

What\'s intentionally unchanged

Credit

v4.12.0

6 May 2026

"How Vikram tells it" — every avatar drawer now opens an expandable with Vikram's actual scene-by-scene narrative from class. Sourced verbatim from Sessions 4, 7, 10, 12, 16, 18a, 20–22, 27, and 31, with light editing only for grammar and flow.

What's new in each avatar drawer

Coverage

Mechanics

Why this matters

v4.11.1

6 May 2026

Android rendering fix for the zodiac and planet glyphs. They were rendering as colour emoji on Android (oversized squircles overflowing the chakra cells), where they should render as plain saffron text. Caught by a learner using Android.

Root cause

The fix

v4.11.0

6 May 2026

A new top-level section: The Planetary Cabinet. Vikram tells the cabinet as a story across Sessions 23–25 — a wise old king, his queen, the prince, the princess, the commander, the priest, the servant, and the outsiders. The page now honours that story with a dedicated section between Avatars and Planets.

What's in the new section

Drawer enrichments

Mechanics

Why this matters

v4.10.0

6 May 2026

Sign drawers, enriched. Five new modules per sign — year rhythm, anatomy, exalt/debilitate "why", nakshatras, and a resonant avatar — surface KB material that was already there but never reached the drawer. The drawer reads as a body-mapped artefact now, not a label table.

What's new in each Sign drawer

What stayed the same

Why this matters

v4.9.2

6 May 2026

Visibility fix for the Grounding overlay (and Chant Mode by extension). The modal was reading as cream-on-cream — the page bled through too much.

What changed

v4.9.1

6 May 2026

Two small fixes from learner feedback.

What changed

v4.9.0

6 May 2026

Grounding replaces Ganapati invocation as the page opener — Vikram begins every class with a short grounding (settle, notice, synchronise breathing, set intention), and now the page does too. The Ganapati shloka stays one tap away in the chant tray; nothing is lost.

Top bookend

The grounding script (verbatim from class)

The breath circle

Pacing — auto with a Next pill

What stays the same

Why this change

v4.8.0

6 May 2026

"From the class" — Vikram's actual voice, threaded through the page. Each of the 13 sections now opens with a short, exact-as-spoken Vikram quote drawn from the class transcripts, attributed to the session it's from. Plus two source-grounding fixes: the Modality quiz hint now reflects Vikram's Brahma/Vishnu/Shiva framing (with the breath analogy), and the Mahāśakti element pairing is properly credited to Sri Aurobindo's The Mother.

Vikram quotes — one per section

Quiz hint — Modality (Q5)

Sri Aurobindo attribution on the Mahāśakti element pairing

What stays the same

Why this matters

v4.7.0

6 May 2026

New page: Mercury Spectrum. A 21-pair self-reflection slider tool, ported from a separate dark-mode prototype into the project's cream-and-saffron design system. Linked from the site nav alongside Kaalapurusha so it's a peer page, not a standalone.

What it is

Design — port from dark to cream

Wired into the suite

v4.6.1

6 May 2026

Quiz wording fix. Removed an inaccurate "(movable)" parenthetical from the Cardinal-signs question and tightened the hint to match the deck's own language.

What changed

v4.6.0

6 May 2026

Hard locks for Learning mode. Sections beyond your current frontier no longer just dim — they show only their heading and a "🔒 Locked" poster. The next section opens after you complete the current section's quiz, one at a time. The page now has a real pace.

What changed

Reroute logic — search, jump pills, glossary, daily gem

Reference mode is unaffected

Mechanics

v4.5.1

6 May 2026

Quiz content fix — pulled a question that imported a mapping from outside the knowledge base. Aligned the Modality (Cardinal/Fixed/Mutable) question to the language Vikram actually uses in the decks, and corrected a Sanskrit spelling.

What changed

Why this matters

v4.5.0

6 May 2026

Two modes — Learning and Reference — and a soft quiz at the end of every section. The page now has a built-in pace for first-time learners while staying a forever-reference for the rest of us. Driven by ideation with Vikram on how to make the page less overwhelming for new students.

Learning ↔ Reference mode

Soft quizzes — three per section

Frontier-driven progression (Learning mode)

Mechanics

v4.4.1

5 May 2026

Patch fix. Search and jump pills now land cleanly below the sticky table of contents — section headers and inner cards are no longer clipped when you deep-link to them.

What changed

v4.4.0

5 May 2026

Chant Mode. The page becomes a sacred reading session — open with the Ganapati invocation, sit with the study, close with the prayer of forgiveness. A focused chant overlay supports any of the seven shlokas with Devanagari, transliteration, meaning, an optional karaoke line-highlight, and a tap-to-count 108-bead mala.

Bookend the page

Floating ॐ button + tray

Chant Mode overlay

Sanskrit-term search bug fix

Mechanics

v4.3.0

5 May 2026

Devi mantras land on the four element cards. Each Mahāśakti card now carries the matching shloka — Devanagari, transliteration, English meaning, and source — folded behind a tap-to-reveal disclosure so the card stays clean by default.

What's new

How it shows up

Source & mechanics

v4.2.x

5 May 2026

Global search. Press / or Cmd+K (or tap the new Search pill in the level row) to open a command palette that searches every sign, planet, house, avatar, section, Sanskrit term, classical signification, anatomical region, and reflective prompt on the page. v4.2.1 patches a click-handler bug on result rows.

How it works

Level-aware

What gets indexed

Mechanics

v4.1.0

5 May 2026

Two ambient delights. A Daily Gem surfaces a tidbit from the knowledge base on every visit — a planet karaka, an avatar one-liner, a Sanskrit term, an Uttara Kalamrita signification, an astronomy → meaning pairing. And italic Sanskrit terms inside drawers now reveal a tiny gloss popover on hover.

Daily Gem

Glossary popovers

Mechanics

v4.0.0

5 May 2026

Staged learning. The Quick Reference now adapts to where you are in the curriculum — Foundations, Beginner, Intermediate, Advanced, or All. Following Vikram's suggestion that the full page is overwhelming for someone just starting out, content unlocks as the learner progresses through his roadmap (Deck #16).

The level switcher

What unlocks at each level

How sections were assigned (per Vikram's roadmap, Deck #16)

Mechanics

v3.9.0

5 May 2026

Convergence — the body-silhouette diagram and the Anatomical Map cards now live inside the Quick Reference. The Kaalapurusha peer page slims down to The Journey only — a focused design-diary deep-dive.

What's new in the Quick Reference

What's left on kaalapurusha.html

Source & mechanics

v3.8.0

5 May 2026

The Kaalapurusha page now reads as a chapter of the same project. Same fonts, same warm cream palette, same masthead pattern as the Quick Reference — but every distinctive thing about that page (the body silhouette, the three-tab structure, the design-journey story, the dedication at the centre) is preserved.

What changed on the Kaalapurusha page

Mechanics

v3.7.0

5 May 2026

Section order reshuffled to match Vikram's pedagogical flow. Building blocks (Signs, Elements/Modes/Duality, Avatars) now sit at the top; Planets follow; the dynamics (Signature, Relationships, Aspects) come next; Houses and the framing sections close the page. No copy or data changes — purely structural.

New section order

What stayed the same

v3.6.0

5 May 2026

Planet drawers caught up with house drawers. Sun, Moon, Mars, and Mercury now carry the same kind of Classical significations block — Parashara, Phala Deepika, Uttara Kalamrita, plus Vikram's signature astronomy → meaning mappings. Reflect prompts now also surface deck-native versions in Vikram's wording, alongside the friendlier peer-distilled set.

Planet drawer · Classical significations

Reflect panel · deck-native prompts now surface

Two new decks ingested

v3.5.0

5 May 2026

House drawers got dramatically deeper. Every house now carries the classical significations from four of the source texts Vikram cites — straight from Deck #67 (The Houses ver 2).

What's new in the house drawer

Source & mechanics

v3.4.1

5 May 2026

Drawers gained a contemplative tail. Planet and Avatar drawers now end with a Reflect panel — peer-distilled journaling prompts pulled straight from the knowledge base. The Quick Reference is no longer just a lookup tool; it's a place to sit with a question.

What you'll see

Source & what's next

v3.3.0

5 May 2026

Drawer pills now deep-link into the page. Tap Fire / Cardinal / Yang / Kendra / Dharma — anything informational — and the drawer closes, the page scrolls to the right card, and the card pulses saffron so the eye lands.

What jumps where

Shareable deep links

Visual signal

v3.2.0

5 May 2026

Major content expansion: Sanskrit names everywhere, three new sections, and a substantially deeper Avatars area.

Terminology

Signs § One

Planets § Two

Houses § Three

House Systems § Four — new

Elements, Modes & Duality § Six

Signature § Seven — new

Aspects § Eight

Relationships § Nine — new

Avatars § Ten

Kaalapurusha § Twelve

Practice § Thirteen

Project structure — new

Update mechanism — new

Some Sanskrit terms in v3 use IAST diacritics (e.g. Bhāva, Rāśi, Sūrya) where the decks use plain transliteration (Bhava, Rasi, Surya). Flagged for future normalisation.

v2

prior to 5 May 2026

Added active recall — the reference became something you could study with, not just look up.

What was new in v2

Carried over from v1

v1 · baseline

first version

The original quick-reference. Set the design language and the cross-reference drawer pattern that everything since has built on.

Reference sections

Cross-reference drawer

Design language

V0 · how it started

before the changelog

Before the page, before the cabinet and the avatars and the trace exercise, before any of the modules — there were paper flashcards. A small stack, on a kitchen table.

Sanchi and Sree were doing their annual year-planning ritual — the practice of sitting down at the start of the year to map intentions, projects, what to keep doing, what to set down. One thread that kept surfacing: how do we hold what Vikram's Astrology 101 class is teaching us? The material was rich; the cohort was warm; the recall was hard.

Sree started building flashcards. Just a deck. Sanskrit names on one side, English meanings on the other. A few dozen cards. Then those cards went digital — and the first build came together as Vedic Astrology Explorer, a dark-themed prototype drawn from 73 of Vikram's class decks and 50+ session notes. South Indian chart layout: signs fixed in the grid, houses rotating with the chosen ascendant. A side panel with the four element groupings — Agni, Prithvi, Vayu, Jala. Tabs across the top: Chart, Flashcards, Deep Dive, Planets. No avatars yet, no cabinet, no reflection prompts. Just chart geometry and a flashcard tab — the recall instinct that started everything.

↗ Open V0 standalone
V0 — the original Vedic Astrology Explorer. Self-contained HTML, dark theme, South Indian chart with rotating houses. Live and scrollable here; opens standalone in a new tab if you'd like more room.

From this seed grew the cream-and-saffron companion app you're reading the changelog of now. The flashcard tab became a full quiz system. One HTML page added drawers, then planets, then houses, then avatars. Then peer pages — Kaalapurusha, Mercury Spectrum, Astronomy. Then a Cabinet, with a Court Call game inside it. Then a Companion Workbook integration with Marie · Sudha · Mannat · Spandana · Vikram · Megha · Neha. Then a feedback channel that goes back to the same kitchen table over WhatsApp.

Twenty-five-some releases later, this is where it began.

What V0 was

What it became