Skip to content

fabian-emmanuel/Drone-Api-MusalaSoft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Drone API

The Drone API Is An Interesting REST Service Designed To Manage A Fleet Of Drones, each capable of delivering loads of medication items. The service allows for drone registration, loading of medication items onto drones, checking loaded medication items, monitoring available drones for loading, and retrieving battery levels for a given drone.

TECHNOLOGY USED

  • Java: Programming language
  • Maven: Build tool and project management
  • SpringBoot (Reactive/WebFlux): Framework for building Java-based enterprise applications
  • MongoDB (Reactive): NoSQL database for data storage
  • Swagger (SpringDoc): API documentation tool
  • Docker: Containerization platform
  • Faker: Tool for generating fake data for testing purposes

PROJECT REQUIREMENT

To Run The Application, Ensure You Have The Following:

Getting Started

Clone the Project:

You can clone the project using the following link:

git clone https://gitlab.com/emmanuel.fabian.dev/drone-api-musalasoft.git

Build And Run The Application

Navigate to the project's root directory and execute the following commands:

./mvnw clean install     # Build the project
docker-compose build     # Build Docker image
docker-compose up        # Run the project using Docker

Run The Tests

./mvnw test              # Run the tests

Accessing The Documentations

NOTES

Application Runs On Port: 9000, with base-path: api/v1, Hence it is accessed via http://localhost:9000/api/v1/**

For ease of use and testing, the database has been preloaded with test data. Detailed endpoint documentation is available on the SwaggerUI and Postman Doc [Links Provided Above]. After running the application, you can explore the documentation and test the endpoints accordingly.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published