Data Farm is an intelligent web application developed as part of the Esprit School of Engineering university project.
The platform aims to revolutionize agricultural management through modern technologies by integrating:
- ✅ Digital farm management system
- ✅ Intelligent automation of crops, lands, and resources
- ✅ Artificial Intelligence (YOLOv8) for plant disease and weed detection
- ✅ Sustainable Development Goals (SDG) tracking and implementation
Data Farm actively contributes to the UN's Sustainable Development Goals:
- Promotion of renewable energy from recycled agricultural waste (biogas)
- Sustainable management of agricultural resources
- Resource optimization and waste reduction
- Efficient agricultural waste management with intelligent recycling processes
- Promotion of renewable energy and circular economy solutions
- Reduction of environmental impacts through intelligent and sustainable management
- Multi-role system (Admin, Farmer, Client, Worker)
- Authentication with secure login/signup
- Password reset functionality
- Digital parcel creation with precise geolocation
- Real-time temperature monitoring via Weather API
- Crop selection and monitoring tailored to land specifications
- Agricultural product listing and e-commerce functionality
- Order processing and tracking
- Sales statistics and reporting
- Agricultural waste declaration and tracking
- Intelligent recycling allocation
- Waste collection PDF reports
- Equipment listing and availability tracking
- Reservation system for workers
- SMS notifications for reservation confirmations
- Claim/support ticket system
- Email notifications for product sales
- QR code generation for orders
- YOLOv8 Disease Detection: Identifies unhealthy plants and crops
- YOLOv8 Weed Classification: Distinguishes between harmful and beneficial weeds
- Symfony 6.4 (PHP)
- MySQL database
- Python 3.8+
- Ultralytics YOLOv8
- Computer vision for plant analysis
- Weather API (geolocation and real-time temperature)
- Email services for notifications
- SMS gateway for reservation confirmations
- QR code generation
- Composer
- GitHub Actions
# Clone repository
git clone https://github.com/your-username/data-farm.git
cd data-farm
# Install PHP dependencies
composer install
# Configure your database connection in .env
DATABASE_URL="mysql://user:password@127.0.0.1:3306/datafarm_db"
# Run migrations
php bin/console doctrine:migrations:migrate
# Start Symfony server
symfony server:start
# Install Python 3.8+ from https://www.python.org/downloads/
# Create and activate virtual environment
python -m venv venv
# On Windows
venv\Scripts\activate
# On macOS/Linux
source venv/bin/activate
# Update pip
pip install --upgrade pip
# Install Ultralytics (YOLOv8)
pip install ultralytics
# Verify installation
yolo
- Create your account and set up your farm profile
- Add and manage your land parcels with geolocation
- Select appropriate crops based on land characteristics
- Monitor real-time weather conditions
- List agricultural products for sale
- Manage equipment and waste recycling
- Browse available agricultural products
- Place orders with secure checkout
- Track order status
- View available equipment
- Make reservations for needed tools
- Receive SMS confirmations
- Manage user accounts and permissions
- Handle support tickets and claims
- Access comprehensive statistics and reports
# Start Symfony server
symfony server:start
# In a separate terminal, run YOLOv8 services (if needed for development)
python ai_services/run_detection.py
# Run Symfony tests
php bin/phpunit
# Run Python AI module tests
pytest ai_modules/tests/
We welcome contributions to the Data Farm project!
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Esprit School of Engineering for project guidance
- YOLOv8 and Ultralytics for AI vision capabilities
- All contributors who have helped shape this project
Developed with ❤️ by the Data Farm Team