Skip to content

Raka

App Store

Which Rio street market is open right now, how long until it closes, and which one is yours.

OpenPrivate repository

Overview

Raka puts the street markets of Rio on a map with the one piece of information a visitor actually needs first: whether it is open right now, and how long is left. From there it filters by what you came for, across fourteen categories, and routes you to the stall.

Problem

Fair schedules live scattered across posts, signs and word of mouth, so a visitor with an afternoon free has no way to tell which market is running today. The information exists; it just has no single place to be read from.

Trade-off

The market data is fetched from CloudKit once, in full, and every filter, search and sort after that runs in memory on the device. For a dataset this size that makes filtering instant, keeps the app usable when the signal drops between two stalls, and means the whole catalogue can be re-sorted without asking the network for permission.

What it does

Map of Rio showing what is open now, with a live countdown to closing
Fourteen product categories to filter by — food, crafts, live music, nature
Match: pick at least four categories, get the three markets with the best overlap
Search that forgives accents and typos
Routing to the market, favourites, and Instagram of each fair
On-device translation of the market description, and a Siri shortcut

Stack

iOSSwiftSwiftUIMapKitCoreLocationCloudKitCloudKitMagicCRUDTranslationAppIntentsFirebaseMessagingPostHogCombine

What I took from it

Anything that reads as live on screen — a countdown, an open badge — is a decision about how often the interface is allowed to rebuild itself. Tying that to a clock is easy to write; tying it to the moments that actually change state is what keeps a map cheap to leave open while walking around.

More iOS work

Work

Set in Uncut Sans and Commit Mono. Built to the iOS metrics: 8pt grid, 17px body, 44px targets, spring physics.

© 2026 Lucas Santhiago. All rights reserved.