Spaces:
Sleeping
title: AgriSensa API
emoji: ๐พ
colorFrom: green
colorTo: yellow
sdk: docker
pinned: false
app_port: 7860
๐พ AgriSensa
Platform Pertanian Cerdas Berbasis AI untuk Petani Indonesia
Demo โข Dokumentasi โข Fitur โข Instalasi
๐ Tentang AgriSensa
AgriSensa adalah platform pertanian cerdas yang memanfaatkan teknologi Artificial Intelligence (AI), Machine Learning, dan Computer Vision untuk membantu petani Indonesia meningkatkan produktivitas dan keberlanjutan usaha tani. Platform ini menyediakan 25+ modul canggih yang mencakup analisis tanah, rekomendasi tanaman, deteksi penyakit, prediksi harga pasar, dan banyak lagi.
๐ฏ Visi & Misi
Visi: Menjadi platform pertanian digital terdepan yang memberdayakan petani Indonesia dengan teknologi AI.
Misi:
- Meningkatkan produktivitas pertanian melalui rekomendasi berbasis data
- Mengurangi kerugian akibat hama dan penyakit dengan deteksi dini
- Memberikan akses informasi pasar yang transparan dan real-time
- Menyediakan edukasi pertanian yang mudah diakses
โจ Fitur Utama
๐ค AI & Machine Learning
- AgriBot - Asisten pertanian cerdas berbasis Google Gemini AI
- Rekomendasi Tanaman Cerdas - Analisis NPK, pH, iklim untuk rekomendasi optimal
- Prediksi Hasil Panen - Estimasi tonase berdasarkan kondisi lahan
- Analisis Tren Harga - Prediksi harga komoditas dengan Linear Regression
- Intelijen Prediktif (XAI) - Prediksi dengan penjelasan transparan
๐ฌ Analisis & Diagnostik
- Dokter Tanaman AI - Deteksi penyakit tanaman dengan Roboflow AI
- Analisis BWD - Deteksi penyakit padi dengan Computer Vision
- Diagnostik Gejala Cerdas - Identifikasi hama & penyakit via kuesioner
- Analisis NPK Manual - Input dan analisis kesuburan tanah
- Analis Risiko Keberhasilan - Evaluasi potensi keberhasilan usaha tani
๐งฎ Kalkulator & Tools
- Kalkulator Pupuk Holistik - Perhitungan kebutuhan pupuk presisi dengan jadwal bertahap
- Kalkulator Konversi Pupuk - Konversi dosis antar jenis pupuk
- Rekomendasi Pupuk - Saran pemupukan berdasarkan kondisi tanah
- Strategi Penyemprotan Cerdas - Optimasi jadwal dan dosis penyemprotan
๐ฐ Intelijen Pasar
- Intelijen Harga Pasar - Monitor harga komoditas real-time
- Analisis Tren Harga - Visualisasi dan prediksi tren harga
- Katalog Pupuk - Referensi lengkap harga dan spesifikasi pupuk
๐ Basis Pengetahuan
- Basis Pengetahuan Budidaya - SOP dan teknik budidaya terbaik (20+ komoditas)
- Ensiklopedia Komoditas - Informasi mendalam berbagai komoditas
- Panduan Buah - Ensiklopedia budidaya tanaman buah tropis
- Panduan Hama & Penyakit - Database lengkap hama dan pengendaliannya
- Info Pestisida - Direktori bahan aktif, cara kerja, dan keamanan
- Pusat Pengetahuan Pertanian - Info pupuk NPK, agen hayati, hormon tanaman
- Info pH Tanah - Panduan manajemen keasaman tanah
๐บ๏ธ Fitur Lanjutan
- AgriMap AI - Rekomendasi tanaman berbasis lokasi (Geospatial)
- Perencana Hasil Panen AI - Perencanaan target panen dengan AI
- Dasbor Rekomendasi Terpadu - Pusat rekomendasi terintegrasi
- Pustaka Dokumen - Regulasi dan dokumen resmi pertanian
๐๏ธ Arsitektur Teknologi
Tech Stack
Backend:
- Python 3.12
- Flask 3.0 (Web Framework)
- SQLAlchemy (ORM)
- Flask-Migrate (Database Migrations)
- Flask-JWT-Extended (Authentication)
- Flask-CORS (Cross-Origin Resource Sharing)
- Flask-Limiter (Rate Limiting)
Machine Learning & AI:
- scikit-learn (ML Models)
- TensorFlow/Keras (Deep Learning)
- Google Generative AI (Gemini API)
- Roboflow (Computer Vision)
- SHAP (Explainable AI)
Data Processing:
- pandas (Data Manipulation)
- numpy (Numerical Computing)
- Pillow (Image Processing)
Frontend:
- HTML5, CSS3, JavaScript (ES6+)
- Chart.js (Data Visualization)
- Marked.js (Markdown Rendering)
Deployment:
- Docker (Containerization)
- Hugging Face Spaces (Hosting)
- Git (Version Control)
Struktur Direktori
agrisensa-api/
โโโ app/
โ โโโ __init__.py # Application factory
โ โโโ config/ # Configuration files
โ โโโ data/ # Static data & databases
โ โ โโโ cultivation_db.py # Cultivation knowledge base
โ โ โโโ pest_disease_db.py# Pest & disease database
โ โ โโโ fertilizer_db.py # Fertilizer database
โ โโโ models/ # SQLAlchemy models
โ โโโ routes/ # API routes/blueprints
โ โ โโโ main.py # Main routes
โ โ โโโ legacy.py # Legacy endpoints
โ โ โโโ analysis.py # Analysis endpoints
โ โ โโโ ...
โ โโโ services/ # Business logic
โ โ โโโ ml_service.py # ML model service
โ โ โโโ market_service.py# Market intelligence
โ โ โโโ chatbot_service.py# Chatbot service
โ โ โโโ ...
โ โโโ utils/ # Utility functions
โโโ templates/ # HTML templates
โ โโโ modules/ # Module-specific templates
โโโ static/ # Static assets
โ โโโ css/
โ โโโ js/
โ โโโ icons/
โ โโโ manifest.json # PWA manifest
โ โโโ sw.js # Service worker
โโโ instance/ # Instance-specific files
โโโ migrations/ # Database migrations
โโโ Dockerfile # Docker configuration
โโโ requirements.txt # Python dependencies
โโโ run.py # Application entry point
โโโ README.md # This file
๐ Instalasi
Prerequisites
- Python 3.12+
- pip (Python package manager)
- Git
- (Optional) Docker
Local Development
- Clone Repository
git clone https://github.com/yourusername/agrisensa-api.git
cd agrisensa-api
- Create Virtual Environment
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/Mac
source venv/bin/activate
- Install Dependencies
pip install -r requirements.txt
- Set Environment Variables
Create a .env file:
FLASK_ENV=development
SECRET_KEY=your-secret-key-here
DATABASE_URL=sqlite:///agrisensa.db
GEMINI_API_KEY=your-gemini-api-key
- Initialize Database
flask init-db
- Run Development Server
python run.py
Server akan berjalan di http://localhost:5000
Docker Deployment
# Build image
docker build -t agrisensa-api .
# Run container
docker run -p 7860:7860 agrisensa-api
Hugging Face Spaces
- Fork repository ini
- Buat Space baru di Hugging Face
- Connect repository ke Space
- Set environment variables di Space Settings
- Deploy!
๐ฑ Progressive Web App (PWA)
AgriSensa mendukung instalasi sebagai aplikasi Android/iOS melalui PWA:
Cara Install di Android:
- Buka AgriSensa di Chrome
- Tap menu (โฎ) โ "Install App" atau "Add to Home Screen"
- Aplikasi akan muncul di menu HP Anda
Fitur PWA:
- โ Offline capability
- โ App-like experience
- โ Fast loading
- โ Push notifications (coming soon)
๐ API Documentation
Base URL
Production: https://huggingface.co/spaces/yandri918/agrisensa-api
Local: http://localhost:5000
Authentication
Beberapa endpoint memerlukan JWT token. Dapatkan token melalui /api/auth/login.
Key Endpoints
Crop Recommendation
POST /recommend-crop
Content-Type: application/json
{
"n_value": 80,
"p_value": 40,
"k_value": 50,
"ph": 6.5,
"temperature": 28,
"humidity": 75,
"rainfall": 150
}
Fertilizer Recommendation
POST /recommend-fertilizer
Content-Type: application/json
{
"commodity": "padi",
"area_sqm": 1000,
"ph": 6.5
}
Yield Prediction (XAI)
POST /predict-yield-advanced
Content-Type: application/json
{
"n": 80,
"p": 40,
"k": 50,
"temperature": 28,
"humidity": 75,
"ph": 6.5,
"rainfall": 150
}
Chatbot
POST /chat
Content-Type: application/json
{
"message": "Bagaimana cara menanam padi yang baik?"
}
Market Prices
GET /get-ticker-prices
Price Trend Prediction
POST /predict-price-trend
Content-Type: application/json
{
"commodity": "cabe",
"days": 7
}
Dokumentasi lengkap tersedia di /api/info
๐งช Testing
# Run all tests
pytest
# Run with coverage
pytest --cov=app tests/
# Run specific test file
pytest tests/test_ml_service.py
๐ค Contributing
Kontribusi sangat diterima! Silakan ikuti langkah berikut:
- Fork repository
- Create feature branch (
git checkout -b feature/AmazingFeature) - Commit changes (
git commit -m 'Add some AmazingFeature') - Push to branch (
git push origin feature/AmazingFeature) - Open Pull Request
Coding Standards
- Follow PEP 8 for Python code
- Write docstrings for all functions
- Add unit tests for new features
- Update documentation as needed
๐ Database Schema
Users
id(Primary Key)usernameemailpassword_hashrole(admin/user)created_at
NPK Readings
id(Primary Key)user_id(Foreign Key)n_value,p_value,k_valueph,temperature,humidity,rainfalllocationtimestamp
Recommendations
id(Primary Key)user_id(Foreign Key)type(crop/fertilizer)input_data(JSON)recommendation(JSON)timestamp
๐ Security
- JWT-based authentication
- Password hashing with Werkzeug
- CORS protection
- Rate limiting (100 requests/hour)
- Input validation & sanitization
- SQL injection prevention via ORM
๐ Performance
- Response time: < 200ms (average)
- Uptime: 99.5%
- Concurrent users: 100+
- Database: SQLite (dev), PostgreSQL (prod recommended)
๐ Roadmap
Q1 2025
- Mobile app (React Native)
- Real-time IoT sensor integration
- Multi-language support (English, Javanese)
- Advanced weather forecasting
Q2 2025
- Blockchain-based supply chain tracking
- Drone imagery analysis
- Community forum
- Marketplace integration
Q3 2025
- AI-powered crop insurance
- Precision agriculture tools
- Farmer networking platform
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ฅ Team
Developer: Yandri918
Email: [your-email@example.com]
GitHub: @yandri918
๐ Acknowledgments
- Google Gemini AI for chatbot capabilities
- Roboflow for computer vision models
- Hugging Face for hosting platform
- Indonesian Ministry of Agriculture for data sources
- Open source community
๐ Support
Butuh bantuan? Hubungi kami:
- ๐ง Email: support@agrisensa.com
- ๐ฌ Discord: AgriSensa Community
- ๐ Issues: GitHub Issues
- ๐ Docs: Documentation



