pottery-diary/QUICKSTART.md

153 lines
3.3 KiB
Markdown

# Quick Start Guide - Pottery Diary
## 🚀 Get Running in 2 Minutes
### Step 1: Start the Development Server
```bash
cd pottery-diary
npm start
```
Wait for QR code to appear in terminal.
### Step 2: Run on Simulator/Emulator
**iOS (Mac only)**:
```bash
# In another terminal
npm run ios
```
**Android**:
```bash
# Make sure Android emulator is running, then:
npm run android
```
**Physical Device**:
1. Install "Expo Go" app from App Store / Play Store
2. Scan the QR code from the terminal
### Step 3: Test the App
1. **Onboarding**: Swipe through 3 welcome screens, tap "Get Started"
2. **Create Project**:
- Tap "New Project"
- Enter title: "Test Bowl"
- Add tags: "bowl, cone 6"
- Tap "Create Project"
3. **Add Bisque Step**:
- Tap "Add Step"
- Select "Bisque Firing"
- Enter Cone: "04" (temp auto-fills to 1945°F)
- Add notes: "Slow ramp"
- Tap "Save Step"
4. **Add Glaze Step**:
- Tap "Add Step"
- Select "Glazing"
- Enter 2 coats
- Tap "Save Step"
5. **Add Glaze Firing Step**:
- Tap "Add Step"
- Select "Glaze Firing"
- Enter Cone: "6" (temp auto-fills to 2232°F)
- Tap "Save Step"
6. **View Timeline**: See all steps in order
7. **Test Settings**:
- Go to Settings tab
- Toggle Temperature Unit to °C
- Go back to project
- Verify temps converted (1945°F → 1063°C, 2232°F → 1222°C)
## ✅ Expected Behavior
- Projects list shows "Test Bowl" with "In Progress" status
- Project detail shows 3 steps with icons (🔥, 🎨, ⚡)
- Cone numbers auto-fill temperatures
- Unit conversions work instantly
- All data persists after app restart
## 🧪 Run Tests
```bash
npm test
```
Expected output: **All tests pass** (11 tests across 3 suites)
## 📱 Test on Physical Device
### Option 1: Expo Go (Quick)
1. Install Expo Go app
2. Scan QR code from `npm start`
3. App loads in Expo Go container
### Option 2: Development Build (Full Features)
```bash
npm install -g eas-cli
eas login
eas build --profile development --platform ios
# or
eas build --profile development --platform android
```
## 🐛 Troubleshooting
### "Cannot find module 'expo-sqlite'"
```bash
npx expo install expo-sqlite
npm start --clear
```
### "Metro bundler error"
```bash
npm start --clear
```
### TypeScript errors
```bash
npx tsc --noEmit
```
### Tests failing
```bash
npm test -- --clearCache
npm test
```
### Database not seeding
- Delete app from simulator/device
- Reinstall (database auto-seeds on first launch)
## 🎬 Next Steps
1. ✅ Verify app runs and tests pass
2. 📸 Add photo capture UI (expo-camera already configured)
3. 🔍 Build glaze picker screen
4. 📤 Implement data export
5. 🌐 Add news feed JSON fetching
6. 🎨 Design app icon
7. 📱 Build with EAS (`eas build --platform all`)
8. 🚀 Submit to App Store / Play Store
## 📚 Documentation
- **README.md**: Full setup and features
- **PROJECT_SUMMARY.md**: Implementation details
- **BUILD_INSTRUCTIONS.md**: Deployment guide
- **docs/PRD.md**: Product requirements
- **SECURITY.md**: Privacy and security
- **PRIVACY.md**: CCPA compliance
## 🆘 Need Help?
1. Check terminal for errors
2. Run `npm start --clear` to clear cache
3. Delete app and reinstall
4. Check `node_modules` folder exists (run `npm install` if not)
5. Verify Node.js 18+ is installed (`node --version`)
---
**Ready?** Run `npm start` and start building! 🏺