ARTSEEN

Rome has no shortage of shows. Finding the right ones is harder.

A bilingual iOS app for discovering contemporary art in Rome. Independently curated, designed and built by one person.

Discover and Shows · Product mockups using original design screens · Pre-launch

ROLE

Sole designer and builder

PLATFORM

iOS · SwiftUI · Supabase · Next.js CMS

STATUS

Pre-launch · Draft dated 30 October 2026

ROLE

Sole designer and builder

PLATFORM

iOS · SwiftUI · Supabase · Next.js CMS

STATUS

Pre-launch · Draft dated 30 October 2026

01

THE BRIEF

Curation became the product.

Openings are scattered across gallery newsletters, Instagram stories and magazines, often in Italian only. After 15 years working in galleries and curation, I still missed shows I cared about.

A competitive review changed the brief. Maps, saves, filters and editorial picks already existed elsewhere. ARTSEEN needed a clearer reason to exist: no venue pays to appear.

A human chooses every ARTSEEN Pick. Shows are vetted for contemporary art and verified dates. Any future sponsorship stays visibly separate from editorial.

I narrowed the launch scope to tonight’s openings and this week’s shows, in English or Italian. Artist pages and a second notification type were moved beyond the initial launch scope.

01

THE BRIEF

Curation became the product.

Openings are scattered across gallery newsletters, Instagram stories and magazines, often in Italian only. After 15 years working in galleries and curation, I still missed shows I cared about.

A competitive review changed the brief. Maps, saves, filters and editorial picks already existed elsewhere. ARTSEEN needed a clearer reason to exist: no venue pays to appear.

A human chooses every ARTSEEN Pick. Shows are vetted for contemporary art and verified dates. Any future sponsorship stays visibly separate from editorial.

I narrowed the launch scope to tonight’s openings and this week’s shows, in English or Italian. Artist pages and a second notification type were moved beyond the initial launch scope.

02

DECISION 01

Picks earn trust. Shows add breadth.

A curated app can feel empty between recommendations. An exhaustive list can feel indistinguishable from the directories people already ignore.

Discover presents human-selected ARTSEEN Picks, full-bleed and one at a time. Shows provides a wider vetted listing, with List and Map views and shared filters.

The tradeoff is two places to look. A shared tab bar keeps them close, and the Pick badge makes the editorial selection recognisable inside Shows.

02

DECISION 01

Picks earn trust. Shows add breadth.

A curated app can feel empty between recommendations. An exhaustive list can feel indistinguishable from the directories people already ignore.

Discover presents human-selected ARTSEEN Picks, full-bleed and one at a time. Shows provides a wider vetted listing, with List and Map views and shared filters.

The tradeoff is two places to look. A shared tab bar keeps them close, and the Pick badge makes the editorial selection recognisable inside Shows.

01 / DISCOVER — EDITORIAL PICKS

02 / SHOWS — EXPLORE THE MAP

03

DECISION 02

Design for the morning after.

What does “Opening tonight” say at 9am the next day? What happens when a saved show ends? What if you are on the metro with no signal?

Ended shows move to Past instead of disappearing. Opening Tonight checks the date and says “last night”. Offline lists show their cached time, while saving remains available.

03

DECISION 02

Design for the morning after.

What does “Opening tonight” say at 9am the next day? What happens when a saved show ends? What if you are on the metro with no signal?

Ended shows move to Past instead of disappearing. Opening Tonight checks the date and says “last night”. Offline lists show their cached time, while saving remains available.

Opening Tonight — the next day

Opening Tonight — the next day

Exhibition detail — ended

Exhibition detail — ended

04

DECISION 03

Italian belongs in the first frame.

English and Italian were part of the design from the beginning. Components were checked with Italian strings before approval, rather than translated after the layout was finished.

One language setting controls both interface and content. Switching languages keeps people on the same screen.

04

DECISION 03

Italian belongs in the first frame.

English and Italian were part of the design from the beginning. Components were checked with Italian strings before approval, rather than translated after the layout was finished.

One language setting controls both interface and content. Switching languages keeps people on the same screen.

Exhibition detail in Italian · Full design screen

Exhibition detail in Italian · Full design screen

05

THE SYSTEM

An Apple app. An art magazine.

Native iOS behaviour provides the foundation: tab bar, sheets, Dynamic Type and light and dark modes. Print gives the product its identity through Schibsted Grotesk titles, warm paper tones and an orange reserved for Picks and primary actions.

