// Landing, Auth Modal, Onboarding, Science screens. const inputStyle = { width: '100%', padding: '10px 12px', border: '1px solid var(--k-line)', borderRadius: 8, fontSize: 14, fontFamily: 'var(--k-sans)', background: 'var(--k-surface)', color: 'var(--k-ink)', outline: 'none', boxSizing: 'border-box', }; // ── Landing ─────────────────────────────────────────────────────────── function LandingScreen({ onEnter, onAuth, isAuthed }) { const isMobile = window.useIsMobile ? window.useIsMobile() : false; const handleAuth = () => { if (onAuth) onAuth(); }; return (
{/* ── Top nav ─────────────────────────────────────────── */}
{/* ── Hero ────────────────────────────────────────────── */}

One Assessment. Deterministic Scoring.
Three outputs that change how you work, lead your team, and use AI.

Kalibr measures how you think, decide, and collaborate, then produces three outputs: a personal psychometric map, a team cohesion graph, and an AI constitution.

{isAuthed ? : }
{/* ── Three output cards ───────────────────────────── */}
{[ { tag: 'Output 1', title: 'Personal Psychometric Map', accent: 'var(--k-indigo)', icon: ( ), points: [ '10 dimensions covering how you think, lead, take risk, and recover', 'Deterministic scoring — fixed algorithm, no AI interpretation drift', 'Blind spot report tailored to your specific score pattern', 'Understand your operating profile before a high-stakes moment does it for you', ]}, { tag: 'Output 2', title: 'Team Cohesion Map', accent: 'var(--k-sage)', icon: ( ), points: [ 'Relational graph of every profiled person in your organisation', 'Pairwise compatibility scores across all 10 dimensions for every pair', 'Shows where relationships are structurally strong and where friction is likely', 'Surfaces communication, leadership, and feedback mismatches before they become problems', ]}, { tag: 'Output 3', title: 'AI Constitution', accent: 'var(--k-accent)', icon: ( ), points: [ 'Personalised system prompt derived from your psychometric profile', 'Targets your specific blind spots — not generic AI behaviour', 'Structures output to match how you actually process information', 'Stress-tests your ideas rather than blindly reinforcing them', 'Works with Claude, ChatGPT, or any LLM', ]}, ].map(c => (
{c.icon}
{c.tag}

{c.title}

    {c.points.map(pt =>
  • {pt}
  • )}
))}
{/* ── Two-layer architecture note ──────────────────── */}
Layer 1 · Scoring

A fixed algorithm processes your 212 responses and produces 10 scores. Deterministic — identical inputs always produce identical outputs. No AI is involved at this stage. Your scores cannot be hallucinated.

Layer 2 · Synthesis

AI turns those fixed scores into prose — your profile narrative, blind spot analysis, and AI constitution. The scores don't change. The writing is generated from them. Two separate layers, on purpose.

{[['212','items across 17 scales'],['10','proprietary dimensions'],['8','supported crosswalk instruments'],['±5','confidence band, always surfaced']].map(([n,l]) => (
{n}
{l}
))}
Kalibr measures working-style preferences and interpersonal dynamics. It is not a hiring decision tool, and does not measure intelligence, skill, education, or training.
); } // ── Onboarding ──────────────────────────────────────────────────────── function OnboardingScreen({ onEnter }) { const isMobile = window.useIsMobile ? window.useIsMobile() : false; const [step, setStep] = React.useState(0); const [consents, setConsents] = React.useState({ data: false, pair: false, ai: false }); const steps = [ { title: 'Welcome, let’s set expectations', body: 'This takes about 25 minutes. Answer honestly — the engine runs quality checks for central tendency and acquiescence. There are no right answers.', icon: '◌' }, { title: 'What you’ll get', body: 'A personal profile across 10 dimensions, a blind-spot report tailored to your score pattern, and a personal AI constitution you can load into Claude, ChatGPT, or Gemini.', icon: '◎' }, { title: 'Consent & data', body: 'Your psychometric data is encrypted at rest. We never surface admin-only (SD3) scores. You can delete your profile at any time.', icon: '▽' }, ]; const s = steps[step]; const last = step === steps.length - 1; return (
{steps.map((_,i) =>
)}
{s.icon}

