This app is designed to help users manage their goals effectively by creating milestones, organizing tasks into workspaces, and tracking progress with a beautifully crafted user interface. It employs robust architecture and advanced Swift development practices to deliver an exceptional experience.
- Goal and Milestone Management: Create, edit, and track goals with associated milestones.
- Workspaces: Organize tasks and goals into dedicated workspaces.
- Custom Animations: Smooth, visually appealing animations enhance the user experience.
- Charts: Interactive visualizations to track progress.
- Notifications: Integration with
UNUserNotifications
for reminders and alerts. - Photo Library Usage: Add images to tasks or goals for better visualization.
- Custom Illustrations: Unique illustrations and button designs for a modern look.
- Introductory Views: Onboarding screens to guide new users.
- Error Handling: Comprehensive error management using async/await,
throws
, and completion handlers.
- Architecture: Clean Architecture + SOLID Principles + MVVM
- Repositories: Handle data access and management.
- Use Cases: Encapsulate business logic.
- View Models: Manage the state and provide data for SwiftUI views.
- Managers: Handle specific tasks (e.g., network, data, or notifications).
- SwiftUI with UIKit: Main UI built with SwiftUI, with selective use of UIKit for advanced customizations.
- Core Data: Persistent storage for goals, milestones, and user data.
- Dependency Injection (DI): Applied via DI containers using the factory paradigm and
Actor
for thread-safe operations. - Custom Reusable Components: Modular and reusable UI elements for consistency and maintainability.
- Concurrency: Extensive use of
async/await
,withCheckedContinuation
, and multithreading for optimal performance.
- Error Handling: User-friendly error messages using custom
LocalizedError
conformances. - Testing: Includes unit tests with
XCTest
to ensure reliability. - Analytics: Integrated analytics for user activity and app usage.
- Design: Focus on modern and clean design principles, adhering to Apple’s HIG guidelines.
- Clone the repository:
git clone https://github.com/ldevdantesl/AimIt.git
- Open the project in Xcode:
cd AimIt open AimIt.xcodeproj
- Install dependencies (if applicable, e.g., CocoaPods or Swift Package Manager).
pod install
- Run the app:
- Select the appropriate simulator/device.
- Press
Cmd + R
or click Run in Xcode.
- Xcode: Version 14.0+
- iOS: Version 15.0+
Contributions are welcome! Feel free to fork the repo and submit a pull request. Please ensure all changes adhere to the app's architecture and coding standards.
This project is licensed under the MIT License. See the LICENSE
file for details.
For any inquiries or feedback, please contact:
- Email: ldevdantesl@gmail.com
- GitHub: ldevdantesl