Skip to content

System for managing cargo transportation. Features include expense management, trip scheduling, real-time tracking, and alerts. Created for the course SI422 - Web Applications

Notifications You must be signed in to change notification settings

PieroD04/cargoapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

ACME CargoApp: Ground Transportation Management System 🚚

ACME CargoApp is a robust ground transportation management system designed to streamline trip management, expense tracking, and real-time monitoring for goods transportation.

Project Overview

The system is divided into two primary sections:

  • Backend: Web Services built using ASP.NET Core with C# and Entity Framework Core.
  • Frontend: Web Application developed using Vue.js.

Project Members

  • Delgado Corrales, Piero Gonzalo
  • Paredes Puente, Sebastián Roberto
  • Salinas Torres, Salvador Antonio
  • Valverde Mozo, Andre Gabriel
  • Matos Fernandez, Christian Andre

Backend: ACME CargoApp Web Services

Features

  • RESTful API implementation.
  • OpenAPI Documentation with Swagger UI.
  • ASP.NET Core Framework.
  • Entity Framework Core for ORM.
  • Audit logging for creation and update dates.
  • Custom route naming conventions.
  • Custom object-relational mapping (ORM) naming conventions.
  • MySQL Database persistence.
  • Domain-Driven Design (DDD) approach.

Technologies & Packages Used

  • Language: C#
  • Frameworks: ASP.NET Core
  • ORM: Entity Framework Core
  • Database: MySQL
  • Tools: Swagger, MySQL Driver

Bounded Contexts

This version of ACME CargoApp is divided into two distinct bounded contexts: Registration and User.

Registration Context

Manages the system registrations, including:

  • Creation of trips, expenses, drivers, and vehicles.
  • Viewing specific trip, expense, driver, or vehicle by ID.
  • Viewing lists of all trips, expenses, drivers, and vehicles.

User Context

Manages user accounts, which include clients and entrepreneurs:

  • Creating a new user (either client or entrepreneur).
  • Retrieving user, client, and entrepreneur information by ID.
  • Retrieving lists of all users, clients, and entrepreneurs.

Frontend: ACME CargoApp Web Application

Main Features

  • Interactive user interface to help clients track their transportation goods.
  • Developed with Vue.js for dynamic, responsive, and efficient rendering.
  • Integration with various APIs for fetching real-time data (using Axios for API requests).
  • Includes built-in charts and leaflet maps for transportation status and visualization.

Tools & Packages Used

  • Framework: Vue.js
  • UI Components: PrimeVue, PrimeIcons
  • Routing: Vue Router
  • State Management: Vuex
  • Charts: Vue-ChartJS, Chart.js
  • Map: Leaflet
  • HTTP Requests: Axios

Development Setup

  1. Development Server:
    Run npm run serve to start the development server. Navigate to http://localhost:8080/. The application will automatically reload on file changes.

  2. Build:
    Run npm run build to compile the project. The built files will be available in the dist/ folder.

  3. Testing:

    • Unit Tests: Run npm run test to execute the unit tests.

Modules Installation

To install all necessary dependencies, run the following:

npm install

Additional dependencies for specific features:

npm install primevue primeicons
npm install vue-router@latest
npm i vue-chartjs chart.js
npm install vuex@next --save

Install Leaflet for map functionality:

npm install leaflet

© 2024 ACME CargoApp | Developed for the SI422 - Web Applications course.

About

System for managing cargo transportation. Features include expense management, trip scheduling, real-time tracking, and alerts. Created for the course SI422 - Web Applications

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published