DEV Community

Discussion on: I'm a Full-Stack Engineer/Manager & Bootcamp Mentor, Ask Me Anything

Collapse
 
matthew_collison profile image
Matthew Collison • Edited

Hi Saugat, thanks for the question!

When it comes to deciding you need to build a project, you need to first plan out the project so you know what "micro-skills" you'll need in order to accomplish it.

You need to plan it out in modules, let me give you an example;

It sounds like you're going to want some way to login to the application - so you can break that down into these micro-skills

  • Installing a backend framework (Laravel, NodeJS, Rails, Django, etc)
  • Installing a compatible database (to store the users)
  • Browsing your database
  • Validation of form input
  • Registration of users
  • Authentication in your framework of choice
  • Deployment to an online server

Then you'll find some of these skills will cross over to the other "modules" of the project, such as your CRUD forms (Database)

Learning to build a cohesive project like the one you're describing is as simple as defining all the individual "parts" and knowing which "micro-skills" you need to get to develop the parts.

And this is purely opinion here, you can pick any framework you want, but I've been big on VueJS and Laravel in the last 3 or so years. They both have excellent communities, and their creators are both huge on attention-to-detail and making things for the developer as friendly to use as possible, without compromising on enterprise scale.

Once again, make your own choice, either way, I hope this helps!