Making my first full stack website, and I want an authentification system
So I wanna make my first big fullstack project, and between the backend functionalities, I need an authentification system, the thing is that making it all by hand is extremely long and prone to being extremely not secure. I want my first project to have a good level of security.
Is it okay to use a library like NextAuth or Firebase Auth for it? Will I still be learning or will it do everything for me? Cuz I want to learn from my fullstack project to some extent, and if these auth services do everything for you in one click isn't that counterproductive?
People online do say that it's very recommended to use services because they were built by pros that know how to make them secure and flexible, and in the future I plan on using them again, but how will that look like in the eyes of companies that might hire me or if I want to freelance?
4 Replies
I am going for Node.js and React with my backend, that's why I'm mentionning NextAuth
how will that look like in the eyes of companies that might hire me or if I want to freelance?It will look like you know the ecosystem of packages that you are working with, and to pick the right tools for the job. Is this a real project that you intend to deploy and actually use? Or is it just for showing your skills? If it's the first, use NextAuth/Firebase/Supabase, etc. Otherwise, I'd say go ahead and implement something yourself as that will give the opportunity to learn a few things. Remember, just because it's usually not something that you will implement, doesn't mean that you don't need to understand how it works. For example: data structures and algorithms are useful to know because you can identify patterns in code and helps you grow as a developer, even if you never actually implement a Heap Priority Queue or whatever. You will also never likely implement your own JWT library but it helps to know how JWTs work and when to use them.
Could I opt for learning the theory behind how the packages and libraries work? Cuz implementing it all myself seems pretty long and complex for not much in return in terms of hiring potential
If you're not interested that's fine, just use NextAuth. It's not like learning about auth is going to make a huge difference, and you can always learn it afterwards.