Blog
All Blog Posts | Next Post | Previous Post
Build Your Own AI-Powered Summer City Guide in Delphi
Thursday, August 6, 2026
Build a Summer City Walking Tour Guide with TMS AI Studio, TMS FNC Maps and TMS FNC UI Pack
Summer is the ideal moment to explore a city by walking. Whether you are visiting a new destination, rediscovering your own city, or looking for a pleasant afternoon walk with a bit of culture, food, architecture and nature, a good walking tour can make the difference between wandering around and really experiencing a place.
And summer time is also an ideal time to get a discount for the products used in this Summer project! Take this opportunity to get 25% discount on TMS FNC Maps, TMS FNC UI Pack, TMS AI Studio or TMS FNC Component Studio. The coupon code is valid till Aug 31, 2026.
And summer time is also an ideal time to get a discount for the products used in this Summer project! Take this opportunity to get 25% discount on TMS FNC Maps, TMS FNC UI Pack, TMS AI Studio or TMS FNC Component Studio. The coupon code is valid till Aug 31, 2026.
Use coupon code :
on the online order form to activate the discount! With the Summer 2026 Delphi project, we wanted to show how quickly such an experience can be built with 3 TMS products working together, an OpenAI API key and Google Maps API key and of course Delphi:
- TMS AI Studio for AI-generated tour content and speech
- TMS FNC Maps for geocoding, directions, markers, route drawing and GPX export
- TMS FNC UI Pack for the polished cross-platform user interface
The result is a mobile-friendly FireMonkey application that turns a city name and a few selected interests automatically into an AI-generated walking guide.
And to make it even easier to explore the project yourself, the full source code of this summer project is available from our GitHub repository.
From a City Name to a Personalized Walking Tour
The idea behind the application is simple.
The user enters a city (or the city is retrieved from the device location), selects one or more categories of interest, and taps "Generate my tour". The available categories cover typical recreational city-trip interests such as:
- Museums
- Historical Places
- Architecture
- Parks & Nature
- Entertainment
- Shopping
- Food & Drinks
- Art & Galleries
From there, the application asks the AI (OpenAI ChatGPT in this case) to find a good set of points of interest matching the selected categories and to order them as a pleasant walking tour of approximately 5 km by default or the distance of your choice.
Screen for entering city or retrieve current location The visualization of the calculated route
and categories of places you want to visit

