000%

FieldSpark connects the records behind field work, stock movement, product application and harvest traceability.

Selected work - 01 / Agriculture

FieldSpark

Project overview

I built FieldSpark through Webtra Digital Solutions for agricultural operations. The work spans the data model, application workflows and interfaces that connect a field to the inputs used on it and the batches harvested from it.

Technologies used

PHP logoPHP
Laravel logoLaravel
Vue.js logoVue.js
JavaScript logoJavaScript
Tailwind CSS logoTailwind CSS
MySQL logoMySQL

( 01 ) - The system

The hard part is keeping related records connected as work moves from planning to the field and on to harvest.

FieldSpark models fields, crop types and varieties alongside storerooms, products, spray programs and harvest batches. A program references both the field and the inventory item; an application records what actually happened; a harvest batch can reference the applications associated with it. That structure makes the history of the work inspectable across modules.

The product also covers the surrounding work: field notes, growth stages, stock audits, training records, equipment calibration and reporting. The deep dive below focuses on the path that ties the core agricultural records together.

( 02 ) - Record path

From a field to a harvest batch.

These are the linked record types in the application. The path is a map of the data model, not a claim that every farm follows one identical process.

01 / Input

Field

A physical block with its crop type, variety, season and location.

02 / Input

Product & Stock

An item held in a storeroom, with quantity and product details.

03 / Record

Program

Planned work linking a field, product, timing and assignee.

04 / Record

Application

The recorded activity, amount used, applicator and conditions.

05 / Record

Harvest Batch

A batch linked back to its field and relevant application history.

Field and stock context feed a planned program; the application and harvest batch retain the linked history.

( 03 ) - Inventory

Stock changes need an explicit reason and a reliable state change.

The inventory model tracks products in storerooms. Receipts add stock; transfers move it; applications consume it; physical counts can lead to an approved reconciliation. Rather than treating the quantity as a free-editing field, these workflows give each change its own record and decision point.

01

Receive

Goods receipts record stock entering a storeroom, including product, quantity and batch details.

02

Move

Transfers require approval. Completion updates both storerooms together inside a database transaction.

03

Count

A stock audit compares the physical count with the recorded quantity. Reconciliation follows approval.

04

Use

An application checks available stock before the system records consumption and the application together.

A transfer approval checks available source stock, updates both storerooms and records the approver within one transaction. A stock audit must be approved before its counted quantity can replace the recorded amount.

( 04 ) - Checks

Application records carry the constraints that make them useful.

FieldSpark separates a planned agrochemical program from an actual application. Program setup checks required product details; the application flow checks field location and stock, captures who applied the product and calculates timing dates. A separate rule engine evaluates further program constraints and returns pass, warning or blocking results for review.

01

Product Identity

Program creation checks for a label ID, formulation and concentration on the selected product.

02

Field Context

Application capture requires field location data and records the actual date, quantity and applicator.

03

Stock Availability

The requested amount is converted to inventory units and checked against stock that is not reserved.

04

Timing Rules

The application flow calculates pre-harvest and re-entry dates and records a validation result.

These checks support record quality and review. They are not a claim that the product itself holds a compliance certification.

( 05 ) - Traceability

The batch record can carry its history into a reviewable export.

A harvest batch stores its source field and can be linked to the application records relevant to that batch. The traceability view loads those relationships; its spreadsheet export separates batch details, linked spray applications and sales lots into sheets that can be inspected outside the app.

FieldSpark also has an audit pack export that gathers records such as applications, calibration, training, harvest, environmental tests and safety incidents. The design keeps operational data usable at the point of work and available later for review.

Sheet 01

Batch Details

Source field, harvest date and batch identity.

Sheet 02

Applications

Linked product use, timing and applicator details.

Sheet 03

Sales Lots

Lot, dispatch and quantity information.

( 06 ) - Architecture

An operator-facing app with domain rules behind the screens.

Application

Laravel handles routes, persistence and domain services. Vue 3 and Inertia provide the operator-facing pages.

Team Context

Farm data is organised under teams, with role-based permissions and team-scoped queries throughout the workflows.

Rules

A dedicated rule engine evaluates program constraints such as product use, timing, training and protective equipment.

Reporting

Spreadsheet exports turn linked operational records into traceability reports and multi-sheet audit packs.

My contribution was building the application and its connected workflows. This case study describes implemented scope; it does not attach an unverified rollout figure, time saving or customer outcome to the work.