Skip to content

Delivery Platform Demo is a pet project replicating package delivery services.

License

Notifications You must be signed in to change notification settings

AljazOblonsek/delivery-platform-demo

Repository files navigation

Delivery Platform Demo Logo

Delivery Platform Demo is a pet project replicating package delivery services, focusing on tracking and managing packages via QR code scanning. It also records the entire delivery process on the Ethereum blockchain for package history.

Delivery Platform Demo Preview

Table of Contents

Key Features

  • 🚚 Couriers can scan QR codes on packages to manage delivery tasks, including accepting packages in the warehouse, starting delivery, and confirming delivery
  • ✏️ If the camera is unavailable, couriers can manually input package information
  • 🗺️ Customers can effortlessly track the real-time location of their packages
  • 🌐 The customer's UI reads package data directly from the Ethereum blockchain, ensuring transparency
  • 🔒 Package history is securely recorded on the Ethereum blockchain.
  • 🛠️ The platform uses Jaeger for distributed tracing across services

Running the Project Locally

To try out the project and its features, you need to run it locally. Follow the steps below.

Prerequisites

Ensure you have the following tools installed:

1. Start the Project

To start the project, run the following command:

docker compose -f docker-compose-full.yml --env-file ./.env.full-example up

Note

The initial setup may take up to 5 minutes, depending on your PC. Some errors might appear during startup as services depend on each other and will restart until all are ready.

When the terminal displays the message Blockchain Service is listening., the project is up and running. You can verify this by checking the screenshot below:

Services Ready Output

2. Prepare the Initial Data

Once the services are running, execute the following command to insert users and companies into the database:

./scripts/startup/setup-project.sh --env prod

3. Try Out the App

To explore example flow, follow the steps provided here.

Documentation

If you'd like to explore the project's evolution or find additional information, you can browse through the documentation.

Contributors

Contributor Contributions
@AljazOblonsek
@urosmeh
@maticsusteric

Project Motivation & Goals

This project aims to accomplish the following:

  • Develop a straightforward package delivery system that records package history on the blockchain
  • Demonstrate how blockchain can be used for applications beyond cryptocurrency
  • Gain hands-on experience with new technologies

License

This project is licensed under the MIT License. See the license file for details.

About

Delivery Platform Demo is a pet project replicating package delivery services.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published