The list of places along the walking tour and a description.
Click the speaker icon to hear your digital guide explain the POI
This is where TMS AI Studio makes the experience feel natural. Instead of hard-coding a database of places for every possible city, the application can ask the AI to suggest relevant POIs, describe them, classify them by type and provide a related Wiki URL. The generated result is then fed back into the Delphi application as structured data, ready to be displayed in the UI and used by the TMS FNC Maps mapping components.
For the user, this is just a few taps. For the developer, it avoids a large amount of manually curated content and opens the door to dynamic, location-aware application scenarios.
AI That Calls Back into Your Delphi Code
One of the strengths of TMS AI Studio is that it is not limited to a prompt-and-answer workflow. In this demo, the application defines AI tools the model can call, such as adding a tour place to the route list or reporting that no suitable place was found.
The AI receives the instruction to find POIs for the requested city, category selection and walking distance. For every result, it calls back into Delphi code with:
- The POI name
- A short description
- The POI category
- A Wiki URL
This is achieved by a tool call that is setup:
var p: TCloudAIParameter;
begin
CloudAI.Tools.Add; CloudAI.Tools[0].Name := 'addtourplace'; CloudAI.Tools[0].Description := 'Add a POI name, description and Wiki Page URL for the walking tour to the list'; CloudAI.Tools[0].OnExecute := ToolExecuted; p := FCloudAI.Tools[0].Parameters.Add; p.Name := 'POI'; p.Description := 'The name of the POI'; p.Required := true; p.&Type := ptString; p := FCloudAI.Tools[0].Parameters.Add; p.Name := 'Description'; p.Description := 'A brief summary description of the POI'; p.Required := true; p.&Type := ptString; p := FCloudAI.Tools[0].Parameters.Add; p.Name := 'Type'; p.Description := 'The type of the POI from the list ' + CategoriesList([low(TPOICategory)..high(TPOICategory)]); p.Required := true; p.&Type := ptString; p := FCloudAI.Tools[0].Parameters.Add; p.Name := 'WikiURL'; p.Description := 'The URL of the Wiki page of POI'; p.Required := true; p.&Type := ptString;
end;
This gives the application clean, structured data instead of free-form text that still needs to be parsed afterwards. That is an important difference when building real applications: the AI becomes part of the workflow, while the Delphi application remains in control of how the data is stored, shown and processed.
Putting the Route on the Map
Once the POIs are available, TMS FNC Maps takes over the geographical part.
The application uses geocoding to resolve the selected city and each point of interest to coordinates.Experiments have proven that the accuracy of retrieving POI coordinates is still noticeable better with a Google Maps geocoding API call covered by TTMSFNCGeoCoding than what the LLM can return (if it can already return it). It then uses directions support available in the TTMSFNCDirections component to create a walking route between the places. On the map, every POI is shown as a marker with a category-specific icon, and the route is drawn as a polyline.
// build the waypoints array and ask the directions service to calculate a route
// from starting place back to starting place with all waypoints in between
var
i: integer;
org: TTMSFNCMapsCoordinateRec;
begin
org.Longitude := Places[0].Coord.Longitude;
org.Latitude := Places[0].Coord.Latitude;
SetLength(wp, Places.Count - 1);
for i := 1 to Places.Count - 1 do
begin
wp[i - 1].Longitude := Places[i].Coord.Longitude;
wp[i - 1].Latitude := Places[i].Coord.Latitude;
end;
FDirections.GetDirections(org, org, nil, '', nil, false, tmWalking, wp, true);
end;The user can switch between a list view and a map view. In the list, the POIs are shown with names, descriptions and category icons. On the map, the same places are visible in their geographical context, connected as a walkable tour.
The project also includes GPX export, so the generated city tour can be saved as a walking route. That makes the demo not only visually appealing, but also useful as a basis for real travel, tourism, event or leisure applications. Again, achieved by a single call SaveToGPXFile() from the TTMSFNCMaps component.
A UI That Feels Like a Mobile Travel Companion
For the user interface, the project uses TMS FNC UI Pack components such as panels, toolbar buttons, list boxes, HTML text display, bitmap containers and waiting indicators.
The app flow is deliberately compact:
- Enter a city
- Pick one or more POI categories
- Generate the walking tour
- Review the generated places
- Open the map
- Tap a marker or list item for more information
- Listen to the description at the POI
- Export the route when needed
The category selector is implemented as a visual grid of buttons with icons. The overview screen can show either the map or the list. Waiting indicators are used while the AI and route services are doing their work. The settings screen allows API keys and preferences to be entered and stored.
All of this is built in a Delphi FMX project, making it suitable for desktop testing and mobile deployment with one code-base. The project includes Android and iOS targets, which is especially relevant for a walking guide: the best device for this application is the smartphone in your pocket while you are out in the city.
Let the Smartphone Speak at the POI
A city guide becomes much more convenient when you do not need to keep reading from the screen.
When the user selects a POI, the application shows the name and generated description. At that point, the Speak button becomes available. With one tap, the description is sent through the AI text to speech functionality and played back as audio on the device.
This turns the application into a lightweight audio guide. You arrive at a museum, park, square or restaurant area, tap the POI and let the smartphone tell you what is interesting about the place.
For tourism and recreational apps, this is a powerful detail. Text-to-speech makes the application more accessible, more comfortable to use outdoors, and more immersive. From a developer perspective, it is also a good example of how TMS AI Studio can bring multiple AI capabilities into the same Delphi application: first generating the tour, then speaking the information.
Why This Demo Matters
The Summer 2026 project is not just a nice seasonal app idea. It demonstrates a practical pattern for modern Delphi development:
- Use AI to generate contextual, personalized content.
- Use mapping components to turn that content into real-world navigation.
- Use a rich cross-platform UI toolkit to make the experience easy and pleasant.
The same pattern can be reused in many other applications:
- Tourism apps
- Museum and campus guides
- City event applications
- Hotel concierge tools
- Conference venue guides
- Real estate neighborhood explorers
- Outdoor activity planners
The categories, prompts, route distance and generated content can all be adapted to the domain. The core architecture remains the same: TMS AI Studio provides the intelligence, TMS FNC Maps provides the location and routing layer, and TMS FNC UI Pack provides the user experience.
A Productive Combination for Delphi Developers
What makes this demo attractive is the speed at which an advanced application concept becomes achievable. Thanks to the powerful components that wrap a lot of the needed functionality, this idea grew into a full-blown app in a couple of days only.
Together, these products let Delphi developers focus on the actual application idea: in this case, a summer recreational city walking tour guide that is generated on demand, visualized on a map and spoken aloud when the user reaches a place of interest.
It is a small project with a very recognizable use case, but it shows a much larger opportunity. AI is most valuable when it is connected to real application workflows. Maps are most valuable when they are connected to meaningful content. A good UI is most valuable when it keeps both of those things simple for the user.
TMS Summer 2026 Project brings all three together in one clear demo.
Conclusion & share your city walks!
With only a city name and a few chosen interests, the application creates a personalized walking tour, displays it on an interactive map, lists the selected points of interest, exports the route and lets the smartphone speak the POI information aloud. Thanks to the cross-platform power of Delphi, we can create our own app for iOS & Android mobile devices and have it useful for once also in our leisure time!
Do you live in an interesting city or visit an interesting city, take the app with you, make a walking tour and email the result as GPX file. We can share the nicest walking tours here.
Without a doubt, you'll have cool ideas for additional features in the app. Let us know about it or add these features to this open-source app and see it grow!
Do you live in an interesting city or visit an interesting city, take the app with you, make a walking tour and email the result as GPX file. We can share the nicest walking tours here.
Without a doubt, you'll have cool ideas for additional features in the app. Let us know about it or add these features to this open-source app and see it grow!
Bruno Fierens
This blog post has not received any comments yet.
All Blog Posts | Next Post | Previous Post
