pottery-diary/docs/PRD.md

166 lines
5.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Product Requirements Document - Pottery Diary (US)
## Executive Summary
**Product**: Mobile diary for ceramics/pottery projects (iOS & Android)
**Target Market**: US hobby potters, ceramic students, studio owners
**Launch Date**: Q1 2025
**Version**: 1.0 MVP
### Core Value Proposition
Help makers reproduce results and learn from past firings by tracking every project step (clay → bisque → glaze → firing) with photos, glaze layers, temperatures, cone numbers, and notes.
## Key Features (v1.0)
### 1. Projects (CRUD)
- Create/edit/delete projects
- Cover photo, title, tags, status (in progress/done/archived)
- Gallery view sorted by last updated
### 2. Process Steps
Six step types with contextual fields:
- **Forming**: Basic notes + photos
- **Drying**: Basic notes + photos
- **Bisque Firing**: Cone (e.g., 04), Temperature (°F/°C), Duration (h:mm), Kiln notes, Photos
- **Glazing**: Glaze selection (catalog/custom), Coats (int), Application (brush/dip/spray), Photos
- **Glaze Firing**: Cone (e.g., 6, 10), Temperature, Duration, Kiln notes, Photos
- **Misc**: Basic notes + photos
### 3. Glaze Catalog
- Read-only seed data (25+ US glazes: Amaco, Mayco, Spectrum, Coyote, etc.)
- Add custom glazes (brand, name, code, finish, notes)
- Search by brand/name/code
### 4. Cone-Temperature Converter
- Orton cone reference (022 → 14)
- Auto-fill temperature when cone selected
- User can override auto-filled values
### 5. Settings
- Unit system: Imperial (lb/in/°F) or Metric (kg/cm/°C)
- Temperature unit: °F or °C
- Analytics opt-in (disabled by default)
- Data export (JSON)
### 6. Onboarding
- 3-screen intro with skip option
- Explains key features
## Technical Architecture
### Stack
- **Framework**: React Native (Expo SDK 54)
- **Language**: TypeScript
- **Database**: SQLite (expo-sqlite) - offline-first
- **Navigation**: React Navigation v7
- **Photos**: expo-camera, expo-image-picker, expo-image-manipulator
- **Build**: EAS Build
### Database Schema
```sql
projects (id, title, status, tags, cover_image_uri, created_at, updated_at)
steps (id, project_id, type, notes_markdown, photo_uris, created_at, updated_at)
firing_fields (step_id, cone, temperature_value, temperature_unit, duration_minutes, kiln_notes)
glazing_fields (step_id, glaze_ids, coats, application)
glazes (id, brand, name, code, finish, notes, is_custom, created_at)
settings (id, unit_system, temp_unit, analytics_opt_in)
news_items (id, title, excerpt, url, content_html, published_at, cached_at)
```
### Key Components
- **Repositories**: CRUD operations for all entities
- **Utilities**: Cone converter, unit conversions, UUID, date formatting
- **Analytics**: Privacy-first abstraction (no-op if opt-out)
- **Theme**: Design tokens (colors, spacing, typography)
## US-Specific Design
### Units
- Default: Fahrenheit (°F), Imperial (lb/in)
- Toggle: Celsius (°C), Metric (kg/cm)
### Cone System
- Orton cone numbers standard in US ceramics
- Support common cones: 022, 021, 020...06, 05, 04...1, 2...6...10, 11, 12, 13, 14
- Auto-suggest temperatures per cone chart
### Copy
- US-English spelling and terminology
- Friendly maker vibe, instructive tone
- Example: "Cone", "Kiln Notes", "Coats", "Bisque Firing"
## Accessibility (ADA Compliance)
- **VoiceOver/TalkBack**: All controls labeled
- **Dynamic Type**: Text scales with system settings
- **Contrast**: WCAG AA compliant
- **Tap Targets**: Minimum 44×44 pt
- **Focus Order**: Logical navigation
## Privacy & Compliance
### CCPA
- No personal data collected by default
- Analytics opt-in (anonymous usage events only)
- Data export available
- No data selling or sharing
### COPPA
- Age rating: 4+ (content)
- Not directed at children under 13
- No PII collection
### App Tracking Transparency (iOS)
- Not required (no third-party tracking unless user opts in)
## Success Metrics (First 60-90 Days)
| Metric | Target |
|--------|--------|
| A1 Activation | ≥60% create ≥1 project with ≥1 photo in 24h |
| R7 Retention | ≥30% return in week 1 |
| Feature Adoption | ≥50% of projects have glaze + cone/temp |
| Crash-Free Sessions | ≥99.5% |
## Out of Scope (v1.0)
❌ Social features (likes, comments, sharing)
❌ Multi-device sync / accounts
❌ Recipe calculators
❌ Kiln controller integrations
❌ E-commerce / marketplace
## Roadmap
### v1.1 (Post-Launch)
- Project export (Markdown + ZIP)
- Search/filter by cone/glaze/tag
- Simple reminders
- iCloud/Google Drive backup
### v1.2 (Future)
- PDF one-pager export
- Duplicate project as template
- Expanded glaze catalog (crowdsourced)
## Store Metadata (US)
**Title**: "Pottery Diary Cone & Glaze Log"
**Subtitle**: "Track bisque & glaze firings with photos"
**Keywords**: pottery, ceramics, glaze, cone 6, kiln, bisque, studio, clay
**Category**: Lifestyle (alt: Productivity)
**Age Rating**: 4+
**Price**: Free
## References
- Full PRD: See original document with detailed user stories, flows, and acceptance criteria
- Orton Cone Chart: Based on self-supporting cone end-point temperatures
- Glaze Data: Manufacturer specifications
---
**Document Version**: 1.0
**Last Updated**: 2025-01-15
**Author**: Product Team