France's agricultural disclosure laws require farmers and vineyard operators to notify surrounding residents before applying phytosanitary treatments. The process used to mean paperwork, manual phone calls, and a compliance headache most small farms could not afford to get wrong. AgriSignal was built to eliminate that friction entirely, replacing it with a one-minute digital declaration that handles the notification, the registry, and the public record automatically.
The Brief
The client came with a clear two-sided problem. Farmers needed a faster way to stay compliant without hiring a compliance officer. Residents needed a way to find out what treatments were happening near their homes, gardens, and outdoor spaces, without having to knock on a farmer's door to ask. The platform needed to serve both groups without making either feel like an afterthought.
The brief had four hard requirements: declarations in under one minute for authenticated professionals, automated neighbor notifications by email and SMS, a public interactive map viewable by anyone without registration, and a regulatory-compliant phytosanitary registry with exportable records. And it needed to run as a freemium product, with a free tier that was genuinely useful and a paid tier that added value for professional users at scale.
Stack Decisions
We built AgriSignal on our standard Laravel, Vue.js, and MySQL stack, with additional layers for the real-time notification and mapping requirements:
- Laravel handled the backend: user authentication with role separation (farmers vs. public users), declaration logic, notification dispatch, registry generation, and the admin layer. Its queued job system was the right choice for asynchronous email and SMS dispatch without blocking the declaration flow.
- Vue.js powered the frontend, giving us a reactive, component-based interface that worked equally well for the farmer's declaration form and the public-facing treatment map. Single-page behaviour without full-page reloads kept the declaration flow fast on mobile.
- MySQL stored declarations, treatment schedules, plot geometries, registered neighbor contacts, and user accounts in a relational structure designed for fast geospatial queries.
- Leaflet.js rendered the public interactive map, with commune-based filtering and colour-coded treatment status indicators (scheduled, ongoing, completed). It is lightweight, works offline, and does not require a paid maps API.
Key Challenges
The hardest technical problem was the notification pipeline. A farmer filing a declaration needs confidence that their neighbors were actually reached, not just that an email was queued somewhere. We built a delivery-tracking layer on top of Laravel's notification system: each dispatched email and SMS is tracked to delivery or failure, and the farmer's dashboard shows the status of every recipient in real time. Failures trigger automatic retries and a fallback alert to the farmer.
The second challenge was GDPR. AgriSignal handles personal contact data for residents who may never have directly registered with the platform. Neighbor contact lists are managed by the farmers who add them, and those residents have rights: to see what data is held, to opt out of future notifications, and to be removed on request. We built a self-service unsubscribe and data-request flow that satisfies the regulation without requiring a data protection officer to handle every request manually.
The third challenge was the public map. The map needed to be useful without exposing sensitive data. Plot boundaries are shown at commune level rather than GPS precision. Individual farmer identities are anonymised in the public view. Treatment product names are shown; exact concentrations are not. Striking the right balance between transparency and privacy took several iterations of design review with the client.
Finally, the regulatory export. France's phytosanitary registry has a prescribed format. We built a PDF generator that pulls from the declaration database and produces a compliant, dated export in the exact layout required by agricultural inspectors. Farmers can download it at any time; no manual compilation required.
Results
AgriSignal launched and grew to 10,000+ monthly visitors within 30 days, driven by organic search from farmers and residents in agricultural regions searching for phytosanitary compliance tools and treatment information in their communes.
You can visit the platform at agrisignal.fr.
What We Would Do Again
- Design the notification pipeline for observability from day one. Knowing whether a neighbor was reached is not a nice-to-have, it is the product's core promise
- Model the two user roles separately from the beginning. Farmer flows and public flows share almost nothing beyond the data layer; conflating them early creates UI debt that is expensive to untangle
- Treat regulatory export as a first-class feature. It is the reason many professional users choose a paid plan; building it as an afterthought would have cost a major conversion lever
- Use commune-level anonymisation on the public map from the start. Precise plot boundaries create privacy and legal exposure you do not want to retrofit away after launch
If you are building a compliance or transparency platform, especially one that sits at the intersection of professional users and the general public, let us talk. We have done this before and we understand how to make both sides of a two-sided product feel equally well-served.
