Files
2026-06-29 01:59:27 -04:00

48 lines
1.5 KiB
Markdown

# Hotdog
A Silicon Valley-inspired app that uses your iPhone camera to detect whether you're looking at a hot dog.
Built with **Expo SDK 56**, `expo-camera`, and on-device image classification. No server required.
## How it works
1. The camera shows a live preview.
2. Tap the shutter to capture a frame.
3. iOS uses the native vision classifier first, then falls back to MobileNet if needed.
4. MobileNet checks ImageNet labels on-device and applies a confidence/margin threshold.
5. The app shows **Hot dog** or **Not hot dog**, saves the scan to a local gallery, and can export a shareable image.
## Run on iOS
```bash
npm install
npx expo run:ios --device
```
Or start the dev server and scan the QR code with Expo Go on a physical iPhone (camera + ML require a real device):
```bash
npm start
```
> **Note:** Use a physical iOS device. The simulator has no camera, and ML inference works best on hardware.
## Permissions
The app requests camera access on first launch. Photo permissions are used for importing images and saving share cards. iOS permission text is configured in `app.json`.
## Release
This project uses local Xcode/App Store Connect tooling rather than EAS. See [docs/release-ios.md](docs/release-ios.md).
## Tech stack
- Expo SDK 56
- expo-camera
- expo-image-picker + expo-media-library
- expo-blur + expo-glass-effect
- @tensorflow/tfjs + @tensorflow/tfjs-react-native
- @tensorflow-models/mobilenet (ImageNet)
- @dariyd/react-native-image-description
- react-native-fs (required peer of tfjs-react-native)