✨ ONERecordConstellation.com
Getting a business analyst from setup to meaningful insights as fast as possible within ONERecord.
This is our submission to the Open and Developer Experience challenges. We wrote exactly 3161 lines of code during this hackathon - we're hoping this is our new lucky number.
⚡️ Quick Links:
Team:

🤔 Inspiration
ONE Record’s documentation is packed full of information that is incredibly useful but even as a developer (let alone a business analyst) we were left wondering how to begin developing with it. We had to pull information from other ONE Record resources in order to understand the model and there was considerable effort involved in getting onboarded. Could we make this more frictionless?
Once you have finally got your project set up, we were left wondering how best to engage with the data we had ingested. It is our belief that you will most likely want to engage with one record when you have a business question that you are trying to answer. As a business analyst, with little coding experience, turning those questions into meaningful insights might be difficult or require additional engineering resources.
🤩 What it does

The tool has two primary functions:
Enhance Onboarding: We built an interactive, dynamic and personalised onboarding guide to ONE Record. This guide surfaced the steps, resources and data required to seamlessly get started with ONE Record. It provided personalised code templates, easy interactivity through simple forms, and guided you through the steps to setup a data model and populate logistics object and events.
Explore: Using the power of LLMs, Constellation allows you to explore the ONE Record APIs as well as your ONE record data using natural language to surface your insights in multiple 3d visualisations.
🛠 How we built it
Our solution fell nicely into two parts that could be worked on independently and tied together at the end. This allowed us to easily split the workload throughout the hack, with Sam working on the world map and AI, and Ryan working on the guide and the data model.

😡 Challenges we ran into
Understanding ONE Record
Understanding the data model. We overcame this by utilising the NE:ONE playground to interact with linked data examples and understand how each type of logistic object links to each other. This enabled us to draw out a map of connections and understand what types were needed as a bare minimum to the guide flow.
AI Fallbacks
OpenAI is expensive and we didn't want to drain our bank accounts! So we came up with a layering of AI assistant technologies that used OpenAI as the fallback and using DialogFlow where possible. This layering saved those precious pennies!
Commas in JSON-LD
One issue we ran into was trailing commas with JSON-LD, this was caused by copying example logistics objects over from the playground and then automating adding commas back in as they weren't copied over with the object. This caused some additional commas to be added in with the automation that were hard to spot amongst a large data set. Luckily the amazing staff members were able to spot the offending commas and were were no longer blocked.
Staying Awake
It goes without saying that we struggled to stay awake during this hack! Maybe we are becoming old men? 😅
Accomplishments that we're proud of
Sam:
"In one weekend we have gone from a couple of post-it notes to a deployed website. I couldn't be prouder of how far we managed to go given our limited industry experience."
Ryan:
"I am proud of the flow and scale of the guide that was produced. It provided a great user experience, directing users onto the tasks they needed to perform next, and also provides a large amount of personalised data that can easily be copied and used as a reference when implementing their full scale solutions."
📈 What's next for One Record Constellation
We want to expand the functionality of the project across all stages of your ONE Record journey:

Built With
- dialogflow
- firebase
- javascript
- mapbox
- onerecord
- openapi
- react
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.