Pominal is a Pomodoro application for the terminal written in Go.
Find a file
Dan Anglin 19eb9b20be
feat: support configuring Pominal with config file
This commit adds a feature to load Pominal
configuration from a JSON configuration file.

A new data type called PominalConfig was created for
the purpose of configuring Pominal.
A new factory function called newPominalConfig was
created which takes the path to the JSON configuration
file and the flag overrides and generates the new
PominalConfig value.

Here, the JSON config is parsed to create the initial
configuration and any flag overrides can override
the corresponding fields in the PominalConfig object.
Currently only the sessions times and the maximum work
sessions per Pominal cycle have flag overrides.

Additionally users can now configure custom notification
messages for each session type from the configuration file.
There are currently no flag overrides for these.

This commit resolves dananglin/Pominal#1
2020-02-13 12:42:55 +00:00
assets/icon feat: added desktop notification integration 2019-08-16 09:20:56 +01:00
examples/config feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
testdata feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
.gitignore refactor: add a stop channel 2020-01-19 21:26:46 +00:00
.gitlab-ci.yml feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
.golangci.yml refactor: add lint test and refactor code. 2020-01-24 09:51:21 +00:00
.goreleaser.yml chore: add assets to archive on release 2019-08-16 20:25:32 +01:00
alert.go feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
CODEOWNERS feat: added Pominal 2019-05-30 22:19:53 +00:00
config.go feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
config_cases_test.go feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
config_test.go feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
const_test.go feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
go.mod feat: Basic UI for Pominal 2020-01-18 19:24:35 +00:00
go.sum feat: Basic UI for Pominal 2020-01-18 19:24:35 +00:00
LICENSE chore: updated Copyright 2020-02-11 16:27:47 +00:00
main.go feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
Makefile [skip ci] copy assets to bin build during build 2020-02-12 15:05:19 +00:00
pominal.go feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
pominal_cases_test.go feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
pominal_test.go feat: support configuring Pominal with config file 2020-02-13 12:42:55 +00:00
README.md feat: added desktop notification integration 2019-08-16 09:20:56 +01:00
ui.go chore: updated Copyright 2020-02-11 16:27:47 +00:00
version.go chore: updated Copyright 2020-02-11 16:27:47 +00:00

Pominal

Pominal is a Pomodoro application for the terminal. Pominal is written in Go.

Assets

Icon image from OpenClipart-Vectors from Pixabay