Picture of the author

Jonathan van der Meij

March, 2023

Typescript

NextJs

Tailwind

TRPC

NextAuth

Smart Test

Pictures of app screens

About the projects

For a while, I've been interested in learning the Nextjs framework. To achieve this goal, I selected a project that would help me gain a basic understanding of Nextjs. Since the project involved creating a variety of different elements, it was a suitable choice for my learning purposes.

The project I chose is an application designed for taking tests and assessing one's knowledge on a particular subject. Users can instantly see if their answers are correct or not as they fill them in. At the end of the test, the application provides detailed results, including the amount of time taken and the number of correct answers. Additionally, users can create tests and share them with others for testing purposes.

Personal goals

I chose this project to learn Next.js. Next.js is a full-stack framework that uses React. It also allows you to server-side render your React code. I had seen some videos about it, and I was interested in server-side rendering and writing the backend in JavaScript.

While learning Next.js, I also wanted to learn about NextAuth and TRPC. NextAuth is used for authentication in the Smart Test app, and TRPC is used to create a type-safe backend that is connected to the frontend.

Features

Not yet ready

Deployment and CI/CD

I used Vercel to host the application. Vercel provides an easy connection to github. When I push to the main branche, it gets updated automatically on production.

Future enhancements

  • Account page: A page where the user can see and edit account data.
  • Demo mode: Instead of logging into an account, you can click on a button to acces the application to see how it works.

© 2023 Jonathan van der Meij. All rights reserved.