Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

josuerhg's avatar

Creating a personality test with Laravel

Hey there! Two months ago I discovered Laravel and I'm absolutely loving it. I already did some very simple projects to practice, but now I would like to go try something a little bit different, that doesn't only involve the good old CRUD operations.

I'm thinking about making a personality test (MBTI, especifically) using Laravel. For those who aren't familiar with MBTI (or the "16 personalities test"), it consists on evaluating four aspects of someone's personality: Extroversion/Introversion, Intuition/Sensing, Thinking/Feeling, and Judgement/Perception. Each question of the test evaluates one of these aspects (for example: "Would you consider yourself socially awkward?"). Here's the most popular example: https://www.16personalities.com/free-personality-test

However, I'm not entirely sure on how to do this on Laravel. Of course, I must make a form with all the necessary questions; I also thought about giving each question a "category" that evaluates one of the four different personality aspects. But how would I evaluate the results after submitting the form? Should I use a controller? Is Laravel adequate to make something like this?

Thanks in advance.

0 likes
2 replies
miwal's avatar

It's certainly adequate, no doubt about that.

In your first project you'll likely focus simply on the logic of what you want and perhaps divide your understanding of that into functions that are going to achieve that. Controllers are certainly the place to start.

If you have a precedent anywhere for how you want to process the data, then looking to that (even though it is not expressed in any programming language) could be your answer. Doing that gives an enormous sense of achievement if you've not done that kind of thing previously, plus, solving a problem that you really care about is where the best learning happens. That's my experience at least.

josuerhg's avatar

@MIWAL - That's a good answer, thank you! I'll try to write down the ideas I have to solve this problem and then try to translate them into code. It might not be easy, but it's gonna be worth it.

Please or to participate in this conversation.