HTVCAAITD: Day One SPEC.md
#Here’s the full initial SPEC Claude generated after the first day of How to Vibe Code an App in 10 Days
# Favorite Places App — Specification
## Overview
A personal iPhone app for saving favorite
locations, organizing them with folders
and tags, and quickly opening them in
any installed maps application.
## Target User
Personal use (single user, no multi-user
or sharing features needed).
## Core Features
### 1. Location Search & Saving
- Search for places by name or address
using Apple's MapKit search
- Save a place with:
- Name (editable, defaults to search
result name)
- Address
- Coordinates
- Personal notes (optional)
- Folder assignment (optional)
- Tags (optional)
### 2. Organization
- **Folders:** User-created folders to
group places (e.g., "Restaurants,"
"Travel," "Work")
- **Tags:** User-created tags for
cross-cutting categorization (e.g.,
"date night," "outdoor,"
"kid-friendly")
- Places can exist outside any folder
(uncategorized)
- Places can have zero or multiple tags
### 3. Browsing & Viewing
- List view of all saved places
- Filter by folder or tag
- Search within saved places
- Tap a place to view details and edit
### 4. Open in Maps App
- Primary action button opens the place
in the user's default maps app
- Secondary option shows a list of other
installed maps apps (Apple Maps,
Google Maps, Waze, Citymapper, etc.)
- Default maps app is configurable in
settings
### 5. Data & Sync
- All data stored in iCloud (CloudKit)
- Automatic sync across user's devices
- Works offline with local cache; syncs
when connectivity returns
## Technical Approach
- **UI Framework:** SwiftUI
- **Minimum iOS:** 26
- **Location Search:** MapKit /
MKLocalSearch
- **Data Persistence:** SwiftData with
CloudKit sync
- **Maps App Integration:** URL schemes
for supported apps
## Out of Scope (for initial version)
- Sharing places with other users
- Map view of all saved places
- Import/export
- Widgets or Shortcuts integration
- Photos attached to places