teachmind / Parcel-Service

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Parcel-Service

codecov Go Report Card Codacy Badge

Features

  • Server Preparation for Running the project on localhost
  • Database Migration
  • Parcel Create
  • Parcel Details
  • Parcel Update
  • Carrier Request
  • Carrier Selection
  • Available Parcel List

Feature Details

Database Migration

  • Database schema will be created when migrating
  • Rollback query is added for making the database empty

Parcel Create

  • User can create a parcel to send a location
  • Validation for required fields

Parcel Details

  • Parcel details endpoint for user and carrier
  • Request parcel details by Parcel ID

Parcel Update

  • Update parcel status based on the user or carrier action

Project Structure

.
|-- cmd                 # Contains the commands for the project
|-- images              # Contains all image file
|-- internal            # Configuration files and Constants
|-- migration           # Contains migration files
|-- .env.example        # example/structure of .env file
|-- Dockerfile          # Used to build docker image.
|-- go.mode             # Define's the module's import path used for root directory
|-- go.sum              # Contains the expected cryptographic checksums of the content of specific module versions
|-- Makefile            # Makefile to run commands after docker up
|-- readme.md           # Explains project installation and other informations

Tools and Technology

  • Golang
  • PostgreSQL

Installation

  • Step-1: Copy/rename .env.example file as .env. Change the APP_PORT, DB_PORT, DB_NAME,DB_HOST, DB_USER, DB_PASSWORD value as per your DB and Project setup. Copy command from Makefile
  • Step-2: Run migration command make migrate for Database migration
  • Step-3: To start server run make server

About

License:MIT License


Languages

Language:Go 96.4%Language:PLpgSQL 1.9%Language:Makefile 1.5%Language:Shell 0.1%Language:Dockerfile 0.1%