Profile
Break “mental shape” down into concrete competencies - motivation, confidence, stress management, focus, coping with pain and injury - and score each on a scale of 0 to 10.
Psychological and cognitive testing platform for athletes and coaches
An experienced coach can tell when an athlete is off: burned out before a competition, losing focus, afraid to push back to their old level after an injury. But noticing is one thing - measuring it and tracking it over time is another. NN Academy, a French mental preparation school, came to us to turn those observations into clear numbers.
We built the project from scratch and end to end: from the structure and Figma mockups to the production server. The first version shipped in 3 months, and we have been growing the platform for 4 years now without a single service interruption. Today MyMinnd is nine public tests, from the athlete mental preparation profile to the PVT vigilance test, used by 14,000 people.
Break “mental shape” down into concrete competencies - motivation, confidence, stress management, focus, coping with pain and injury - and score each on a scale of 0 to 10.
A questionnaire is self-assessment, and self-assessment is easy to embellish. It needs cognitive tests alongside it that measure without flattery: reaction speed, sustained attention, working memory span.
An athlete takes a test before and after a training program, and the platform finds their previous attempt and shows the progress on its own. No accounts, no passwords.
Everyone who takes a test is a potential client for the academy. With consent, results flow automatically into the CRM and email sequences, segmented by audience.

We designed the interface in Figma following the client’s brand book: first the test structure, the flows and screen states, then the whole visual layer in the academy’s brand colors. The dark background and violet accents feel athletic and modern.
Bright illustrations on the cards take the anxiety out of testing, so it never feels like an exam; emoji make the results friendlier; and the red-yellow-green color logic reads without explanation.



The first architectural decision - tests are not hard-coded, they are assembled in the admin panel. The hierarchy of test - question groups - competencies - categories lets the academy’s psychologists grow the platform themselves: the system already holds 22 tests, 1,374 questions, 270 groups and 55 competencies.
Every scale is scored from 0 to 10 with automatic color grading, so the result reads at a glance. The result page has two modes: a detailed breakdown of every competency, and a compact dashboard that fits all 30+ scales on one screen.

The most exciting part of the project. Alongside the questionnaires, we built four classic tests from cognitive psychology - as interactive Vue 3 and Pinia applications running with millisecond precision. Timings are measured on the client, and the result goes to the API in a single batch - network latency never distorts the milliseconds.
A 1935 classic: the word “ROUGE” printed in blue - you name the color while ignoring what the word says. It measures the ability to suppress an automatic response (cognitive interference).
The “right” button appears on the left - and the brain stalls. The test measures how spatial interference affects the speed and accuracy of a response.
A sequence of digits to memorize and repeat back; it grows level by level, from 3 to 10 digits. The classic measure of working memory span.
The method NASA uses to monitor astronaut fatigue: 3 minutes of reactions to a stimulus at random intervals. We calculate mean and median reaction time plus attention lapses - responses slower than a threshold adjustable right in the interface. Attempt history is stored and compared on charts: how the average time moves, the number of lapses, the reaction curve within each session.
SOA (stimulus onset asynchrony) is the interval between stimuli; psychologists tune it in the admin panel. Simon Task and Digit Span have difficulty ladders of their own.



A bare “5.4 out of 10” says very little. So every scale in a result comes with live statistics across the whole base:
The same “compare yourself” principle works on the home page: every test card carries a live counter, “9 499 ont passé ce test” - social proof that updates itself.
A result can be viewed, saved and passed on in several forms at once. There is a public page with a unique key that can be sent to a coach or shared on social media (search engines are kept away from these pages); a branded PDF report generated on the server; and automatic emails to three recipients - the athlete, the academy administrator, and a coach whose address the athlete adds right in the form. The coach receives their athlete’s results without ever opening the site.
All the heavy lifting - PDF generation, the three emails, CRM calls - lives in a task queue. The result page opens instantly while background workers clear the queue in parallel. If a task fails, it retries on its own, and the email still arrives - even if an external mail service stalls for a second.
For the academy a test is not only an assessment, it is also lead generation. We built it in carefully and with consent: the registration form has a checkbox - “would you like tips on mental preparation?” - and only a “yes” sends the contact to marketing.
Over 4 years this grew into a base of 14,000 warm, segmented contacts, every one of whom came on their own.
The most valuable thing in the back office is the audience report: a psychologist picks a test and a slice (role, age groups) and gets average scores for every competency. The academy can see, for example, that teenagers consistently score lower on stress management than adults - and adjusts its training programs accordingly.
Writing a platform is not enough - it needs somewhere to live. We set up the server and the environment ourselves, from scratch: a VPS in a European data center, web server, PHP, database, queues, SSL. None of it shows from the outside, but this is exactly what keeps things stable: the server has been running for over a year without a single reboot, and in 4 years not one update has stopped the platform.
PDFs, emails and CRM calls are handled by background workers under a supervisor: if a process dies, it restarts; if a task fails, it retries.
Next to the production site there is a full staging copy with its own database, closed off by a password. Every feature is approved by the client on staging first and only then goes live.
Certificates are issued and renewed automatically, and all traffic is forced onto a secure connection.
MySQL accepts connections only from the server itself - the personal data of 14,000 people simply cannot be reached from the internet.
PHP bytecode caching, on-the-fly response compression, static files served past the application - the essentials that often go forgotten.
Log rotation, session cleanup, OS security updates and certificate renewals happen on their own. Deployment runs from git over SSH keys; secrets live in the environment configuration, not in the code.
Platform data as of July 2026. The newest results in the database are from today - the platform is alive and growing.
Live platform counters, July 2026. The flagship athlete profile stands out.
You can be sure of one thing - they are fully motivated!
Want results like these?
We use cookies for analytics - they help us understand which pages are useful.