ProjectBeyond Moonlight The Journal
How this works

Your birth details are computed on your phone

An entire industry is built on collecting birth data. Ours computes the chart where you typed it and does not need the data afterwards.

2026-07-29

Date, time and place of birth is about as identifying as personal data gets. It is a primary key for a human being: it is used to verify identity, it never changes, and it cannot be rotated after a breach the way a password can.

In this category it is also the product. Birth data is what an astrology portal collects, and everything downstream — the reports, the retargeting, the "dosha detected, remedy ₹2,100" — runs on having it.

So it is worth being precise about what happens here instead.

The chart is cast in your browser

Your birth details go into an ephemeris that is already on your device, and the positions come out on your device. Nothing is sent away to be calculated. If you switch your connection off after the page loads, the chart still casts, the dashas still compute, and the sky still moves — because none of that was ever happening somewhere else.

This is not a privacy feature bolted on. It is the cheapest architecture there is, which is why it is also the honest one: we do not pay for the servers we do not run, and we cannot leak the data we do not hold.

What is recorded, said plainly

Charts cast here are logged so the engine can be tested against real charts. That is the whole method, and we would rather say it on the welcome screen — where it is written, in the copy people actually read — than bury it in a policy.

What that log holds: the birth details, and the resulting positions. What it does not hold: your name, your email, or any account, unless you choose to sign in. And there is a real switch in You that turns it off. When it is off, nothing about the chart is sent — not a redacted version, not a count. Off means off.

Separately, and deliberately not the same thing, we keep an ordinary web log: country, city, which browser family, where the link came from. What a plain web server records anyway.

No third-party anything

There is no analytics script, no tag manager, no advertising pixel, no font loaded from a CDN, and no embedded widget. Nothing on the page is fetched from another origin, which means:

The usage counts we do keep are written by our own code to our own database. Geography comes from the edge, server-side; the IP address that produced it is used for rate limiting and dropped. It is never stored, never returned, and never written to a row.

The part most companies would not print

Personal data here is protected by the database, not by the interface. Every table that holds anything personal — the charts you keep, the notebook, the usage log — is behind row-level security, so an anonymous read returns an empty list rather than a filtered page.

And there is no admin key anywhere in this system. Not in the app, not in the server functions, not in an environment variable. The escape hatch that most products keep for support tickets — the credential that reads any row — does not exist here, by design. It means some things are harder for us. It also means there is nothing to steal that would open everyone's data at once.

What you can do about it

We would rather have fewer rows and be able to describe them accurately.

What we will never sell you →

Cast the chart this is describing.

Free, computed on your own device, and it never asks for a card. Your chart, your periods and your sky cost nothing and stay that way.

Read my chart →

Beyond Moonlight — A reasoning engine for Vedic astrology, built rule by rule. Descriptive, never prescriptive. We do not sell remedies, gemstones or poojas, and we never will.

All articles · The app · hi@projectbeyondmoonlight.com · last updated 2026-07-29