Skip to content
Back to Projects
Full-StackSaaSData ScienceLive

PersonalityStrategy.com

Laravel assessment platform: a clean-room personality test with paid PDF reports.

Screenshot of the PersonalityStrategy landing page with the two-dimension personality map
assessment items
36
automated tests
459

The Challenge

Build a personality assessment that is clean-room from the item bank up – every item written from scratch against public construct definitions – and turn it into a product that scores results, sells premium reports and runs safely in production.

The Approach

A Laravel application around a 36-item instrument: 18 items for Extraversion and 18 for Emotional Stability (shown as Calm–Sensitive), answered on a 7-point scale and scored 0–100 per axis, with facet scores reported only when at least three facet items are answered. Stripe checkout with signed webhooks fulfils one-off report purchases, and the app refuses to boot if a Stripe key is set without the webhook secret. Premium reports render to PDF through headless Chrome. A Filament admin manages items and norms, and the front end follows a documented design system. It runs on my own HestiaCP VPS with nginx, PHP-FPM and MariaDB.

Key Features

  • Clean-room 36-item instrument on a 7-point scale, two axes scored 0–100 with facet scores
  • Stripe checkout with signed webhooks, plus an hourly job that reconciles purchases whose webhook never arrived
  • Premium PDF reports rendered with headless Chrome (Puppeteer)
  • Filament admin for items and norms
  • Documented design system
  • Hosted on a HestiaCP VPS with nginx, PHP-FPM and MariaDB

Results & Impact

  • Live at personalitystrategy.com
  • Built solo, from item bank to checkout
  • Automated test suite grown from 305 to 459 tests in one review-and-fix sweep
  • Boot-time guards against unsigned webhooks and a missing card-statement descriptor

Working on something where people and data meet?

AI automation, data science, psychometric validation or sports psychology – tell me what you're building.