{s.title}

{s.body}

{last && (
{[['data','Store my responses for scoring and report generation.'],['pair','Let me invite a partner to unlock the pairwise reports.'],['ai','Generate a personal AI constitution and let me copy it off-platform.']].map(([k,v]) => ( ))}
)}
{last ? : }
); } // ── Science ─────────────────────────────────────────────────────────── function ScienceScreen({ onEnter }) { const isMobile = window.useIsMobile ? window.useIsMobile() : false; const foundation = [ { label: 'Personality at the facet level', body: 'The personality backbone covers the full breadth of the Big Five at the facet level, not the broad domain level. This matters because facets predict specific behaviours that broad domains cannot distinguish. Two people can have identical Conscientiousness scores and completely different working styles depending on which facets drive that score.', }, { label: 'Perseverance and consistency as separate subscales', body: 'Perseverance and consistency of interest are tracked as separate subscales because they behave differently across profiles and across time horizons. A person who never gives up and a person who never loses interest are not the same person, and conflating them produces misleading outputs.', }, { label: 'Resilience as coping capacity', body: 'Resilience is measured as self-reported coping capacity — specifically, how quickly someone believes they recover from setbacks. The distinction matters for team dynamics: someone who appears resilient may be sustaining output at a hidden personal cost.', }, { label: 'Risk signal layer', body: 'A risk signal layer is included and scored by the algorithm. It is not shown to participants. It informs the operator view only, consistent with the instrument\'s intended use in professional settings.', }, ]; const findings = [ { n: '01', title: 'Personality predicts team performance more reliably than individual performance', body: 'The team-level personality effect is substantially stronger than the individual-level effect. A meta-analysis of 168 effect sizes found that team composition on agreeableness and conscientiousness predicted team performance at effect sizes two to three times larger than the equivalent individual-level relationships. Personality matters more, not less, when people have to work together.', stats: [ 'ρ = 0.34 — team mean agreeableness → team performance (Bell, 2007)', 'ρ = 0.51 — team elevation in agreeableness → team performance (Peeters, 2006)', 'ρ = 0.11 — individual agreeableness → individual performance', ], }, { n: '02', title: 'One person can undermine an entire team', body: 'Agreeableness is the exception to the team-mean rule. Its effect on team performance is equally strong whether measured as the team average or the team minimum. One person significantly below the group on this dimension disrupts social cohesion for everyone regardless of everyone else\'s scores. This is why Kalibr uses a minimum-threshold function for specific dimensions rather than treating all dimensions as simple averages.', stats: [], }, { n: '03', title: 'Variability within a team predicts performance independently of the average level', body: 'A team where everyone scores similarly on conscientiousness outperforms a team with the same average but high internal variation — even when that variation includes some very high scorers. Peeters et al. (2006) found variability in conscientiousness and agreeableness to be independent negative predictors of team performance. This is the research foundation for Kalibr\'s pairwise approach: knowing individual scores is not enough. The distance between two people\'s scores matters.', stats: [ 'ρ = −0.24 — conscientiousness variability → team performance', 'ρ = −0.12 — agreeableness variability → team performance', ], }, { n: '04', title: 'Similarity and complementarity predict compatibility through different mechanisms', body: 'Profile similarity consistently predicts relationship satisfaction on affiliation-type traits. Complementarity predicts it on dominance-type traits. The implication: a single distance metric applied uniformly across all personality dimensions will produce wrong answers. Some pairs work best when scores are close. Others work best when scores diverge. Kalibr uses different matching functions for different dimensions based on which mechanism the research supports for that construct.', stats: [], }, { n: '05', title: 'Conscientiousness has the broadest validity of any Big Five trait across occupational groups', body: 'Of all personality traits, conscientiousness is the only one showing consistent predictive validity for job performance across nearly all occupational groups studied — in a meta-analysis of 117 validity studies covering nearly 24,000 subjects. This finding has replicated across six decades of research and forms the backbone of Kalibr\'s execution-related dimensions.', stats: [ '117 validity studies across nearly all occupational groups studied', 'N ≈ 24,000 subjects in the meta-analysis', ], }, ]; const honesty = [ { icon: '✓', label: 'Strongly Supported', subject: 'The instruments and the team-level findings', body: 'The use of validated personality measurement to predict team outcomes is one of the most replicated findings in organisational psychology. The instruments Kalibr draws on are independently validated with published reliability and validity data.', bg: 'var(--k-surface)', ink: 'var(--k-ink)', border: 'var(--k-line-strong)', }, { icon: '~', label: 'Theoretically Defensible', subject: 'The proprietary dimension composites and pairwise scoring engine', body: 'The specific way Kalibr combines instrument outputs into dimensions, and the specific way it computes compatibility between two profiles, is theoretically motivated by the research above. The weights, formulas, and matching functions are defensible by design logic and the literature — but they have not been independently validated against outcome data. They are claims, not findings.', bg: 'var(--k-bg-2)', ink: 'var(--k-ink-2)', border: 'var(--k-line-strong)', }, { icon: '◌', label: 'Active Hypothesis', subject: 'Predictive validity before two people have worked together', body: 'No published study has shown that a pairwise psychometric score computed before two people have worked together predicts the quality of their working relationship at six months. This is the core hypothesis Kalibr is testing prospectively through its pilot programme. We have construct validity. We do not yet have criterion validity. We are honest about that distinction.', bg: 'var(--k-bg-3)', ink: 'var(--k-ink-3)', border: 'var(--k-line)', }, ]; return (
{/* Hero */}
The Science

Built on decades of
peer-reviewed research.

Every dimension in Kalibr traces to a published psychometric instrument. We do not invent new constructs. We assemble validated foundations into a proprietary measurement and scoring engine, then add an interpretation layer built specifically for working relationships and team dynamics.

We distinguish between what is empirically established, what is theoretically defensible, and what is a hypothesis we are actively testing. Most products in this space do not make that distinction. We think it matters.
{/* Section 1 */}
Section 1

The Foundation

Kalibr's assessment draws on four independently validated instruments, administered as a single unified battery. The specific instruments, their weighting, combination methodology, and the proprietary dimension composites built on top of them are confidential. What we can say:

{foundation.map((f, i) => (
{f.label}

{f.body}

))}
{/* Section 2 */}
Section 2

What the Research Says

{findings.map(f => (
{f.n}
{f.title}

{f.body}

{f.stats.length > 0 && (
{f.stats.map(s => (
{s}
))}
)}
))}
{/* Section 3 */}
Section 3

Scientific Honesty

{honesty.map(h => (
{h.icon}
{h.label}
{h.subject}

{h.body}

))}
"The product is scientifically credible, built on the right literature, and uses validated instruments correctly. The pairwise compatibility algorithm is novel and unvalidated — which is exactly what the pilot is for."
{/* Section 4 */}
Section 4

References

