Nortik

Case Study · Amini

Sovereign datainfrastructurefor the Global South.

Amini builds sovereign data infrastructure for the Global South, closing the environmental data gap that leaves African farmland effectively unmeasured. We worked on the geospatial product that made that data legible: an interactive map interface where field and surface information could be explored visually, on the map itself, instead of read out of the raw geospatial data behind it.

Countries active across the Global South
25+Countries active across the Global South
Of the world’s uncultivated arable land is here
65%Of the world’s uncultivated arable land is here
Seed round, led by Salesforce Ventures
$4MSeed round, led by Salesforce Ventures

Engagement Overview

Amini was founded in Nairobi in 2022 to close a gap the rest of the industry had routed around. Africa is still the most data-scarce continent, and the models, markets and risk pricing that work everywhere else rest on measurements nobody ever took here.

That is expensive in a specific place. Sub-Saharan Africa holds around 65 percent of the world’s uncultivated arable land, and a smallholder farming it cannot get a soil reading, a drought forecast or an insurance policy priced on evidence. So Amini built the data layer itself, turning satellite, sensor and ground-truthed data into field-level information on soil, crops, water and climate risk. Its first customers were agricultural insurers, and the Aon and African Development Bank partnership on parametric crop insurance is why: without the data there is no policy.

We worked on the geospatial product that made that data legible, building and iterating on its frontend: the interactive maps, charts and graphs where field and surface data became something a person could look at rather than query. The hardest part was the middle, translating geospatial data into a form a map could render. The figures on the right describe Amini, not this engagement.

25+
Countries active
65%
Of the world’s uncultivated arable land
$4M
Seed round raised
Engagement
Frontend product work on a geospatial platform
Team
Engineers inside Amini’s product team
Focus
Geospatial data transformation and map visualisation
Working model
Embedded in Amini’s delivery

Stack

Frontend

  • React
  • MobX
  • TanStack Query

Geospatial

  • Mapbox
  • Leaflet

Backend

  • Node.js
An aerial view of Cape Town, its mountain range and the coastline running away on both sides, photographed from high above the sea

The Challenge

Agricultural and environmental data does not arrive as an answer. It arrives as geometry and numbers: bands of raster imagery, polygons with coordinates, readings attached to positions on a planet. What a person actually wants to know is whether this field here is doing better or worse than the one next to it, and there is a long way between those two things.

A map is the only honest way to close that distance, because the question is spatial to begin with. The product needed the surface of a field drawn where it really is, with its information on it and the surrounding land visible for comparison. That means the map stops being a picture in the corner of a dashboard and becomes the interface itself, which is a different engineering problem entirely.

And the two requirements pull against each other. Spatial data has to be presented clearly, which argues for showing more of it, while the map has to stay usable for panning across regions and dropping into a single field, which argues for showing less. Getting one right at the cost of the other is easy. The work was in refusing to trade.

The Solution

One idea, followed all the way down: if the question is about a place, the answer belongs on a map of that place. Everything below is a layer of that, from the interface a user explores to the transformation that gets the data there in a form worth drawing. Amini built the platform. We built the surface it is read on.

An aerial view of dense forest cut through by cleared ground, winding tracks and silt-filled pools, photographed from directly above

An interface for looking at land, not at data

The first job was the product surface itself, built and then rebuilt as it met real use. Everything on it exists to answer a question about a specific piece of ground: what the field surface looks like now, what the numbers underneath it say, how this season compares with the last one. Maps, charts and graphs sit in one view rather than in separate tabs, because the person reading them is going back and forth between the shape of a field and the figures attached to it. React and MobX hold the state that ties the two together, and TanStack Query keeps what is on screen in step with what the server has.

  • React
  • MobX
  • TanStack Query
  • Charts & Graphs
An illustrative satellite analysis frame from Amini's own material: farmland and a reservoir seen from orbit, with two outlines showing how far the water had retreated across a year

The field, drawn where the field actually is

Then the part that makes it a geospatial product rather than a dashboard with a map in it. Field surfaces are rendered as real geometry in their real place, with their information carried on the shape itself, so a boundary, its readings and the land around it are one object a user can look at instead of three things they have to reconcile. Zooming from a region down to a single field is the same continuous act rather than a change of screen, and the surrounding land stays in frame the whole way, because a field only means anything next to its neighbours.

  • Mapbox
  • Leaflet
  • Field Surfaces
  • Spatial Layers
The Earth photographed at night from orbit, city lights scattered along the dark landmass and a thin lit atmosphere along the limb

Translating geospatial data into something a map can hold

Between a store of geospatial data and a map in a browser sits the work nobody sees, and on this engagement it was the hardest part. Geospatial formats are not what a rendering layer wants, and the volume involved is not what a browser wants either, so the data had to be translated and served in a shape the interface could draw at speed and at any zoom level. Node.js did that work. Get it wrong and every improvement made above it is spent waiting.

  • Node.js
  • Geospatial Transformation
  • Serving Layers

Where the map meets the rest of the product

A map is the loudest component on any page it sits on, and most of the difficulty in a geospatial interface is not inside it but along its edges. Three pieces of the engagement exist for that.

  • The map talks to the page

    Selecting a field on the map had to move everything else in the interface, and picking one from a list had to move the map, without either direction feeling like a reload.

  • One source of truth for what is selected

    Two views of the same thing drift apart the moment they each keep their own copy of it, so the selection, the viewport and the filters live in shared state rather than inside the map.

  • Detail that arrives when it is needed

    Field-level information is far too heavy to load for a whole region at once, so what gets fetched follows where the user actually is rather than what they might do next.

A group of children gathered together outdoors in a village in Sierra Leone, several of them laughing at the camera

Business Impact

What shipped was a visual way to explore agricultural field and surface information: interactive maps a user could move through, with the readings for a given piece of ground sitting on the ground itself. The geospatial data underneath stopped being something you had to query and started being something you could look at, which is a smaller sentence than it sounds and the whole point of the engagement.

That matters most for the people furthest from it. A field in Sub-Saharan Africa is not unmeasurable, it is unmeasured, and the distance between those two words is made up of interfaces nobody built. An insurer pricing a parametric policy, an agronomist looking at a district, a lender deciding whether a season is a risk worth taking: all of them are asking a question about a place, and all of them need to see it before they will act on it.

The work left Amini with a foundation for presenting field-level environmental data as part of the broader geospatial product they have kept building on since, from agricultural data layers for African farmland to sovereign data infrastructure across more than 25 countries. Our part in that was one surface. It was the one where the data has to stop being data.

View it from our angle.

Get In Touch
Stefan StefanovićNortik logo
Stefan Stefanović
Sr. Software Engineer, Nortik
The interesting part of this project was that it was closely tied to the structure and limitations of geospatial data, so we had to think about the map as more than just another UI component. We focused on making the field and surface information understandable through the interaction itself rather than exposing users to the complexity of the underlying data.

Nortik’s Impact

The frontend of Amini’s geospatial product: interactive maps carrying field and surface data, the charts and graphs beside them, and the transformation that got the geospatial data there in a form a map could draw.

Your AI team is ready.Are you?

Let's shape the future of AI, together.