Skip to content
View DesertBloom-AI's full-sized avatar

Block or report DesertBloom-AI

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
DesertBloom-AI/README.md

DesertBloom AI Logo

DesertBloomAI V1.01 - Smart Desert Agriculture System

DesertBloomAI V1.01 is an intelligent, open-source platform for smart desert agriculture, combining robotics, IoT, and AI to enable sustainable and efficient farming in arid regions.

Overview

DesertBloom AI is an intelligent system for managing and optimizing desert agriculture operations. It combines robotics, IoT sensors, and AI to create a sustainable and efficient farming environment in arid regions.

Features

Core Features

  • Plant monitoring and management
  • Smart irrigation system
  • Environmental sensor network
  • Data analytics and visualization
  • Autonomous robotics control
  • Path planning and navigation

Path Planning

The system includes an advanced path planning module that enables:

  • Autonomous robot navigation
  • Obstacle avoidance
  • Optimal path generation
  • Path optimization for smooth movement
  • Real-time collision detection
  • Map visualization and management

System Architecture

Backend

  • FastAPI-based REST API
  • PostgreSQL database
  • Redis for caching
  • WebSocket for real-time updates
  • Path planning service with A* algorithm
  • Map data management

Frontend

  • Vue.js 3 web application
  • Interactive map visualization
  • Real-time monitoring dashboard
  • Path planning interface
  • Responsive design

Robotics

  • ROS-based robot control
  • Path following and execution
  • Sensor integration
  • Autonomous navigation
  • Charging station management

Installation

Prerequisites

  • Python 3.8+
  • Node.js 14+
  • PostgreSQL 12+
  • Redis 6+
  • ROS Noetic (for robotics)

Backend Setup

  1. Create virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies:
cd backend
pip install -r requirements.txt
  1. Set up environment variables:
cp .env.example .env
# Edit .env with your configuration
  1. Initialize database:
alembic upgrade head
  1. Start the server:
uvicorn main:app --reload

Frontend Setup

  1. Install dependencies:
cd frontend
npm install
  1. Set up environment variables:
cp .env.example .env
# Edit .env with your configuration
  1. Start development server:
npm run serve

Robotics Setup

  1. Install ROS Noetic:
# Follow ROS installation instructions for your platform
  1. Set up robot workspace:
cd robotics
catkin_make
source devel/setup.bash
  1. Configure robot:
# Edit config/robot_config.json
# Edit config/map_data.json
  1. Start robot nodes:
roslaunch desertbloom_ai robot.launch

Usage

Path Planning

  1. Access the path planning interface at /path-planning
  2. Select a robot from the dropdown
  3. Enter start and goal positions
  4. Click "Plan Path" to generate a path
  5. Use "Optimize Path" to smooth the path
  6. Toggle map layers to customize the view

API Documentation

  • Swagger UI: http://localhost:8000/docs
  • ReDoc: http://localhost:8000/redoc

Development

Testing

# Backend tests
cd backend
pytest

# Frontend tests
cd frontend
npm run test:unit

Code Style

# Backend
cd backend
black .
flake8 .

# Frontend
cd frontend
npm run lint --fix

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • FastAPI team for the excellent web framework
  • Vue.js team for the progressive JavaScript framework
  • ROS community for robotics tools and libraries
  • All contributors and supporters of the project

Popular repositories Loading

  1. DesertBloom-AI DesertBloom-AI Public

    DesertBloomAI V1.01 - Smart Desert Agriculture System.

    Python