A Facebook clone application.
I built it with Express and MongoDB for the backend and React for the frontend, I used Typescript for both.
It was the final project for theodinproject.com Full-stack JavaScript course, the task was just to build a Facebook with the core features (posts, likes, comments, friends).
It took me a lot of time because of college exams and other stuff.
I learned a lot in this project, those are some points:
- first time using Typescript for backend, it helped a lot and I will never go back to untyped JavaScript again
- first time I write tests for an API (around 200 test)
- I used Oauth2 (login with Facebook)
- I got better in writing MongoDB queries (friend recommendation was kind of challenging)
- I made custom middlewares for authorization and user roles
- I tried to make reusable components as much as I can (cards, buttons, a hook for pagination)
- I used some SCSS features (extending classes, variables, partials)
- I wrote many Typescripts interfaces and It benefited me a good deal
that's it, I guess!