Three springs define motion: snappy for presses, smooth for sheets and pushes, and lively for the save confirmation. Reduce Motion replaces movement with cross-fades.

The Listing Row covers missing images, Picks and past shows, including long Italian titles.

05

THE SYSTEM

An Apple app. An art magazine.

Native iOS behaviour provides the foundation: tab bar, sheets, Dynamic Type and light and dark modes. Print gives the product its identity through Schibsted Grotesk titles, warm paper tones and an orange reserved for Picks and primary actions.

Three springs define motion: snappy for presses, smooth for sheets and pushes, and lively for the save confirmation. Reduce Motion replaces movement with cross-fades.

The Listing Row covers missing images, Picks and past shows, including long Italian titles.

06

BUILDING IT

Product decisions, expressed in architecture.

I designed and built the product alone, including the native app, backend and editorial tools. SwiftUI and MapKit support the promise that the app feels like part of the phone.

Discovery runs on the server. Magazine feeds, gallery sites, newsletters and Instagram sources feed a private CMS inbox. Nothing publishes until I approve it.

Image permissions are recorded before gallery photography can be used; a Pick requires a cleared image. Date rules are shared between the app and database and checked against the same cases.

The draft describes EU hosting, row-level security, in-app account deletion and a threat model prepared before launch.

06

BUILDING IT

Product decisions, expressed in architecture.

I designed and built the product alone, including the native app, backend and editorial tools. SwiftUI and MapKit support the promise that the app feels like part of the phone.

Discovery runs on the server. Magazine feeds, gallery sites, newsletters and Instagram sources feed a private CMS inbox. Nothing publishes until I approve it.

Image permissions are recorded before gallery photography can be used; a Pick requires a cleared image. Date rules are shared between the app and database and checked against the same cases.

The draft describes EU hosting, row-level security, in-app account deletion and a threat model prepared before launch.

Sources → private CMS inbox → human approval → Supabase → iOS app

Sources → private CMS inbox → human approval → Supabase → iOS app

A simplified view of the architecture described in the case-study draft.

A simplified view of the architecture described in the case-study draft.

07

WORKING WITH AI

AI built with me. Editorial judgment stayed human.

I wrote most of the code with Claude Code, with separate agents for exploration, design context, research, iOS, backend and verification. Work moved in small branches and was reviewed before merging.

When a build reversed a recorded design decision, I added an explicit rule: never implement against a recorded decision without asking. When generated screens introduced custom tab bars and simulated glass, I pushed the work back toward native iOS components.

Inside ARTSEEN, AI drafts incoming listings from source material with a daily spending cap. A person approves every listing. I decide which shows become Picks and whether an image can be used.

07

WORKING WITH AI

AI built with me. Editorial judgment stayed human.

I wrote most of the code with Claude Code, with separate agents for exploration, design context, research, iOS, backend and verification. Work moved in small branches and was reviewed before merging.

When a build reversed a recorded design decision, I added an explicit rule: never implement against a recorded decision without asking. When generated screens introduced custom tab bars and simulated glass, I pushed the work back toward native iOS components.

Inside ARTSEEN, AI drafts incoming listings from source material with a daily spending cap. A person approves every listing. I decide which shows become Picks and whether an image can be used.

08

WHERE IT STANDS

Built. Not launched yet.

As of the 30 October 2026 draft, the backend is in production and the iOS app runs on my phone. Sign in with Apple, saved shows and the opening-tonight notification are waiting on the Apple Developer account.

After launch, the first measures will be return visits on opening nights, saves per active user and notification opt-in. These are planned measures, not reported results.

08

WHERE IT STANDS

Built. Not launched yet.

As of the 30 October 2026 draft, the backend is in production and the iOS app runs on my phone. Sign in with Apple, saved shows and the opening-tonight notification are waiting on the Apple Developer account.

After launch, the first measures will be return visits on opening nights, saves per active user and notification opt-in. These are planned measures, not reported results.

Return visits

Return visits

Does ARTSEEN help people plan an evening?

Does ARTSEEN help people plan an evening?

Saves per active user

Saves per active user

Do people trust the curation enough to save it?

Do people trust the curation enough to save it?

Notification opt-in

Notification opt-in

Do people want Picks delivered to them?

Do people want Picks delivered to them?

More projects