arne-cl / timetagger

Tag your time, get the insight

Home Page:https://timetagger.app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CI

TimeTagger

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

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.

You can also see it in action at https://timetagger.app - you can also purchase an account for $2 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

# Latest release
pip install -U timetagger

# Latest from Github
pip install https://github.com/almarklein/timetagger/archive/main.zip

License

This code is subject to the GPL-3.0 License.

Note that this code is used as part of a closed-source application at https://timetagger.app. If you make contributions to this project, you also provide me the right to use these contributions as such. I'm not sure how well this holds legally, to be honest. Therefore, I'd be reluctant to accept larger contributions.

Developers

Additional developer dependencies:

pip install black flake8 pytest requests
  • black . to autoformat.
  • flake8 . to check for linting errors.
  • pytest . to run the unit tests.

API

TODO

About

Tag your time, get the insight

https://timetagger.app

License:GNU General Public License v3.0


Languages

Language:Python 95.6%Language:CSS 4.0%Language:HTML 0.4%