NivaldoFarias / boardcamp-api

15ᵗʰ Project developed during Driven's Full Stack Develpment Bootcamp

Home Page:https://boardcamp-api-project.herokuapp.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Summary

Web Development Project using React and Sass — Front end

Built With

Nodejs PostgresSQL Expressjs Git

Requirements

  • Categories CRUD

    • Categories table SCHEMA

        {
          id: 1,
          name: 'Strategy',
        }
    • List all categories endpoint | GET '/categories'

    • Create a new gategory endpoint | POST '/categories'

  • Games CRUD

    • Games table SCHEMA

        {
          id: 1,
          name: 'Monopoly',
          image: 'http://',
          stockTotal: 3,
          categoryId: 1,
          pricePerDay: 1500,
        }
    • List all games endpoint | GET '/games'

    • Create a new game endpoint | POST '/games'

  • Customers CRUD

    • Customers table SCHEMA

        {
          id: 1,
          name: 'John doe',
          phone: '21998899222',
          cpf: '01234567890',
          birthday: '1992-10-05'
        }
    • List all customers endpoint | GET '/customers'

    • Search a customer by id endpoint | GET '/categories/:id'

    • Create a new customer endpoint | POST '/customers'

    • Update a customer endpoint | PUT '/categories'

  • Rentals CRUD

    • Rentals table SCHEMA

        {
          id: 1,
          customerId: 1,
          gameId: 1,
          rentDate: '2021-06-20',
          daysRented: 3,
          returnDate: null,
          originalPrice: 4500,
          delayFee: null
        }
    • List all rentals endpoint | GET '/rentals'

    • Create a new rental endpoint | POST '/rentals'

    • Return a rental endpoint | POST '/rentals/:id/return'

    • Delete a rental endpoint | DELETE '/rentals/:id'

  • Bonus (optional)

    • Pagination to every list all endpoints | SQL offset, limit
    • Filtering by date to rentals endpoint | HTTP parameters 'status=open/closed', 'startDate={date}'
    • Revenue Metrics endpoint | GET '/rentals/metrics'
    • Number of Rentals endpoint | SQL count, group by

Study Playlist

In this section I included all Youtube content I used or refered to while studying for this project. Keep in mind that most of these videos contain information that was not previously studied during class, which may affect some parts of the code that contain these extras.

Youtube

Contact

LinkedIn Slack

About

15ᵗʰ Project developed during Driven's Full Stack Develpment Bootcamp

https://boardcamp-api-project.herokuapp.com/

License:MIT License


Languages

Language:JavaScript 100.0%