Skip to content

RESTful API built primarily with Node.js and Express.js. Powerful solution that shows a solid foundation for building and deploying production-ready applications following REST architecture best practices. This is the backend of the "PlayersNation" application.

License

Notifications You must be signed in to change notification settings

JoaccoG/players-nation-backend

 
 

Repository files navigation


PlayersNation

Full Stack Development Bootcamp - Final Project

AboutRequirementsTechnologiesSonarCloudAPI EndpointsSpecial ThanksLicense

About

This is my final project of the Full Stack Bootcamp at ISDI Coders and focuses on the development of a comprehensive web application that incorporates authentication functionality, as well as a complete data management system based on the CRUD concept. Additionally, the project also involves the implementation of a robust architecture for handling application states and interconnecting all it's entities.
The chosen theme for this project is a social network that caters to the gaming community, in which users can interact by creating posts, reviewing their favourite games, sharing images, following each other, seeing their games statistics and participating in online chats, among other features. The application is designed to offer a seamless and satisfying user experience and is based on cutting-edge web development technologies.

You can see the Frontend repository clicking here

Requirements

  • User authentication
  • Item listing
  • Detail of each listed item
  • Item creation
  • Item editing
  • Item deletion
  • Pagination
  • Filters
  • User feedback
  • Errors management

Technologies used

Frontend
TypeScript Redux React React Router Styled-Components

Backend
NodeJS Express MongoDB Supabase JWT

Testing and tools
Jest Cypress Eslint Prettier SonarLint Lighthouse

SonarCloud

One of the biggest milestones achieved in this project was the development of high quality code, always prioritising Clean Code with its respective tests over the creation of thousands of features with spaghetti code that, in the long term, result unscalable and end up degenerating the application.
In order to always maintain this good practices, different tools were used, among the most important of which is SonarCloud.
It is in charge of analysing the code in each Pull Request and giving feedback about what can be improved or alert me if something does not meet the Clean Code and good practices standards.

Here are the (real-time) badges with the end result of SonarCloud scans:

SonarCloud
Quality Gate Status Lines of Code Coverage
Maintainability Rating Reliability Rating Security Rating
Technical Debt Bugs Duplicated Lines (%) Vulnerabilities Code Smells

API Endpoints

You can see all possible endpoints for the API clicking here!
Or you can see them with Postman:
Run in Postman

Please be patient if the first request take a while, the API server is probably sleeping and has a hard time starting up!

Special thanks

I would like to thank the following people for their help and support during my journey through the ISDI Coders Bootcamp:

  1. My professor and mentor Alex Gonzalez, who teached me all I know about programming.
  2. My assistant teachers Diego Guzman and Natalia Gherardi, who helped me all along.
  3. My friend and rubber ducking partner Clara Marsango for all the days and nights we spent together thinking, coding and debugging.
  4. My friend Lorena Anaya for all the support and encouragement she gave me.

And to all the people who supported me. Thank you!

License

MIT License - Copyright © 2023 Joaquin Godoy


Check out my Portfolio  ·  See my projects on GitHub  ·  Follow me on Twitter  ·  I'm also on Instagram

About

RESTful API built primarily with Node.js and Express.js. Powerful solution that shows a solid foundation for building and deploying production-ready applications following REST architecture best practices. This is the backend of the "PlayersNation" application.

Topics

Resources

License

Stars

Watchers

Forks

Languages

  • TypeScript 95.8%
  • Shell 3.0%
  • JavaScript 1.2%