Skip to content

shippingbids-app/shipping-bids-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

122 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

shipping-bids-app

This project it's made to connect people who has a transport offer with transporters and through bids they get a good price for both.

  • Once a user it's registered on the app, he can create a service to carrier packages and/or create an ship offer.
  • Every ship offer has a Bid section and a Comments section to interact between offertant an transporter.
  • Has a bottom navbar to see the map screen and the offers screen.
  • We implement a Guest button to make easier to view the app.

If you want to see more.

To see the app you only need to click here.

Used stack:

To make this project we used:

Front-end:

React

All front of shipping bids app was created in React, using:

  • React router dom: To create all routes in the APP.
  • Contexts: to manage user status around the app and some alerts.
  • useState: to control the state of all the components that need it.
  • useEffect: to manage what each component does when it is assembled.

Axios

We use Axios to manage all routes to the API.

MUI

With MUI we did:

  • The Navbar.
  • The Bottom Navbar.
  • The alert.

Bootstrap

We used Bootstrap to:

  • Cards and collapses.
  • Responsive display.
  • Colours, buttons...

MUI Icons

Both Navbars.

Back-end:

Node.Js

Back-end it's a REST API and was made in Node using Express.Js and libraries/frameworks like:

  • Bcryptjs: to hash the users password.
  • Cloudinary: to manage the users profile image.
  • Express Session: to create session cookies.
  • Http Errors: to manage use errors.
  • Mongoose: to connect with Mongo DB.
  • Node Cron: to manage times.
  • Nodemailer: to create a welcome mail.

We also use Faker to fill our first DB

Postman

All routes are protected, you only can see if you are authenticated, you can use [email protected] as email and 12345678 as password to check it.
API starts at https://shipping-bids.herokuapp.com/api/v1 and the most significative are:

  • POST /register: to create a new user.
  • POST /authenticate: to login with a existing user.
  • POST /offers/create: to create a new offer.
  • GET /offers: to get all offers.
  • GET /offers/:offerId: to get a detail of an offer.
  • POST /offers/:offerId/comments: to create a comment on a offer.
  • POST /offers/:offerId/bids: to create a bid on a offer.

Middlewares

We created some security middlewares to protect routes

Deploy:

This app was deployed in Heroku using Dockercontainers.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages