β οΈ WORK IN PROGRESS: This project is currently under active development and is not yet ready for production use.π§ͺ LEARNING PROJECT: This is a testing/learning project built to explore The Composable Architecture (TCA) and modern iOS development practices.
Dear Diary is an iOS application that serves as your personal AI-powered diary companion. Built with SwiftUI and The Composable Architecture (TCA).
Trying to decide how to integrate SwiftData with TCA
- π€ AI-powered diary companion
- π Multiple authentication methods:
- Email/Password
- Google Sign-In
- Apple Sign-In
- π Personalized diary interactions
- π¨ Clean and modern UI design
- ποΈ Snapshot Testing
Install external 3rd-party dependencies with Tuist and cache them. Allows for quicker build times. (~50s to ~8s for initial builds)
tuist install
...
tuist cache- SwiftUI
- SwiftData
- The Composable Architecture (TCA) 1.15.2
- Firebase Authentication
- Google Sign-In
- Apple Sign-In
- Tuist (Project Generation)
Moya (Networking)Lighter dependency
DearDiary/
βββ Projects/
β βββ App/ # Main application target
β βββ Features/ # Feature modules
β βββ DesignSystem/ # UI components and assets
β βββ Utility/ # Shared utilities
β βββ ExternalDependencies/ # Third-party dependencies
βββ Tuist/ # Tuist configuration and plugins
The project follows a modular architecture using Tuist for project generation and dependency management. It's built using The Composable Architecture (TCA) for state management and follows a feature-first organization approach.
- App: Main application target and entry point
- Features: Contains feature modules
- InternalDependencies: Infrastructure management
- DesignSystem: Shared UI components and styling
- ExternalDependencies: Third-party dependency management
- Utility: Shared utilities and helpers