Always, when I'm going to build something new I want to choose technologies, that I had never worked with. Here, I built my first backend! I used Express.js, PostgreSQL and many more libraries to handle everything on the page.
Authenticating users, validating offers, checking permissions, uff, it all took a lot of time and work to cover all edge cases.
On the front end, my choice was Next.js, I also used (and learned) Redux to manage state. Of course, I wrote the whole app in TypeScript without which I can’t imagine the project now.
The biggest problem, in my opinion, was the vastness of the dependencies that had to be addressed. It was my first time working with a code of this size and I will say that at first it wasn’t easy. But, when I walked through the app hundreds of times I began to feel more and more comfortable.
Another problem, that I can mention is validation. Previously, I don’t know how many checks should be done, when user attempt to e.g. sign up or edit offer. It wasn't until I had to implement it myself that I realized how tedious the process is.
But finally, I think everything is working fine 🥰
Where to start? If I were to describe everything I've learned, there would be something like an infinite scroll. This project helped to solidify a lot my TypeScript and React knowledge.
I learn how to use a lot of tools, that are used in today’s development. In addition, I read a couple of articles about design, typography and colors to make my app the best possible in UI and UX 💪