TodayChart
Calendar
    N9Life

    Decentralized Self-building Future

    Sign In
    Today
    Chart
    Calendar
    Council
    Intro
    Vault
    Specialists
    Systems
    Numerology
    Destiny Matrix
    Name Code
    Chertogi
    Human Design
    Practitioners
    Privacy|Contact
    v1.104.9|Sonoratek LLC

    Documentation

    Concepts, value, and typical clone scenarios — less code.

    Quick Reference
    N9Life
    Cosmic Mirror panel
    Chart and inputs
    Today and calendar
    Numerology
    Destiny Matrix
    Name-code
    Slavic chertogi
    Human Design
    Knowledge Council
    Specialist match
    Vault and privacy

    Quick entry (CTOs · auditors · agents)

    Welcome — mission & audiences
    Quick Reference
    Getting started
    Architecture & Auth.js
    Backend modes & databases (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Security & compliance reads
    GitHub — connectplatform/ring
    Source — MIT license (GitHub)

    Documentation

    Concepts, value, and typical clone scenarios — less code.

    Quick Reference
    N9Life
    Cosmic Mirror panel
    Chart and inputs
    Today and calendar
    Numerology
    Destiny Matrix
    Name-code
    Slavic chertogi
    Human Design
    Knowledge Council
    Specialist match
    Vault and privacy

    Quick entry (CTOs · auditors · agents)

    Welcome — mission & audiences
    Quick Reference
    Getting started
    Architecture & Auth.js
    Backend modes & databases (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Security & compliance reads
    GitHub — connectplatform/ring
    Source — MIT license (GitHub)

    Documentation

    Concepts, value, and typical clone scenarios — less code.

    Quick Reference
    N9Life
    Cosmic Mirror panel
    Chart and inputs
    Today and calendar
    Numerology
    Destiny Matrix
    Name-code
    Slavic chertogi
    Human Design
    Knowledge Council
    Specialist match
    Vault and privacy

    Quick entry (CTOs · auditors · agents)

    Welcome — mission & audiences
    Quick Reference
    Getting started
    Architecture & Auth.js
    Backend modes & databases (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Security & compliance reads
    GitHub — connectplatform/ring
    Source — MIT license (GitHub)
    N9Life Logo

    Loading documentation...

    Preparing N9Life content

    N9Life Logo

    Loading documentation...

    Preparing N9Life content

    N9Life Logo

    Loading documentation...

    Preparing N9Life content

    Chart and inputs

    /chart is a pack page (ring-presets/evolvement/web/app/[locale]/chart/page.tsx). It renders ChartInputsForm and the labeled system cards. Time and place fields appear only when evolvement.systems includes human_design (showTimePlace={config.systems.includes('human_design')}).

    On this clone, saving the form does not write users.data.evolvement. L3 overwrites features/evolvement/services/chart-inputs.ts so reads and writes go to n9life_profiles. birth_date on that table wins once set.

    Fields

    FieldStored asUsed by
    Birth datebirth_date (date)Numerology, Destiny Matrix, chertogi, Personal Day, HD civil date
    Given, surname, patronymictext columns / JSONAnthroponymics layers
    Full birth nameoptional overrideExpression / Soul Urge / Personality
    Common nameoptionalLabeled Chaldean layer
    Birth timeHH:mm or HHmmHuman Design local wall clock
    Birth place labeltextDisplay only
    Latitude, longitudebirth_lat, birth_lngHuman Design + tz-lookup
    IANA timezonebirth_tzlocalBirthToUtc
    Birth UTCbirth_utc timestamptzHD Personality instant; snapshot reuse key

    Migration data/migrations/002_n9life_hd_match.sql adds birth_lat, birth_lng, birth_tz, birth_utc. Apply that migration on the n9life database before expecting HD or match tables in production.

    Save path

    Pack default (users.data.evolvement) still exists for other evolvement clones. N9Life saveChartInputs maps the form to upsertN9LifeProfile. If lat and lng are present and tz is empty, server-side tz-lookup(lat, lng) fills birthTz. localBirthToUtc(date, time, tz) uses a two-pass Intl.DateTimeFormat offset probe so historic Soviet offsets in tzdata are respected.

    Crisis language on the form is handled by pack CrisisCallout (detectCrisisKeywords, including Ukrainian phrases). That pause is ethics UX. It is not a chart input.

    Recompute versus snapshot

    calendarFromProfile / buildTodayForUser recompute date-only engines on every request (numerology, matrix, anthroponymics, chertogi). They do not trust a stale charts_by_system snapshot for those systems.

    Human Design is expensive (ephemeris + Design solver). The HD snapshot is reused only when birth_utc, latitude, and longitude are unchanged. If any of those three change, calculateHumanDesign runs again. Missing time, tz, or coordinates keep the placeholder: pending_inputs or pending_tz. status: 'ready' is the only status that shows Type / Strategy / Authority as computed values. The HD page maps ready to t('status.ready'), not pending.

    OwnerJsonExportButton can download the member's own JSON. JSDoc on computeCharts forbids diary or aspiration text in that payload.

    Place picker on /chart

    Pack BirthPlaceFields dynamically imports LocationMapModal with persistProfile={false}, hidden birthLat / birthLng inputs, and a timezone select. The Cosmic Mirror panel uses the same contract through BirthPlacePicker.

    Birth place is not "current city". Cultural address on the Ring profile and HD birth coordinates are different writes. The map modal default remains persistProfile={true} for profile-address flows elsewhere in Ring.

    Related documentation

    Cosmic Mirror panel

    Same-workflow: panel save uses the same fields

    Human Design

    Next-step: what those coordinates compute

    Name-code

    See-also: name layers stored here

    Chart and inputs

    /chart is a pack page (ring-presets/evolvement/web/app/[locale]/chart/page.tsx). It renders ChartInputsForm and the labeled system cards. Time and place fields appear only when evolvement.systems includes human_design (showTimePlace={config.systems.includes('human_design')}).

    On this clone, saving the form does not write users.data.evolvement. L3 overwrites features/evolvement/services/chart-inputs.ts so reads and writes go to n9life_profiles. birth_date on that table wins once set.

    Fields

    FieldStored asUsed by
    Birth datebirth_date (date)Numerology, Destiny Matrix, chertogi, Personal Day, HD civil date
    Given, surname, patronymictext columns / JSONAnthroponymics layers
    Full birth nameoptional overrideExpression / Soul Urge / Personality
    Common nameoptionalLabeled Chaldean layer
    Birth timeHH:mm or HHmmHuman Design local wall clock
    Birth place labeltextDisplay only
    Latitude, longitudebirth_lat, birth_lngHuman Design + tz-lookup
    IANA timezonebirth_tzlocalBirthToUtc
    Birth UTCbirth_utc timestamptzHD Personality instant; snapshot reuse key

    Migration data/migrations/002_n9life_hd_match.sql adds birth_lat, birth_lng, birth_tz, birth_utc. Apply that migration on the n9life database before expecting HD or match tables in production.

    Save path

    Pack default (users.data.evolvement) still exists for other evolvement clones. N9Life saveChartInputs maps the form to upsertN9LifeProfile. If lat and lng are present and tz is empty, server-side tz-lookup(lat, lng) fills birthTz. localBirthToUtc(date, time, tz) uses a two-pass Intl.DateTimeFormat offset probe so historic Soviet offsets in tzdata are respected.

    Crisis language on the form is handled by pack CrisisCallout (detectCrisisKeywords, including Ukrainian phrases). That pause is ethics UX. It is not a chart input.

    Recompute versus snapshot

    calendarFromProfile / buildTodayForUser recompute date-only engines on every request (numerology, matrix, anthroponymics, chertogi). They do not trust a stale charts_by_system snapshot for those systems.

    Human Design is expensive (ephemeris + Design solver). The HD snapshot is reused only when birth_utc, latitude, and longitude are unchanged. If any of those three change, calculateHumanDesign runs again. Missing time, tz, or coordinates keep the placeholder: pending_inputs or pending_tz. status: 'ready' is the only status that shows Type / Strategy / Authority as computed values. The HD page maps ready to t('status.ready'), not pending.

    OwnerJsonExportButton can download the member's own JSON. JSDoc on computeCharts forbids diary or aspiration text in that payload.

    Place picker on /chart

    Pack BirthPlaceFields dynamically imports LocationMapModal with persistProfile={false}, hidden birthLat / birthLng inputs, and a timezone select. The Cosmic Mirror panel uses the same contract through BirthPlacePicker.

    Birth place is not "current city". Cultural address on the Ring profile and HD birth coordinates are different writes. The map modal default remains persistProfile={true} for profile-address flows elsewhere in Ring.

    Related documentation

    Cosmic Mirror panel

    Same-workflow: panel save uses the same fields

    Human Design

    Next-step: what those coordinates compute

    Name-code

    See-also: name layers stored here

    Chart and inputs

    /chart is a pack page (ring-presets/evolvement/web/app/[locale]/chart/page.tsx). It renders ChartInputsForm and the labeled system cards. Time and place fields appear only when evolvement.systems includes human_design (showTimePlace={config.systems.includes('human_design')}).

    On this clone, saving the form does not write users.data.evolvement. L3 overwrites features/evolvement/services/chart-inputs.ts so reads and writes go to n9life_profiles. birth_date on that table wins once set.

    Fields

    FieldStored asUsed by
    Birth datebirth_date (date)Numerology, Destiny Matrix, chertogi, Personal Day, HD civil date
    Given, surname, patronymictext columns / JSONAnthroponymics layers
    Full birth nameoptional overrideExpression / Soul Urge / Personality
    Common nameoptionalLabeled Chaldean layer
    Birth timeHH:mm or HHmmHuman Design local wall clock
    Birth place labeltextDisplay only
    Latitude, longitudebirth_lat, birth_lngHuman Design + tz-lookup
    IANA timezonebirth_tzlocalBirthToUtc
    Birth UTCbirth_utc timestamptzHD Personality instant; snapshot reuse key

    Migration data/migrations/002_n9life_hd_match.sql adds birth_lat, birth_lng, birth_tz, birth_utc. Apply that migration on the n9life database before expecting HD or match tables in production.

    Save path

    Pack default (users.data.evolvement) still exists for other evolvement clones. N9Life saveChartInputs maps the form to upsertN9LifeProfile. If lat and lng are present and tz is empty, server-side tz-lookup(lat, lng) fills birthTz. localBirthToUtc(date, time, tz) uses a two-pass Intl.DateTimeFormat offset probe so historic Soviet offsets in tzdata are respected.

    Crisis language on the form is handled by pack CrisisCallout (detectCrisisKeywords, including Ukrainian phrases). That pause is ethics UX. It is not a chart input.

    Recompute versus snapshot

    calendarFromProfile / buildTodayForUser recompute date-only engines on every request (numerology, matrix, anthroponymics, chertogi). They do not trust a stale charts_by_system snapshot for those systems.

    Human Design is expensive (ephemeris + Design solver). The HD snapshot is reused only when birth_utc, latitude, and longitude are unchanged. If any of those three change, calculateHumanDesign runs again. Missing time, tz, or coordinates keep the placeholder: pending_inputs or pending_tz. status: 'ready' is the only status that shows Type / Strategy / Authority as computed values. The HD page maps ready to t('status.ready'), not pending.

    OwnerJsonExportButton can download the member's own JSON. JSDoc on computeCharts forbids diary or aspiration text in that payload.

    Place picker on /chart

    Pack BirthPlaceFields dynamically imports LocationMapModal with persistProfile={false}, hidden birthLat / birthLng inputs, and a timezone select. The Cosmic Mirror panel uses the same contract through BirthPlacePicker.

    Birth place is not "current city". Cultural address on the Ring profile and HD birth coordinates are different writes. The map modal default remains persistProfile={true} for profile-address flows elsewhere in Ring.

    Related documentation

    Cosmic Mirror panel

    Same-workflow: panel save uses the same fields

    Human Design

    Next-step: what those coordinates compute

    Name-code

    See-also: name layers stored here

    1. Docs
    2. /N9Life
    3. /Chart and inputs

    Updated Sep 11, 20263 min listen

    1. Docs
    2. /N9Life
    3. /Chart and inputs

    Updated Sep 11, 20263 min listen

    1. Docs
    2. /N9Life
    3. /Chart and inputs

    Updated Sep 11, 20263 min listen