Skip to content

Moustafa-Elgammal/automatic-irrigation-system-backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Automatic Irrigation System Backend

  • Problem Description:

    As an irrigation system which helps the automatic irrigation of agricultural lands without human intervention, system has to be designed to fulfil the requirement of maintaining and configuring the plots of land by the irrigation time slots and the amount of water required for each irrigation period. The irrigation system should have integration interface with a sensor device to direct letting the sensor irrigate based on the configured time slots/amount of water. find more details.

  • Solution:

    The solution provided as:

    • Backend (Spring boot web service)
      • (REST API) End point /api/v1/plots
      • Scheduler to run background job:
        • retrieve plots which their time to be irrigated now or passed with failure.
        • alert job which responsible about sending alert when the irrigating job scheduler failed to recall the sensor configured number of time
      • Database entities:
    • Frontend (Angular13) GitHub Repo:
      • One Module which is responsible about calling Backend REST end-point:
        • create new land plot
        • delete plot
        • update (update and configure plot of land)
        • read retrieve plots details
  • Up & Running:

    • Create database called irrgation and change the application.properties with your credential.
    • Import the project into your IDE and install the dependencies then run the main application.
    • You can find the service in you browser @ localhost:8080.
    • Check Postman Collection.
    • check frontend repo for easy UI to check the system functions.
    • The scheduled jobs can be tracked using the console logs or check Scheduler Dashboard.
  • Learn About the Project:

  • Future Development:

    • Backend enhancements:

      • Secure the end points.
      • Full Unit tests.
      • Integration test.
      • Response Strategies for each status code.
      • Swagger the end point with postman collection.
      • Database more entities which help the business.
    • Frontend enhancements:

      • UI/UX fixes.
      • Use angular forms validations.
      • Handle more response status code.
      • Integrate With backend Authentication.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors