An open API service indexing awesome lists of open source software.

https://github.com/thehale/simpletimetracker-wearos

A fork of Simple Time Tracker with WearOS support. (Now integrated upstream)
https://github.com/thehale/simpletimetracker-wearos

productivity timetracking wearos wearoscompose

Last synced: 2 months ago
JSON representation

A fork of Simple Time Tracker with WearOS support. (Now integrated upstream)

Awesome Lists containing this project

README

          

# Simple Time Tracker

Simple app that helps track how much time you spend on all the useless activities in the world.

[Get it on F-Droid](https://f-droid.org/packages/com.razeeman.util.simpletimetracker/)
[Get it on Google Play](https://play.google.com/store/apps/details?id=com.razeeman.util.simpletimetracker)
[Get it on GitHub](https://github.com/Razeeman/Android-SimpleTimeTracker/releases/latest)

## Track different activities

[![main_thumb]][main]

## Add, change or delete activities

[![change_record_type_thumb]][change_record_type]
[![change_record_type_color_thumb]][change_record_type_color]
[![change_record_type_icon_thumb]][change_record_type_icon]

## View previous records

[![records_thumb]][records]

## Add, change or delete records

[![change_record_thumb]][change_record]
[![change_record_activity_thumb]][change_record_activity]

## Views statistics on different time ranges

[![statistics_thumb]][statistics]

## View detailed statistics

[![statistics_detail1_thumb]][statistics_detail1]
[![statistics_detail2_thumb]][statistics_detail2]

## Widgets

[![widgets_thumb]][widgets]
[![widget_universal_thumb]][widget_universal]

## Notifications

[![notifications_types_thumb]][notifications_types]
[![notifications_inactivity_thumb]][notifications_inactivity]

## Dark mode

[![darkmode1_thumb]][darkmode1]
[![darkmode2_thumb]][darkmode2]
[![darkmode3_thumb]][darkmode3]

## WearOS

[![wearos_demo]][wearos_demo]

## Technology stack
- Kotlin
- Multi module
- Single Activity
- MVVM (Jetpack ViewModel + LiveData)
- Jetpack Navigation
- Jetpack Compose (WearOS)
- Hilt
- Room, migrations
- Coroutines
- Widgets
- Notifications
- Custom Views (Pie Chart, Bar Chart, Color Selection, Calendar)
- Recycler, custom Adapter Delegates, DiffUtils with Payloads
- Drag and Drop, Gesture detection
- Gradle Kotlin DSL
- View Binding
- Database backup and restore, export to csv, automatic backup
- Dark mode
- Unit tests, UI tests
- CI with github actions
- Emojis with EmojiCompat

## Directory structure
.
├── .github # CI files.
├── app # Mobile app.
├── buildSrc # Deps and versions.
├── core # Shared classes, strings.
├── data_local # Database.
├── domain # Business logic.
├── navigation # Navigation interfaces and screen params.
├── wear # WearOS app.
├── wear_api # Mobile - WearOS communication
├── features
│ ├── feature_archive # Screen for archived data.
│ ├── feature_base_adapter # Shared recycler adapters.
│ ├── feature_categories # Screen for categories and tags.
│ ├── feature_change_activity_filter # Edit activity filter screen.
│ ├── feature_change_category # Edit category screen.
│ ├── feature_change_record # Edit record screen.
│ ├── feature_change_record_tag # Edit tag screen.
│ ├── feature_change_record_type # Edit type screen.
│ ├── feature_change_running_record # Edit timer screen.
│ ├── feature_date_edit # Data edit screen.
│ ├── feature_dialogs # Dialogs.
│ ├── feature_goals # Separate screen for goals.
│ ├── feature_main # Main screen with tabs.
│ ├── feature_notification # Notifications.
│ ├── feature_records # One of main tabs, records list.
│ ├── feature_records_all # Screen showing all records.
│ ├── feature_records_filter # Dialog for records filters.
│ ├── feature_running_records # One of main tabs, timers.
│ ├── feature_settings # One of main tabs, settings.
│ ├── feature_statistics # One of main tabs, statistics.
│ ├── feature_statistics_detail # Screen showing detailed statistics.
│ ├── feature_tag_selection # Screen for selecting tags.
│ ├── feature_views # Custom views.
│ └── feature_widget # Widgets.

## License

**Android App**

Copyright (C) 2020-2024 Anton Razinkov devrazeeman@gmail.com

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see .

**WearOS App**

Copyright (C) 2023-2024 Joseph Hale https://jhale.dev,
[@kantahrek](https://github.com/kantahrek), Anton Razinkov devrazeeman@gmail.com

This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at https://mozilla.org/MPL/2.0/.

[change_record_thumb]: dev_files/screens/change_record_thumb.png
[change_record]: dev_files/screens/change_record.png
[change_record_activity_thumb]: dev_files/screens/change_record_activity_thumb.png
[change_record_activity]: dev_files/screens/change_record_activity.png

[change_record_type_thumb]: dev_files/screens/change_record_type_thumb.png
[change_record_type]: dev_files/screens/change_record_type.png
[change_record_type_color_thumb]: dev_files/screens/change_record_type_color_thumb.png
[change_record_type_color]: dev_files/screens/change_record_type_color.png
[change_record_type_icon_thumb]: dev_files/screens/change_record_type_icon_thumb.png
[change_record_type_icon]: dev_files/screens/change_record_type_icon.png

[main_thumb]: dev_files/screens/main_thumb.png
[main]: dev_files/screens/main.png

[records_thumb]: dev_files/screens/records_thumb.png
[records]: dev_files/screens/records.png

[statistics_thumb]: dev_files/screens/statistics_thumb.png
[statistics]: dev_files/screens/statistics.png

[statistics_detail1_thumb]: dev_files/screens/statistics_detail1_thumb.png
[statistics_detail1]: dev_files/screens/statistics_detail1.png
[statistics_detail2_thumb]: dev_files/screens/statistics_detail2_thumb.png
[statistics_detail2]: dev_files/screens/statistics_detail2.png

[widgets_thumb]: dev_files/screens/widgets_thumb.png
[widgets]: dev_files/screens/widgets.png

[widget_universal_thumb]: dev_files/screens/widget_universal_thumb.png
[widget_universal]: dev_files/screens/widget_universal.png

[notifications_types_thumb]: dev_files/screens/notifications_types_thumb.png
[notifications_types]: dev_files/screens/notifications_types.png
[notifications_inactivity_thumb]: dev_files/screens/notifications_inactivity_thumb.png
[notifications_inactivity]: dev_files/screens/notifications_inactivity.png

[darkmode1_thumb]: dev_files/screens/darkmode1_thumb.png
[darkmode1]: dev_files/screens/darkmode1.png
[darkmode2_thumb]: dev_files/screens/darkmode2_thumb.png
[darkmode2]: dev_files/screens/darkmode2.png
[darkmode3_thumb]: dev_files/screens/darkmode3_thumb.png
[darkmode3]: dev_files/screens/darkmode3.png

[wearos_demo]: dev_files/wearos_demo.gif