Skip to content

In this technical challenge, you'll be tasked with creating a robust authentication and authorization system using React with Next.js and TypeScript.

Notifications You must be signed in to change notification settings

Gabsop/frontend-challenge

 
 

Repository files navigation

Challenge Overview:

This is my submission of the frontend challenge! Deployed App

Challenges:

  • I had very little experience with NextAuth, so I took some time to learn and apply.
  • I had difficulty handling the roles section at the middleware, and understanding the middleware as a whole in the beginning.

Things I would do differently

  • I would've use Clerk, that gives me everything that I did way faster and free, but I didn't wanned to "cheat", so I used Next-Auth.
  • I would've handle the errors in other way than sending a query param to the frontend, just didn't found out a better solution in the mean time.
  • Definitely improve the frontend style, the thing is pretty ugly.
  • Improve the tests to cover 100% of the project.

Tech

  • Created the project using T3
  • Used Railway to host the database
  • Used Emailjs to send the emails
  • Used Jest to test
  • Used Prisma as my ORM
  • And the other tech was the one required by the test. Next, React, TypeScript, etc.
PS: I added a button at the home page to turn a user into an admin and vice versa, just for the sake of this challenge.
PS 2: Since the email service that I used is free, there's a big chance that the confirmation email that you receive is in spam.

About

In this technical challenge, you'll be tasked with creating a robust authentication and authorization system using React with Next.js and TypeScript.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 90.6%
  • JavaScript 6.7%
  • Shell 2.3%
  • CSS 0.4%