Barrick, M.R. & Mount, M.K. (1991). The Big Five personality dimensions and job performance. Personnel Psychology, 44, 1–26.
Bell, S.T. (2007). Deep-level composition variables as predictors of team performance. Journal of Applied Psychology, 92(3), 595–615.
Dryer, D.C. & Horowitz, L.M. (1997). When do opposites attract? Journal of Personality and Social Psychology, 72(3), 592–603.
Duckworth, A.L. & Quinn, P.D. (2009). Development and validation of the Short Grit Scale. Journal of Personality Assessment, 91(2), 166–174.
Felps, W., Mitchell, T.R. & Byington, E. (2006). How, when, and why bad apples spoil the barrel. Research in Organizational Behavior, 27, 175–222.
Han, A., Krieger, F., Kim, S., Nixon, N. & Greiff, S. (2024). Revisiting the relationship between team members' personality and their team's performance: A meta-analysis. Journal of Research in Personality.
Jolić Marjanović, Z. et al. (2024). The Big Five and collaborative problem solving. Personality and Social Psychology Bulletin.
Peeters, M.A.G. et al. (2006). Personality and team performance: A meta-analysis. European Journal of Personality, 20, 377–396.
Scherrer, P. et al. (2018). Similarity and positivity of personality profiles predict relationship satisfaction. Frontiers in Psychology.
Van Vianen, A.E.M. & De Dreu, C.K.W. (2001). Personality in teams. European Journal of Work and Organizational Psychology, 10(2).
Base assessment items IPIP public domain. Platform algorithms, dimension composites, pairwise scoring engine, and interpretation layer proprietary. © 2026 Kalibr, Aryan Shah. All rights reserved.
); } function PricingScreen({ onEnter }) { const isMobile = window.useIsMobile ? window.useIsMobile() : false; const FREE_ITEMS = [ 'Complete 212-item assessment', 'Feedback Orientation score & narrative', 'First blind spot identified', 'Response quality check results', ]; const LOCKED_ITEMS = [ 'Remaining 9 dimension scores', 'Full dimension narratives', 'Full blind spot analysis (up to 3)', 'AI Constitution', 'Downloadable report', ]; const PAID_ITEMS = [ 'All 10 dimension scores + narratives', 'Full blind spot analysis — up to 3 patterns', 'Pattern synthesis across blind spots', 'Context predictions across 4 environments', 'Named strength + watch area', 'Cross-dimensional pattern flags', 'Grit, resilience & work ethic scores', 'AI Constitution for Claude, ChatGPT, Gemini + other tools', 'Downloadable HTML report', ]; const DELIVERABLES = [ { label: '10-Dimension Profile', icon: ( ), body: 'A scored map of how you think, decide, and operate. Fixed algorithm — deterministic, not AI. The same inputs always produce the same outputs.', }, { label: 'Blind Spot Analysis', icon: ( ), body: 'Up to three structural patterns in your score profile that cost you trust, time, or accurate information — each with an observable working agreement.', }, { label: 'AI Constitution', icon: ( ), body: 'A personalised system prompt derived directly from your scores. Paste it into Claude, ChatGPT, Gemini, or other tools to recalibrate how AI responds to you.', }, ]; return (
{/* ── Hero ──────────────────────────────────────────────────── */}
Pricing

One assessment.
Permanent self-knowledge.

A single payment unlocks your complete psychometric profile, blind spot report, and AI constitution. No subscription. No upsell. No expiry.

$50 one-time · instant access
{/* ── Free vs Paid ──────────────────────────────────────────── */}
{/* Free */}
Free
Orientation
{FREE_ITEMS.map(item => (
{item}
))}
{LOCKED_ITEMS.map(item => (
{item}
))}
{/* Paid */}
Full report
$50 one-time
Everything, permanently
Everything in free, plus:
{PAID_ITEMS.map(item => (
{item}
))}
{/* ── Architecture note ────────────────────────────────────── */}
Layer 1 · Scoring

A fixed algorithm processes your responses and produces 10 scores. Deterministic — the same inputs always produce the same outputs. No AI, no interpretation drift. Your scores cannot be hallucinated.

Layer 2 · Synthesis — what you unlock

AI turns your fixed scores into readable prose — your profile narrative, blind spot analysis, and AI constitution. The scores are the input. The narrative is the output. That's what the $50 unlocks.

{/* ── Three deliverables ────────────────────────────────────── */}
What you receive

Three permanent artefacts

{DELIVERABLES.map(d => (
{d.icon}
{d.label}

{d.body}

))}
{/* ── Value anchor ──────────────────────────────────────────── */}
Why $50
{[ { comparator: 'Coaching session', cost: '$200–400', note: '60 minutes · no document' }, { comparator: 'Consultant report', cost: '$300–800', note: '2-week turnaround · generic framework' }, { comparator: 'Kalibr', cost: '$50', note: '25 minutes · same-day · yours permanently', highlight: true }, ].map(c => (
{c.comparator}
{c.cost}
{c.note}
))}
{/* ── Bottom CTA ────────────────────────────────────────────── */}

The assessment takes 20–25 minutes. Your scores are calculated immediately.
The full report generates in under a minute once you submit.

); } function SettingsScreen({ onEnter }) { const isMobile = window.useIsMobile ? window.useIsMobile() : false; const [user, setUser] = React.useState(() => { try { return JSON.parse(localStorage.getItem('kalibr.user') || '{}'); } catch(e) { return {}; } }); const [form, setForm] = React.useState({ firstName: user.firstName || '', lastName: user.lastName || '', org: user.org || '', role: user.role || '', }); const [saving, setSaving] = React.useState(false); const [deleting, setDeleting] = React.useState(false); const [saved, setSaved] = React.useState(false); const [error, setError] = React.useState(''); const [confirmDelete, setConfirmDelete] = React.useState(false); const handleSave = async () => { setSaving(true); setError(''); setSaved(false); try { const updates = { name: form.firstName + ' ' + form.lastName, org: form.org, role: form.role }; const res = await fetch('/me', { method: 'PATCH', headers: window.kalibrAuth.getHeaders({ 'Content-Type': 'application/json' }), body: JSON.stringify(updates), }); if (!res.ok) { setError('Could not save changes. Please try again.'); return; } const updated = { ...user, ...updates, firstName: form.firstName, lastName: form.lastName }; localStorage.setItem('kalibr.user', JSON.stringify(updated)); window.__kalibr_participant_name = updates.name || ''; window.__kalibr_participant_role = updates.role || ''; setUser(updated); setSaved(true); setTimeout(() => setSaved(false), 3000); } catch(e) { setError('Something went wrong.'); } finally { setSaving(false); } }; const handleDelete = async () => { setDeleting(true); setError(''); try { const res = await fetch('/me', { method: 'DELETE', headers: window.kalibrAuth.getHeaders(), }); if (!res.ok) { setError('Could not delete account. Please try again.'); return; } localStorage.removeItem('kalibr.user'); localStorage.removeItem('kalibr.session_token'); window.kalibrAuth?.clearSession?.(); localStorage.removeItem('kalibr.be.cards'); window.location.reload(); } catch(e) { setError('Something went wrong.'); } finally { setDeleting(false); } }; const sInput = { width: '100%', padding: '10px 12px', border: '1px solid var(--k-line)', borderRadius: 8, fontSize: 14, fontFamily: 'var(--k-sans)', background: 'var(--k-surface)', color: 'var(--k-ink)', outline: 'none', boxSizing: 'border-box', }; return (
Account
Profile information
First name
setForm(f => ({ ...f, firstName: e.target.value }))} style={sInput} />
Last name
setForm(f => ({ ...f, lastName: e.target.value }))} style={sInput} />
Email
Email cannot be changed.
Organisation
setForm(f => ({ ...f, org: e.target.value }))} style={sInput} />
Job title / role
setForm(f => ({ ...f, role: e.target.value }))} style={sInput} />
{error &&
{error}
} {saved &&
Changes saved.
}
Danger zone
Delete account

Permanently deletes your account, assessment responses, and all generated reports. This cannot be undone.

{!confirmDelete ? ( ) : (
Are you sure? This cannot be undone.
)}
); } Object.assign(window, { LandingScreen, OnboardingScreen, ScienceScreen, PricingScreen, SettingsScreen });