A little wisdom. A little wonder. A little more you.
Starseed brings name-derived Nakshatra associations and Chaldean numerology into one calm, accessible website. Explore a name once, compare spellings, examine dates, and follow reference links to understand each tradition separately.
- Explore: Name associations, letter-by-letter arithmetic, and optional birth-day and life-path readings.
- Names: Manual comparisons and rule-based variations with both traditions shown. Raw letter totals and sums of word roots are labelled separately.
- Vehicles: Full-registration arithmetic with every letter and digit, plus optional comparisons to the owner’s name, birth-day, and life-path roots.
- Dates: Single-date evaluation and 7–365 day range exploration, traditional favourable classifications, intention readings, and all calculation steps.
- Learn: All 27 Nakshatras and numbers 1–52, searchable by name, symbol, planet, or text. The supplementary Abhijit association is retained in name results.
Personal inputs remain in tab memory, survive navigation, and clear on reload or Clear all. The website makes no API requests and uses no persistent browser storage. Input spellings use A–Z; enter an explicit Latin transliteration for other scripts or accented names. Ignored punctuation is disclosed with the calculation. Personal-name inputs reject digits and direct registrations to Vehicles.
Requires Node 22.12+ and npm.
npm ci
npm run dev
npm test
npm run build
npm run preview
# Browser tests (one-time browser installation)
npx playwright install chromium
npm run test:uiThe React/Vite website uses hash navigation, so routes work on static hosts. All required assets are bundled locally. shared/ is the canonical source of calculations and reference data for browser, CLI, and server. public/ contains the existing branding/reference assets and domain configuration. src/ contains the unified interface.
npm run releaseThis builds dist/ and prepares the checked-in docs/ Pages output, preserving starseed.name and existing assets. It replaces only generated bundles and the legacy matcher script. Review and commit the resulting changes, then publish through the repository’s existing Pages deployment. The release command never pushes or changes remote settings. The build also works under a repository subpath.
npm run build
npm start
# http://localhost:3001
docker compose up --buildThe server hosts the same build and an optional REST API. Docker includes the shared calculation modules. The public browser app does not depend on this server.
POST JSON under /api:
/analyze:{ "fullName": "John Smith", "birthDate": "1980-01-08" }; birthDate is optional. ReturnsfullName, nullablebirthDate,nakshatra(matching method, candidates and associations), andnumerology(name/birth analysis and interpretations)./vehicle:{ "registration": "W6GGN", "owner": { "fullName": "John Smith", "birthDate": "1980-01-08" } }; owner and its fields are optional. ReturnsnormalizedRegistration,characters(character, value, type),ignoredSeparators,total,root,compoundInfo,rootInfo, andcomparisons(kind,label,ownerRoot,vehicleRoot,sameRoot,relationship). No default owner is assumed./profile:fullName,birthDate; retains the original numerology response fields./evaluate:fullName,birthDate,targetDate, optionalintention./scan:fullName,birthDate,startDate, optionaldaysCount(integer 1–365, default 30),intention./suggest-names:baseName, optionalgoalId,customTargetNumber(10–52),maxResults(1–100).
GET /single-numbers, /single-numbers/:id, /compound-numbers, /compound-numbers/:id, and /goal-presets retain their existing response formats. Invalid inputs return 400. Dates use strict YYYY-MM-DD calendar values and UTC arithmetic. Optional numeric API inputs also accept numeric strings.
node cli.js --vehicle --registration "W6GGN"
node cli.js --vehicle --registration "W6GGN" --name "John Smith" --dob "1980-01-08"
node cli.js --analyze --name "John Smith"
node cli.js --analyze --name "John Smith" --dob "1980-01-08"
node cli.js --profile --name "John Smith" --dob "1980-01-08"
node cli.js --name "John Smith" --dob "1980-01-08" --date "2026-04-26" --goal "Ask for a rise in wages"
node cli.js --scan --name "John Smith" --dob "1980-01-08" --start "2026-04-26" --days 30
node cli.js --suggest --name "John Smith" --goal-id wealth --target 15--analyze and --vehicle emit machine-readable JSON. Existing CLI modes retain their flags and readable reports.
The existing Starseed matcher and syllable-table associations are preserved, including multiple table associations and supplementary Abhijit syllables. A name association is distinct from a birth-chart Nakshatra. The merger uses the original numerology project’s Cheiro-style five-step date calculation and single-number interpretation catalogue; these are separately labelled. Historical source verification is outside this integration.
John Smith remains the arithmetic regression example: JOHN = 18 → 9, SMITH = 17 → 8; word-root sum = 17 → 8. For birth day 8 and target day 26: 8 + 8 = 16 → 7, then 7 + 8 = 15 → 6. The method’s final sum ranges from 2 to 18, so the calendar cannot produce every catalogue compound. Results below 10 use single-root interpretation with neutral classification. Suggestions may match a raw letter total or word-root sum and disclose which one.
These are traditional interpretations for reflection, not guaranteed outcomes. No combined compatibility score is introduced. See privacy and methods.
The whole registration is summed once using Chaldean letter values and digits at face value. W6GGN = W(6) + 6 + G(3) + G(3) + N(5) = 23 → 5. Spaces and hyphens are ignored as separators, not used for word-root reduction. Case does not matter and leading/embedded zeros are retained. Letters-only, digits-only, and mixed registrations are accepted; use 1–20 alphanumeric characters after removing separators. Other characters, empty input, and all-zero registrations are rejected.
Totals from 10–52 link to the existing compound catalogue; other totals use the single-root reading without inventing compound content. Optional owner comparisons show “Same root” or “Different roots” separately for each available personal root. This is not a suitability score, a Nakshatra reading, or a check of registration legality/availability. The owner profile is never replaced by a registration. Everything stays in tab memory and clears with reload or Clear all.
npm test runs portable Starseed matching regressions, the imported numerology baseline, unified edge-case tests, and HTTP/CLI parity tests. npm run build checks browser compilation. npm run test:ui exercises desktop and mobile Chromium for shared state, name application, clearing, library links, date details, keyboard access, overflow, and the absence of API requests or persistent storage. npm run format:check checks source formatting.