Walk Around Audio Guides
PWA that sells GPS audio guides for Sicilian cities: a free thirty-second preview, purchase through PayPal, offline listening, and QR codes that discount the guest of a partner hotel.
- Type
- Personal project
- Area
- AI
- Main stack
- Angular · TypeScript · Node.js · Express
Key features
- • Free thirty-second preview, full audio only after purchase
- • PayPal checkout for a single place or for a whole city
- • Descriptions and narration in six languages, translated and voiced from the dashboard
- • Map with geolocation and a prompt when a place is a few steps away
- • Audio and images downloaded for offline listening
- • Partner QR codes that discount the guest and pay the structure a fixed commission
About the project
Web application, installable as a PWA, that sells and plays audio guides for the Sicilian cities in its catalogue, with the places on a map and the narration in the visitor’s own language. Every place offers a free thirty-second preview, cut from the full track on demand, while the complete audio is served only to a session that has paid for it: a single place or a whole city.
Payment goes through PayPal Orders v2: the Express backend quotes the price, creates the order, captures it and records the takings in PostgreSQL, expiring the ones left hanging and marking a capture whose outcome is unknown so that a person looks at it. Descriptions and narration exist in six languages, translated and voiced from the administration dashboard through the OpenAI text and speech endpoints.
Accommodation providers apply on their own and, once approved, receive by email a PDF carrying a QR code — both produced by the backend with no library at all, Reed-Solomon encoder included — that opens the app with the discount code identifying them: their guests pay less, and the structure earns a fixed commission it follows in a dashboard of its own. Downloaded audio and images stay in the Cache API with an IndexedDB index, so a guide keeps talking where the network stops.
Technologies used
Angular
TypeScript
Node.js
Express
PostgreSQL
Leaflet
PayPal
OpenAI API