Inspiration
Study timer apps like Forest and Yeolpumta (YPT) track hours but never verify if students are actually focused. A student can run a timer for hours while scrolling Instagram. We wanted to build something that measures real cognitive engagement, not just time spent sitting.
What it does
Lock In is a macOS-native study app that combines AI-powered focus verification with campus building competition.
Core Loop:
Open the app → Start a study session → AI monitors focus via webcam and screen → Earn a Session Score → Contribute to building territory → Become Building King → Weekly reset
Key Features:
- AI Focus Verification -- Webcam tracks gaze, posture, and blink patterns. Screen activity is analyzed using Meta’s TRIBEv2 model to estimate cognitive engagement.
- Session Score -- Focus (80%) + Duration (20%). No fake hours, only real concentration counts.
- Campus Territory -- Buildings are divided into a hex grid where students compete for control in real time.
- Building King -- Top scorer per building earns the title. Resets weekly.
- Brain Activity Report -- Post-session insights on cognitive engagement and personalized study tips.
- World ID Authentication -- Ensures 1 person = 1 account. Prevents bots and multi-account abuse while preserving anonymity.
- Admin Dashboard (B2B) -- Universities receive anonymized insights into study behavior, space usage, and focus trends.
How we built it
- Frontend: Swift / SwiftUI (macOS), Apple MapKit, Canvas-based hex grid visualization
- Backend: FastAPI + SQLite, JWT authentication
- AI/ML: TRIBEv2 (brain activation prediction), TensorFlow.js Face Mesh (gaze tracking), ScreenCaptureKit
- Auth: World ID (IDKit integration)
- Data: OpenStreetMap Overpass API for real campus building data
Challenges we ran into
- Mapbox SDK does not support macOS → pivoted to Apple MapKit
- macOS App Sandbox blocked localhost connections → required entitlement configuration
- Swift Charts conflicts with MapKit → resolved by isolating chart logic
- Race conditions in session API calls → fixed with async flow control
- Git merge conflicts across frontend/backend development
- Integrating World ID into a macOS environment
Accomplishments that we're proud of
- Real-time hex grid territory system with dynamic updates
- Integration of Meta’s TRIBEv2 model (released just one week ago)
- Full pipeline: World ID → session → AI scoring → territory update → analytics
- B2B dashboard designed based on real university needs
- Authentic campus mapping using OpenStreetMap data
- Ensured both real-user verification and data reliability while maintaining user anonymity
- Real-time WebSocket updates for territory changes
What we learned
- Measuring real focus is significantly harder than tracking time
- macOS development has stricter sandbox and networking constraints than expected
- Combining multiple AI signals (vision + screen activity) improves reliability
- Gamification dramatically increases motivation compared to passive tracking
What's next for Lock In
- MiniKit integration for World App deployment
- World Chain for verifiable academic achievements
- iOS companion app
- Pilot program with Purdue University
- Introduce competitive challenges and optional reward-based (e.g., stake-based) study modes
Built With
Swift, SwiftUI, FastAPI, SQLite, Python, TRIBEv2, TensorFlow.js, World ID, Apple MapKit, OpenStreetMap, ScreenCaptureKit, AVFoundation
Built With
- appkit
- avfoundation
- fastapi
- lstm
- mapkit
- mediapipe
- pydantic
- python
- pytorch
- screencapturekit
- sqlalchemy
- sqlite
- swift
- swiftui
- tribev2
- uvicorn
- world-id
Log in or sign up for Devpost to join the conversation.