Agora Livestock
In 2017, the LIVEstock Pricing team embarked on a journey to improve communication in the livestock industry, understanding that accurate market information impacts the day-to-day decision making of all businesses in the supply chain. Their aim was to design a more efficient way for producers, agents and buyers to communicate. In 2018, the Livestock Pricing app was released on the Apple and Google Play app stores.
Fast forward three years, and goodbye Livestock Pricing, hello Agora.
The Story Behind “Agora”
Recognising the opportunity in the market and the scalability of their platform, Agora gives the power back to sellers and buyers in the agricultural industry so they can run their business efficiently.
Agora is the culmination of more than two years of discussions, brainstorms, design sessions, and development. Working collaboratively with the Agora team, namely Managing Director Rob Kelly, the Hatchd and Adapptor teams have helped Agora to design and deliver a holistic rebrand and launch a brand new digital experience.
Agora will be a suite of integrated solutions to facilitate trade, allowing buyers and sellers to transact directly and efficiently and will remove barriers to enter the market by lowering the cost to do business. The Agora platform aims to give the power back to sellers and buyers by avoiding high agency costs, obscure prices and an outdated process.
The name ‘Agora’ is derived from ancient Greek times and was the predecessor of a city square. Agora served as a meeting ground and a market place, and perfectly reflects the intentions of Livestock’s rebrand. Agora is an idea born by people in the livestock industry for both buyers and sellers, regardless of the size and structure of their operation.
Agora Livestock gives both buyers and sellers a platform to build business relationships that will benefit both parties in the short and long term.
The Website
Our sister company Hatchd helped Agora to deliver their new website that offers buyers a platform to build a trusted network of suppliers and increase their market access. Buyers are able to send out an offer to sellers, either publicly or within a closed group of their choice, stating a price that they are willing to pay for livestock. For example, a buyer may send out a price to the public, that they wish to pay ‘X’ amount of dollars per head for sheep, sellers will then be notified and can initiate a potential sale.
The App
Adapptor has been hard at work developing ‘Agora Livestock’, the React Native apps for iOS and Android. Working in tandem with our sister company Hatchd, we have built Agora Livestock from the ground up, building both the front end and back end.
The Agora Livestock App is the gateway for sellers to access hundreds of livestock prices within minutes. Sellers are able to explore the available price grids made public (or shared privately within a group) and initiate discussions with buyers.
How Did We Deliver the Solution?
As Hatchd were building the API, they generated Swagger docs which lay out the endpoints and the contracts required for the calls. We then took the documents provided by Hatchd and used a library called openapi-typescript-codegen to auto generate a Javascript library. This enabled us to easily implement the calls into the React Native app with minimal effort.
The app uses Redux to maintain state, which meant we could make use of Adapptor’s own test library which allowed us to easily write epic test cases. This ensured that all calls to the API had test coverage and when the API changed, we could quickly pick up areas of the app which required changes or refactoring. Not only did this keep the App to API relationship solid, it also self documented the calls on the app side, making it clear which calls are being used and why.
Due to the parallel development of both the API and the app, it wasn’t always possible to have “real” endpoints backing screens. To help with this conundrum, we made use of Storybook. This allows a developer to render UI components, whether they be smaller items such as buttons, form fields or entire screens, outside of the main app by feeding in test data. This proved extremely helpful in a complex app such as Agora Livestock, where the user can end up several screens deep during offers or price searches. Rather than having to dig deep each time, we could view an isolated item and also control the data state, which was useful for a component such as a button as we could render each state (such as disabled, tapped or loading) or a screen with success and failure states.
One of the more challenging features of any app is managing payments. Ensuring a customer’s data is secure is always paramount in processing financial data. In this project we turned to the online payment experts Stripe. A company who are trusted by the likes of Google, Amazon and Salesforce to handle their payments. Stripe provide a React Native drop in library which does much of the heavy lifting in terms of taking the customer payment details and ensuring that all proper encryption takes place. This removes any need for the app itself to ever take any actual payment information, store card numbers or have any potentially risky custom code. Payment details are neither stored on the phone or sent over the wire, everything is handled with tokens generated by the Stripe library. Payments are never initiated from the device either, this happens from our own hosted secure server, adding a second layer of protection. This allowed us to quickly implement card payments and also include Apple Pay as an option, safe in the knowledge that at all times customer security was being addressed.
As is standard for Adapptor projects we leveraged Sentry for crash and error handling, along with Firebase which handles basic analytics and in this case, also provides our push notifications service. Push notifications are integral to the Agora Livestock app as it alerts the sellers to new offers, price grids and other invaluable information.
The final pieces of the puzzle was our use of Bitbucket pipelines and Drone to build the native apps. They serve as great time saving tools and also allow for consistent, reliable builds with minimal developer interaction.
“From growing up on a livestock farm, the lack of market information and access to buyers has always bothered me. When we realised the lack of communication was also a major issue for buyers we knew there had to be a solution. We had an MVP that showed willingness from both sides of the market to interact with one another but what Adapptor and Hatchd have delivered takes this to a new level. Our vision is to cut the fat out of the livestock industry and this is a major first step.”
Rob Kelly - Managing Director at Agora