Simple project to assist in tracking/logging my working hours

Overview

Fill working hours

Basic script to assist in the logging/tracking of my working hours

How it works

Create a file called projects.json in this directory, detailing project codes with the total hours you're allocating to that project. See the example file for format.

Then just run the script from this directory. The script sequentially fills days with project times until all hours are spent, and outputs the result.

Example

## projects.json
{
    "project-a": 57.0,
    "project-b": 43.2
}

python main.py

## output
╒═══════╤═════════════════╤═══════════════╕
│   Day │ Allocations     │   Total Hours │
╞═══════╪═════════════════╪═══════════════╡
│ 0     │ project-a: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 1     │ project-a: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 2     │ project-a: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 3     │ project-a: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 4     │ project-a: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 5     │ project-a: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 6     │ project-a: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 7     │ project-a: 5.20 │           7.4 │
│       │ project-b: 2.20 │               │
├───────┼─────────────────┼───────────────┤
│ 8     │ project-b: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 9     │ project-b: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 10    │ project-b: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 11    │ project-b: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 12    │ project-b: 7.40 │           7.4 │
├───────┼─────────────────┼───────────────┤
│ 13    │ project-b: 4.00 │           4   │
╘═══════╧═════════════════╧═══════════════╛

Notes

7.4 hour day is hardcoded.

Requirements

Poetry is used to manage dependencies and virtual environments.

Owner
Robin Kennedy-Reid
Significant experience in C/C++, Python, and full-stack programming. Worked on commercial and academic software. Comfortable with Windows, Linux and CLIs.
Robin Kennedy-Reid
Scitizen - Help scientific research for the benefit of mankind and humanity 🔬

Scitizen - Help scientific research for the benefit of mankind and humanity 🔬 Scitizen has been built from the ground up to give everyone the possibi

Pierre CORBEL 21 Mar 08, 2022
This code extracts line width of phonons from specular energy density (SED) calculated with LAMMPS.

This code extracts line width of phonons from specular energy density (SED) calculated with LAMMPS.

Masato Ohnishi 3 Jun 15, 2022
Reso is a low-level circuit design language and simulator, inspired by things like Redstone, Conway's Game of Life, and Wireworld.

Reso Reso is a low-level circuit design language and simulator, inspired by things like Redstone, Conway's Game of Life, and Wireworld. What is Reso?

Lynn 287 Nov 26, 2022
Python Osmium Examples

Python Osmium Examples This is a set (currently of size 1) of examples showing practical usage of PyOsmium, a thin wrapper around the osmium library.

Martijn van Exel 1 Jan 26, 2022
Data Structures and Algorithms Python - Practice data structures and algorithms in python with few small projects

Data Structures and Algorithms All the essential resources and template code nee

Hesham 13 Dec 01, 2022
A simple 3D rigid body simulation written in python

pyRigidBody3d A simple 3D rigid body simulation written in python

30 Oct 07, 2022
Mdisk - 🚧 On Construction 🚧

Mdisk Install For Package pip install mdisk pip install git+https://github.com/HeimanPictures/Mdisk.git Usage You can use this as python module or via

AkKiL 6 Aug 08, 2022
VCM EE1.2 P-layer feature map anchor generation 137th MPEG-VCM

VCM EE1.2 P-layer feature map anchor generation 137th MPEG-VCM

IPSL 6 Oct 18, 2022
Airbrake Python

airbrake-python Note. Python 3.4+ are advised to use new Airbrake Python notifier which supports async API and code hunks. Python 2.7 users should con

Airbrake 51 Dec 22, 2022
Simple Python-based web application to allow UGM students to fill their QR presence list without having another device in hand.

Praesentia Praesentia is a simple Python-based web application to allow UGM students to fill their QR presence list without having another device in h

loncat 20 Sep 29, 2022
Download and process GOES-16 and GOES-17 data from NOAA's archive on AWS using Python.

Download and display GOES-East and GOES-West data GOES-East and GOES-West satellite data are made available on Amazon Web Services through NOAA's Big

Brian Blaylock 88 Dec 16, 2022
A synchronous, single-threaded interface for starting processes on Linux

A synchronous, single-threaded interface for starting processes on Linux

Spencer Baugh 27 Jan 28, 2022
pythonOS: An operating system kernel made in python and assembly

pythonOS An operating system kernel made in python and assembly Wait what? It uses a custom compiler called snek that implements a part of python3.9 (

Abbix 69 Dec 23, 2022
Speed up your typing by some exercises in the multi-platform(Windows/Ubuntu).

Introduction This project purpose is speed up your typing by some exercises in the multi-platform(Windows/Ubuntu). Build Environment Software Environm

lyfer233 1 Mar 24, 2022
An kind of operating system portal to a variety of apps with pure python

pyos An kind of operating system portal to a variety of apps. Installation Run this on your terminal: git clone https://github.com/arjunj132/pyos.git

1 Jan 22, 2022
A play store search module

A play store search module

Fayas Noushad 5 Dec 01, 2021
Our Ping Pong Project of numerical analysis, 2nd year IC B2 INSA Toulouse

Ping Pong Project The objective of this project was to determine the moment of impact of the ball with the ground. To do this, we used different model

0 Jan 02, 2022
Notebooks for computing approximations to the prime counting function using Riemann's formula.

Notebooks for computing approximations to the prime counting function using Riemann's formula.

Tom White 2 Aug 02, 2022
Convert .1pux to .csv

1PasswordConverter Convert .1pux to .csv 1Password uses this new export format .1pux, I assume stands for 1 Password User eXport. As of right now, 1Pa

Shayne Hartford 7 Dec 16, 2022
The best free and open-source automated time tracker. Cross-platform, extensible, privacy-focused.

Records what you do so that you can know how you've spent your time. All in a secure way where you control the data. Website — Forum — Documentation —

ActivityWatch 7.8k Jan 09, 2023