TimeSphere
A context-aware task manager that surfaces what you can realistically do right now.
Most task managers show the entire backlog regardless of whether a task is currently practical. TimeSphere takes a context-aware approach. It uses signals such as the active routine, time, energy level, location, Wi-Fi environment, device availability, and manual overrides to determine which tasks are relevant right now.
Instead of only asking:
What do I need to do?
TimeSphere also asks:
What can I realistically do in my current situation?
The goal is to reduce list fatigue, unnecessary decisions, and the friction of repeatedly reorganising tasks.
Features
- Right Now task feed: Filters the task backlog and surfaces tasks that match the user's current context.
- Routine-based context resolution: Users can create weekday routines made of time blocks. Each block can define one or more active contexts, start and end times, expected energy level, and whether the routine is enabled.
- Manual context override: Users can temporarily override the automatically resolved context when their real situation differs from their routine.
- Energy-aware recommendations: Tasks may require a particular energy level, helping the application avoid recommending demanding work at unsuitable times.
- Location and Wi-Fi context: The Android native layer can expose device-level context to the React Native application, including information useful for detecting the user's current environment.
- Device-aware tasks: Tasks can be associated with device-related contexts so they appear only when the required device or environment is available.
- Local-first persistence: Tasks, routines, and current-context preferences are stored locally, keeping the application responsive and usable without a remote backend.
- Native Android integration: TimeSphere includes a custom Kotlin native module connected to React Native through code generation.
How it works
The application follows this flow:
- Load saved tasks, routines, and context preferences.
- Resolve the active routine block using the current weekday and time.
- Apply a manual override when one is active.
- Combine routine data with energy, device, location, and native context signals.
- Match tasks against the resolved context.
- Display only the tasks that are actionable in the current situation.
Tech stack
- Application: React Native 0.85
- Framework: Expo SDK 56
- Language: TypeScript
- Navigation: Expo Router
- Native Android: Kotlin
- Native bridge: React Native Codegen
- Styling: NativeWind and Tailwind CSS
- Animations: React Native Reanimated
- Date and time: Day.js
- Icons: Lucide React Native
- Persistence: Local application storage