A modular, minimalistic personal & collaborative life management app
A single app that consolidates fragmented daily tools (notes, expenses, recipes, media tracking, photo sharing) into one cohesive experience. Users create Spaces - customizable modules that can be personal or shared with groups.
A Space is a customizable container for a specific purpose. Instead of hardcoded features, users create Spaces from templates:
| Template | Description |
|---|---|
| Recipe Book | Store recipes with smart ingredient scaling, media attachments |
| Expense Tracker | Track spending by category, trip, or event |
| Photo Album | Shared photo collections with comments |
| Media Tracker | Track movies, series, books with progress & ratings |
| Notes | Simple markdown notes or checklists |
| Custom | Build your own with available field types |
Every Space can be:
- Private - Only you
- Shared - Invite specific people (view or edit permissions)
- Group - Belongs to a Group, all members have access
Groups are collections of people (like Telegram/WhatsApp groups):
- Create a group, invite members
- Attach Spaces to groups
- Group chat for coordination
- Role-based permissions (admin, editor, viewer)
- Email/password login
- Google Sign-In
- Apple Sign-In (iOS)
- Password reset flow
- Profile management (avatar, display name)
- Bottom navigation with dynamic Space tabs
- Space creation wizard
- Space settings (rename, archive, delete)
- Reorder Spaces via drag-and-drop
- Offline-first with local SQLite/Hive cache
- Supabase real-time sync
- Conflict resolution for collaborative edits
- Optimistic UI updates
- Recipe card: title, description, prep time, cook time, servings
- Ingredients list with quantities and units
- Smart scaling: adjust servings, auto-recalculate quantities
- Step-by-step instructions
- Media attachments:
- Photos (multiple per recipe)
- Video links (YouTube, Vimeo) with in-app playback
- Uploaded video clips
- Categories/tags for organization
- Search and filter
- Favorites
- Shopping list generation from selected recipes
- Expense entry: amount, category, date, notes, receipt photo
- Trip/Event mode: group expenses under a context (e.g., "Italy Trip 2025")
- Budget setting per category or trip
- Visual reports: pie charts, bar graphs, trends
- Currency support with conversion
- Split expenses (for shared Spaces)
- Export to CSV/PDF
- Create albums within the Space
- Upload photos with compression options
- Captions and comments per photo
- Slideshow view
- Download originals
- Timeline view
- Track: Movies, TV Series, Books, Games, Podcasts
- Status: Want to watch/read, In progress, Completed, Dropped
- Rating (1-10 or 5 stars)
- Notes/review
- Progress tracking (episode X of Y, page X of Y)
- Integration with external APIs (TMDB, OpenLibrary) for metadata
- Recommendations based on history (future)
- Markdown support
- Checklists with completion tracking
- Pin important notes
- Search within notes
- Tags
- Select field types:
- Text (short, long)
- Number (integer, decimal, currency)
- Date / DateTime
- Checkbox / Toggle
- Dropdown (predefined options)
- Rating
- Media (photo, video, link)
- Location
- Define card layout
- Set required vs optional fields
- Choose list vs grid view
- Create group with name and avatar
- Invite via link or username search
- Member management (remove, change role)
- Roles: Owner, Admin, Member
- Leave group
- Share personal Space with specific users
- Permission levels: View only, Can edit, Can manage
- Activity log (who changed what, when)
- Transfer ownership
- Live updates when collaborators make changes
- Presence indicators (who's viewing/editing)
- Typing indicators in chat
- Group chat per Group
- Optional chat per Space
- Message types: text, photo, voice note
- Reply and reactions
- Push notifications
- Add friends by username or phone number
- Friend requests with accept/decline
- Direct messaging (1:1 chat)
- See friends' public Spaces (if they share)
- Quick share to friend
- Publish a Space as public (e.g., share your recipe book)
- Browse community Spaces
- Clone public Space to your account
- Like and comment
- Push notifications for:
- New messages
- Space updates (when shared)
- Friend requests
- Reminders (if set)
- In-app notification center
- Notification preferences per Space
- Global search across all Spaces
- Tags system
- Archive old Spaces
- Trash with 30-day recovery
- Theme: Light, Dark, System
- Accent color picker
- Language selection
- Data export (all your data as JSON/ZIP)
- Account deletion
- Skeleton loaders
- Pull-to-refresh
- Infinite scroll with pagination
- Image caching and lazy loading
- Haptic feedback
lib/
├── core/
│ ├── config/ # App configuration, environment
│ ├── theme/ # ThemeData, colors, typography
│ ├── router/ # GoRouter navigation
│ └── utils/ # Helpers, extensions
├── data/
│ ├── models/ # Data classes (User, Space, Recipe, etc.)
│ ├── repositories/ # Data access layer
│ ├── providers/ # Supabase, local storage providers
│ └── services/ # Business logic services
├── features/
│ ├── auth/
│ ├── spaces/
│ ├── recipes/
│ ├── expenses/
│ ├── photos/
│ ├── media_tracker/
│ ├── groups/
│ ├── chat/
│ └── settings/
└── shared/
├── widgets/ # Reusable UI components
└── layouts/ # Common screen layouts
-- Users (extends Supabase auth.users)
profiles
- id (uuid, FK to auth.users)
- username (unique)
- display_name
- avatar_url
- created_at
-- Spaces
spaces
- id (uuid)
- owner_id (uuid, FK to profiles)
- type (enum: recipe, expense, photo, media, notes, custom)
- name
- icon
- config (jsonb - template-specific settings)
- is_archived
- created_at
- updated_at
-- Space content varies by type, stored in dedicated tables
recipes, expenses, photos, media_items, notes
-- Collaboration
groups
- id
- name
- avatar_url
- created_by
- created_at
group_members
- group_id
- user_id
- role (owner, admin, member)
- joined_at
space_shares
- space_id
- shared_with_user_id (nullable)
- shared_with_group_id (nullable)
- permission (view, edit, manage)
-- Messaging
messages
- id
- conversation_id
- sender_id
- content
- message_type
- created_at
conversations
- id
- type (direct, group, space)
- reference_id (group_id or space_id if applicable)- Row Level Security (RLS) on all tables
- Users can only access their own data or shared content
- Real-time subscriptions respect RLS
avatars- Profile picturesspace-media- Photos, videos, receipts- Public/private access based on Space sharing settings
- Minimalist UI: Clean, uncluttered. Content first.
- Progressive disclosure: Show basics, reveal advanced on demand.
- Offline-capable: Core features work without internet.
- Fast: Optimistic updates, lazy loading, efficient queries.
- Accessible: Support screen readers, dynamic text sizes.
- Auth (email + Google)
- Create/manage personal Spaces
- Recipe Book template (full features)
- Basic offline support
- Expense Tracker template
- Media Tracker template
- Improved search
- Groups
- Space sharing
- Real-time sync
- Group chat
- Direct messages
- Push notifications
- Custom Space builder
- Themes
- Public Spaces
- Monetization: Free with limits? Premium subscription? What features are premium?
- Data limits: Max photos per album? Max Spaces per user?
- Moderation: How to handle public Spaces? Report system?
- Integrations: Calendar sync? Import from other apps?
Last updated: January 2026