Inspiration

Agriculture is an uncertain battle against nature and the economy. Farmers often struggle to balance volatile crop markets with unpredictable soil health and weather patterns. We wanted to build AuraFarming to take the guesswork out of the field, providing an advisory council, supplemented with data visualisation, that synthesises global market data and local environmental science into actionable, high-yield strategies.

What it does

AuraFarming is an AI-driven decision engine that optimises a farm's income, yield and disaster management. By aggregating real-world data from multiple APIs, including crop futures, soil composition, and hyper-local weather, the platform predicts crop value and provides specialised guidance. Farmers receive tailored advice on: Soil Management: Precise treatments based on local soil grids. Market Strategy: Optimal times to sell based on Y-Finance trends. Emergency Preparedness: Proactive alerts for extreme weather events. Crop Selection: Data-backed suggestions on which seeds will thrive and sell.

How we built it

The brain of AuraFarming is built on Python and FastAPI, using Claude 4.5 Sonnet to transform raw data into digestible, human-centric advice.

Top-level Design: We made a rough sketch using pen and paper to communicate the concept clearly amongst team members. As a team, we prioritised coherence and ensuring every member was on board was crucial to our development.

Data Pipeline: We worked in pairs, creating a data pipeline for each unique set of metrics, such as wind and temperature, soil moisture and compaction, extreme weather events, and market data. This was our starting point in the project, and arguably the most challenging part. However, the pair programming dynamic helped to accelerate the development and debugging process. We used Pandas to help clean up and structure our data into a Pandas DataFrame.

Model Training: Following our data pipeline, we used the clean and structured data to help predict future trends of market, weather and soil conditions. This helped to inform our data visualisations, as well as the advice given by Claude. We used XGBoost, Scikit-learn, Numpy to accelerate our data analysis and model training development time.

User Interface: To promote accessibility, we chose a responsive user interface designed using React and Next.js (with TypeScript) to enable wider access to our application, and facilitate an intuitive design for our farmers.

Challenges we ran into

The Scraping Trap: We initially wasted several hours trying to scrape a GUI-based soil database using automated web-browsing. After a long cycle of debugging "un-scrapable" elements, we pivoted to the ISRIC Soilgrids API, which proved much more reliable.

LLM Hallucinations & Formatting: LLMs can be "creative" with data. Getting Claude to consistently output structured JSON for our frontend while maintaining a supportive, professional tone for the farmer required rigorous prompt engineering and few-shot prompting.

The "Data Desert": Finding high-resolution, free soil data for specific coordinates was significantly harder than we anticipated. This even made us reconsider our project idea entirely.

Accomplishments that we're proud of

Seamless Integration: Successfully bridging the gap between historical soil data and real-time market futures.

User-Centric Design: Creating an LLM output that doesn't just give "data," but gives "wisdom" that a farmer can actually use.

Pivot Speed: We recognised our failure with the initial web-scraping method early enough to switch gears and still deliver a functional backend.

Open Communication: Our team dynamic encouraged communication, which was a significant factor in the development and manifestation of our idea. We believe sharing a good atmosphere and open communication is important to any team environment.

What we learned

Prompt Engineering: We discovered that treating LLM prompts as code, with versioning and strict constraints, is the only way to get production-ready results. This technology allowed us as a team to be more ambitious in our ideation and gave us confidence.

Noise: We realised that more data doesn’t always mean better advice. Initially, we overwhelmed the LLM with every available weather and soil metric. We learned that to get high-quality output, we had to act as 'Data Curators,' identifying the specific 5-6 key variables, like soil moisture and moving average price, that actually drive a farmer's decision-making.

Technical Resilience: We learned the importance of graceful degradation in software. When an API like SoilGrids or OpenMeteo experienced high latency, our entire app would hang. We learned how to implement better error handling and default data states to ensure the user experience remained smooth even when external data sources were slow.

What's next for AuraFarming

Multi-Modal Accessibility: Integrating Voice AI so farmers can interact with the system hands-free in the field.

Simulated Strategy Testing: A "What-If" sandbox where farmers can simulate different fertiliser or irrigation strategies against predicted weather patterns.

Computer Vision: Allowing farmers to upload photos of crop distress for instant diagnosis via Claude’s vision capabilities.

Built With

Share this project:

Updates