Skip to content

vehicle catalog on a public page where it is possible to see registered vehicles and only the logged-in administrator can change, create and delete cars from the catalog.

Notifications You must be signed in to change notification settings

m4rcos-dev/FullStack-vehicle-catalog

Repository files navigation

🎉 Welcome to my vehicle catalog project repository

vehicle catalog

flag tools flag tools flag tools flag database flag orm flag architecture flag desing

The project's proposal was to create a vehicle catalog on a public page where it is possible to see registered vehicles and only the logged-in administrator can change, create and delete cars from the catalog.

All layers of the application (Models, Service and Controllers) were developed where it is possible to perform the basic operations on a given database: Creation, Reading and Deletion (or CRUD, for the most intimate 😜).

Endpoints were created to read and write in a database, using MySql.

A Front-End was developed with React to access endpoints and apply business rules together with the Back-End

🔨 Project Resources

  • ✅EndPoint for vehicle registration, using the POST method
  • ✅EndPoint to list registered vehicles using the GET method.
  • ✅EndPoint with data filter and pagination, using the GET method
  • ✅EndPoint to list all vehicles, using the GET method
  • ✅EndPoint for user login, using the POST method.
  • ✅CRUD validations, user using token with JWT.
  • ✅Manipulation and persistence of data using MySql database.
  • ✅Componentized database using Docker.

▶️ Running application

🐳 Running all project dependencies

⚠️ Before starting, your docker-compose needs to be at version 1.29 or higher. See here or [in the documentation](https ://docs.docker.com/compose/install/) how to install it. In the first article, you can replace where you are with 1.26.0 with 1.29.2.

ℹ️ Run the backend, frontend and db services with the command:

  docker-compose up -d --build
  • Remember to stop mysql if you are using it locally on the default port (3306), or adapt it, if you want to use the application in containers;

  • These services will initialize a container named backend_vheicles_catalog, fontend_vheicles_catalog and another named db_vheicles_catalog;

  • From here you can access the application at http://localhost:3000;

  • The back-end endpoints are found at http://localhost:5099;

  • ⚠️ Attention: Do not run the npm audit fix command! It updates several project dependencies, and this update causes conflicts.

  • Tip: The Remote - Containers extension is indicated so that you can develop your application in the Docker container directly in VS Code, as you do with your local files.

🏦 Users and Passwords

The application has a pre-registered default user and password and with its admin permissions activated in the bank. Use to test the application.

Email: admin@admin.com

Password: @Admin123

The database uses docker already with the environment and data persistence variables, but below are the variables for a local configuration.

    MYSQL_DATABASE: vehicleCatalog
    MYSQL_USER: root
    MYSQL_PASSWORD: password
    MYSQL_HOST: localhost
    MYSQL_ROOT_PASSWORD: password

🧔 Author

About

vehicle catalog on a public page where it is possible to see registered vehicles and only the logged-in administrator can change, create and delete cars from the catalog.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published