-
-
A visual overview of today.work’s daily reflection, history, and personalization features.
-
A simple onboarding experience introducing the app’s one-question daily ritual.
-
The main screen recognizes weekends and encourages users to take time to rest.
-
A monthly calendar showing work moods, missed records, and tracking statistics.
-
Settings for appearance, language, iCloud synchronization, and one-to-one pairing.
-
A private pairing feature for sharing today’s work mood with someone special.
Inspiration
Work often starts with a simple but surprisingly emotional question: “Do I want to go to work today?” We wanted to turn that feeling into a lightweight daily ritual that helps users acknowledge their mood without judgment. The pairing feature was inspired by the idea of sharing that small moment with someone close.
What it does
today.work lets users record whether they want to go to work each day. It recognizes workdays, weekends, public holidays, and compensatory workdays in China.
The app also provides:
- Historical calendar views and streak statistics
- Optional iCloud synchronization
- One-to-one mood pairing
- Home Screen and Lock Screen widgets
- Onboarding and Chinese/English language support
- Light and dark mode
How we built it
We built the app with SwiftUI and used a simple local data model for daily mood records. Shared App Group storage allows the main app and widgets to access the same data.
WidgetKit powers the Home Screen and Lock Screen widgets. Supabase provides the backend for pairing users and synchronizing partner mood updates. The interface uses SwiftUI’s reactive state management so changes are reflected immediately throughout the app.
Challenges We Ran Into
One challenge was handling Chinese holidays and compensatory workdays, which do not follow a simple weekday-based rule.
We also had to coordinate data between the main app, widgets, local storage, iCloud synchronization, and the pairing service. Supporting runtime language switching added another layer of complexity because both SwiftUI views and widgets needed to update consistently.
Accomplishments That We're Proud Of
We are proud that the app remains intentionally simple while still supporting meaningful features. A single daily choice can be viewed in a historical context, shared with a partner, or accessed directly from a widget.
We also created a calm interface that treats work-related emotions as something worth noticing rather than judging.
What We Learned
We learned that small products require careful attention to edge cases. Calendar logic, localization, state synchronization, and widget limitations all had a significant impact on the final experience.
We also learned how important it is to keep the core interaction focused. Every additional feature should support the daily reflection instead of distracting from it.
What's Next for today.work
Future plans include:
- More detailed mood options and personal notes
- Better cross-device synchronization
- Additional widget styles and customization
- Trend analysis over longer periods
- More regional holiday calendars
- Optional reminders and notification scheduling
Built With
- app-groups
- calendar
- combine
- dark-mode
- deep-links
- foundationdb
- icloud
- ios
- json
- localization
- mobile-app
- mood
- productivity
- rest-api
- supabase
- swift
- swiftui
- userdefaults
- widgetkit
- xcode
Log in or sign up for Devpost to join the conversation.