Disclaimer

I'd like to candidate with the AI feature only (developed in January) whereas the other sections of the app were developed beforehand

Inspiration

I have climbed for 30 years, and I am a designer (user researcher) So, of course, I had this idea about 10 years ago. But at that time, working with PHP and jQuery didn't really make it (hello Flutter, hello Serverpod!!!) Still, the vision of the project never stopped evolving in my mind, and a first MVP will eventually be launched in a few weeks.

What it does

Guide Me Out aims at providing all the data to support the climbers in their outdoor activity:

  • a map and a search feature to find the right climbing destination
  • an AI agent to suggest where to climb - this feature was initially scheduled for later, but I brought it forward for the hackathon - this is 100% 2026 work. It is made to help the selection of a climbing crag according to many variables (location, current season, exposition to the sun, difficulty, compatibility with kids, if routes are engaging, the profile of the cliff, the rock type, etc.)
  • the actual climbing guidebook, with a picture of cliff, and interactive routes (and many additional features on the roadmap)
  • a documented approach (just like a hiking guidebook)
  • collaborative edition to craft or edit climbing and approach guides - with versioning and validation processes
    • offline use (and edition) of climbing and approach guidebook

That's it for now (but the roadmap is filled with additional features)

How we built it

As a user researcher, it all started with observations of users on the field, testing some printed versions first. This was the beginning of a full user-centered design approach.

Then, on the technical layer, the macro features were initially developed as distinct sub-projects, and are progressively merged into a main Serverpod single application.

It is somehow a large project with many crossing features. So I try to maintain a clean architecture layout as much as I can. Also, since last fall, Claude Code helps a lot to save time (but I still need to learn how to better use it not to produce messy code that is hard to maintain)

For the AI feature of search assistant The data of climbing crag data is already deeply structured, with many enum and dedicated descriptor fields (orientation, height, type of equipment, difficulty of the approach, required energy, etc.) But they also have qualitative data with translated information in 26 languages. Embeddings were built for the core scales (regions > areas > sites > subSites > crags); these scales concentrate the research/navigation tasks of the users. Gemini is handling paralel tasks to combine both SQL requests and vector requests in order to answer accurately.

Challenges we ran into

First of all, I'm not a developer. And I had to learn a lot to be able to build this mvp. And I know the code base is not very clean (indeed, I feel quite ashamed to share it for this hackathon). I just wish I had more time to craft a so beautiful, readable, and maintainable code base I would be proud of. And I promise that the code base will be all tidy and shiny if you come back in six months, with all the test layers implemented!

More technically speaking, I think the main challenge of the app is to provide an offline-first experience, while offering collaborative edition capabilities. That mean that each key entity must be versioned to track changes, with a clear identification of the reference version, publication statuses, local/remote synchronization engine, and therefore three models per entity: a local Objectbox entity for local storage, a remote Serverpod entity with serializable fields, and a dart "canonical" entity to be displayed and manipulated within the live app.

Accomplishments that we're proud of

Well, maybe not the code quality (yet!), but the initial end users feedback! They feel so enthusiastic!!!

What we learned

So much! I wouldn't know what to say.. But at least for the hackathon scope, the RAG/Vector thing was really all brand new to me!

I followed the video demo from Viktor to guide me fort this hackathon, although I had to adapt slightly since most of my semantics content is already very structured...

What's next for Guide Me Out

Well, a MVP is supposed to be launched in a couple of weeks!

For the AI assistant feature, here are what would likely come next:

  • the first priority task is to implement a message architecture, as tougher AI requests may lead to some timeouts (thanks to the suggestions from the Serverpod Discord by the way!)
  • a better UX integration within a search/filter engine macro feature
  • integrate personal profile to provide more relevant suggestions
  • also consider other features than crag suggestions
  • supporting multiple languages in a smoother way :)

Built With

  • claude
  • dart
  • flutter
  • riverpod
  • serverpod
  • svg
Share this project:

Updates