Need help with timetagger?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

almarklein
287 Stars 17 Forks GNU General Public License v3.0 200 Commits 7 Opened issues

Description

Tag your time, get the insight

Services available

!
?

Need anything else?

Contributors list

# 7,194
webasse...
html5
Flask
jupyter
198 commits
# 173,674
Shell
C
Atom
memoiza...
1 commit
# 258,206
CSS
HTML
iOS
framewo...
1 commit

CI Documentation Status PyPI version

TimeTagger

Tag your time, get the insight - an open source time tracker with a focus on a simple and interactive user experience.

  • Website: https://timetagger.app
  • Docs: https://timetagger.readthedocs.io
  • CLI tool: https://github.com/almarklein/timetagger_cli

Introduction

TimeTagger is a web-based time-tracking solution that can be run locally or on a server. In the latter case, you'll want to add authentication, and also be aware of the license restrictions.

The server runs on async Python using uvicorn and asgineer - which is fun and bloody fast. It uses SQLite via itemdb to store the data, making it easy to deploy.

The client is a mix of HTML, CSS, Markdown, and ... Python! PScript is used to compile the Python to JavaScript. This may be a bit idiosyncratic, but it's fun! Maybe I'll someday implement it in something that compiles down to Wasm :)

Usage example

This repo is organized as a library, making it quite flexible to apply tweaks. See

run.py
for an example of how to run it as a web app. See the docs for more info.

You can also see it in action at https://timetagger.app - you can purchase an account for €3 per month so you don't have to worry about maintaining a server, backups, and all that. Plus you'd sponsor this project and open source in general.

Installation

TimeTagger is a Python library and requires Python 3.6 or higher. The dependencies are listed in

requirements.txt
- these are installed automatically when you install TimeTagger with Pip.
# Latest release
pip install -U timetagger

Latest from Github

pip install -U https://github.com/almarklein/timetagger/archive/main.zip

Uninstall

pip uninstall timetagger

After installation, copy and execute

python run.py
to get started.

License

This code is subject to the GPL-3.0 License. Contributors must agree to the Contributor License Agreement to grant the right to use contributions at e.g. the TimeTagger.app service.

Developers

Additional developer dependencies:

pip install invoke black flake8 pytest requests
  • invoke -l
    to see available invoke tasks
  • invoke clean
    to remove temporary files
  • invoke format
    to autoformat the code (using black)
  • invoke lint
    to detect linting errors (using flake8)
  • invoke tests
    to run tests (using pytest)

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.