Tasky
Introduction: Task manager similar to a lite version of Google Calendar
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
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.
- Image loading library for Compose.
Screen Flow
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
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 |