Background and Purpose

This application is a personal project. it includes many features such as :

  • The user can like or dislike a post
  • The user can comment on a post or to reply to a comment of a post
  • The user can modify his comment or delete it.
  • The author of a post can add, delete or modify his post.
  • The ability to report a post or comment that does not comply with the charter
  • The admin can view all reports of posts or comments and can choose to delete a reported post or comment.
  • The admin or the moderator can sanction the user who does not respect the charter, with the possibility to temporarily deactivate his account or to delete it definitively.

Development and technologies used

The application is available in French and English. I used Node js with the express framework for the backend and as a PostgreSQL database that offers flexibility for data storage. For the front-end part I used React with Next.js

I chose Next.js because it offers the possibility to do server-side rendering or static generation with React, which offers advantages such as fast initial loading of the application, indexing of the content by search engines (Google, Bing, Yahoo).

For deployment, the api is hosted on Heroku, front-end on Vercel and static files such as images on cloudinary.