An educational iOS app designed for kids to explore and learn through interactive PDF reading, freeform drawing, and real-time object recognition using CoreML and Wikipedia. This app is built in SwiftUI and leverages powerful frameworks to provide a rich, accessible learning environment.
- Full PDF Rendering: Smooth page swiping and zooming via
PDFKit. - Search & Highlight: Instant text search with highlighted matches.
- Thumbnail Navigation: Quick jump to specific pages with a scrollable thumbnail bar.
✏️ Freeform Drawing (Based On GetStream Drawing)
- PencilKit Canvas: UIKit-backed drawing view wrapped in SwiftUI.
- Multiple Tools: Select pen, marker, highlighter, and eraser tools.
- Color Palette: Choose from a vibrant set of colors.
- Undo/Redo Stack: Reverse or reapply strokes.
- Save & Share: Export drawings to the Photo Library or share via standard iOS share sheet.
- Live Camera Feed: High-performance preview using
AVFoundationandAVCaptureVideoPreviewLayer. - CoreML Detection: Real-time object classification using:
- FastViTT8F16 on iOS 17.0 and above for improved accuracy and performance.
- MobileNetV2FP16 on iOS 15.0–16.x devices for broad compatibility.
- Wiki Integration: Upon detection, fetch a summary from Wikipedia's REST API and display alongside the camera view.
- Tap the 🔍 icon in the top toolbar of the PDF Viewer.
- Enter a keyword; matching text is highlighted in yellow.
- Navigate between results with the next/previous arrows.
- Select a tool from the bottom toolbar (pen, marker, eraser).
- Choose a color or thickness slider.
- Draw with your finger or Apple Pencil.
- Use ↩️ / ↪️ buttons to undo/redo strokes.
- Go to the Camera tab.
- Point the camera at an object.
- Wait for the classification label to appear.
- Tap Learn More to view a Wikipedia summary.
- PDFKit: Native PDF rendering and annotation support.
- PencilKit: iOS drawing framework for rich sketching experiences.
- AVFoundation: Camera capture and preview layering.
- CoreML & Vision: On-device inference for object classification.
- Combine: Asynchronous data streams.
- Kingfisher: Image caching and async loading.
- Shimmer-SwiftUI-Modifier: Loading placeholders with shimmer effect.
Distributed under the Apache License, Version 2.0. See the LICENSE file for details.
|
|
|
|
|
|





