Tasky

Introduction: Task manager similar to a lite version of Google Calendar
More: Author   ReportBugs   
Tags:
https://user-images.githubusercontent.com/5157474/220800950-ddd04b3b-f1ae-4a48-b1d4-bd9f21f7ddeb.mp4 # Tasky Shared Task manager similar to a lite version of Google Calendar Over 120 Stars on Github! Full compose UI Manages schedule across time zones automatically Works offline & automatically syncs across multiple devices Invite other people to your events, and automatically sync changes. Alarms & Custom Notifications for Agenda Items coming due Manage multiple user accounts Internationalized for English, Spanish and German Automatically sync event changes to all people in an Event Add photos to Events Dark & Light mode Deep Link handling Custom Notification with images and functionality Visual Planner navigator Code Style focuses on maximum "new developer" comprehensibility Hits-of-Code Google Play Store Presence Mini Marketing Site

🛠 Built With

  • Kotlin - First class and official programming language for Android development.
  • Compose - Jetpack Compose is Android’s modern toolkit for building native UI.
  • Coroutines - A coroutine is a concurrency design pattern that you can use on Android to simplify code that executes asynchronously.
  • Flow - A flow is an asynchronous version of a Sequence, a type of collection whose values are lazily produced.
  • Proto DataStore - Jetpack DataStore is a data storage solution that allows you to store key-value pairs or typed objects with protocol buffers. DataStore uses Kotlin coroutines and Flow to store data asynchronously, consistently, and transactionally.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • Stateflow - StateFlow is a state-holder observable flow that emits the current and new state updates to its collectors.
    • Flow - A flow is an asynchronous version of a Sequence, a type of collection whose values are lazily produced.
    • ViewModel - Stores UI-related data that isn"t destroyed on UI changes.
    • Compose Destinations Navigation - Simplified and type-safe navigation for Compose.
    • DataStore - Jetpack DataStore is a data storage solution that allows you to store key-value pairs or typed objects with protocol buffers. DataStore uses Kotlin coroutines and Flow to store data asynchronously, consistently, and transactionally.
    • WorkManager - Schedule automatically repeating or guarantee one-time background processing.
    • Room Database - SQL-based database.
  • Material Components for Android
    • Modular and customizable Material Design UI components for Android.
  • Accompanist
    • A collection of extension libraries for Jetpack Compose.
  • Coil
    • Image loading library for Compose.

Screen Flow

image

Architecture Overview

Architecture Data Flow

Entity Relationship

Authentication Flow State Diagram

To simulate, click on the diagram.

Offline Cache Strategy State Diagram

To simulate, click on the diagram.

Network Endpoints

Full Diagram

imageimageimage

Version History

Date Version Notes
12/30/22 1.0 Initial Version - Meets Spec
02/22/23 1.1 Add Gantt View
9/5/23 1.1 Fix failing tests
Apps
About Me
GitHub: Trinea
Facebook: Dev Tools