The aim of this project is to teach you the basics of React, how to implement the most common features you are going to encounter in the wild, such as authentication, routing, data fetching, data updating, state management, etc.
I prepared a backend written in NodeJs that will provide the functionalities you will need to interact with. You can access the server either through REST (it is most common for companies to work with RESTful APIs) or you can opt for GraphQL (it is a newer paradigm which is getting more and more popular). It's up to you. (I personally prefer GraphQL).
The backend is available at https://gitlab.com/vladcalin-mentorship/social-network-backend
The first two steps that you'll need to do on your own are to:
yarn, an IDE or text editor for writing React code,
dockerfor the backend)
Here, you will receive your tasks. You will need implement the features as they come up in the tasks. The tasks will need to be created in order, and you should not "peek" to the next task until you finished the current one (some tasks simulate the real life programmer experience, with shifting requirements, which are important to be a "surprise", because it will help you spot the bad code designs you are going to make)