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.
- 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
To Run The Application, Ensure You Have The Following:
You can clone the project using the following link:
git clone https://gitlab.com/emmanuel.fabian.dev/drone-api-musalasoft.git
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
./mvnw test # Run the tests
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.