Initial import
This commit is contained in:
commit
bf340e6130
2 changed files with 83 additions and 0 deletions
48
Makefile
Normal file
48
Makefile
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
|
||||||
|
GOFILES=$(wildcard *.go)
|
||||||
|
NAME=musala-push
|
||||||
|
MJML_TEMPLATES=$(wildcard templates/*.mjml)
|
||||||
|
MJML_OUTPUT=$(patsubst %.mjml,%.mjml.html,$(MJML_TEMPLATES))
|
||||||
|
|
||||||
|
all: build
|
||||||
|
|
||||||
|
%.mjml.html: %.mjml
|
||||||
|
npx mjml $< --config.minify > $@
|
||||||
|
|
||||||
|
|
||||||
|
.PHONY: build build-binaries build-templates
|
||||||
|
build: build-binaries build-templates ## build executable
|
||||||
|
|
||||||
|
build-binaries: build-templates
|
||||||
|
go build ./...
|
||||||
|
|
||||||
|
build-templates: $(MJML_OUTPUT)
|
||||||
|
|
||||||
|
install: ## install binaries
|
||||||
|
go install ./...
|
||||||
|
|
||||||
|
.PHONY: shellcheck
|
||||||
|
shellcheck: ## run shellcheck validation
|
||||||
|
scripts/validate/shellcheck
|
||||||
|
|
||||||
|
.PHONY: help
|
||||||
|
help: ## print this help
|
||||||
|
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {sub("\\\\n",sprintf("\n%22c"," "), $$2);printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
|
||||||
|
|
||||||
|
.PHONY: clean clean-templates clean-binaries
|
||||||
|
clean: clean-templates clean-binaries ## remove build artifacts
|
||||||
|
|
||||||
|
clean-templates:
|
||||||
|
rm -f ./templates/*.mjml.html
|
||||||
|
|
||||||
|
clean-binaries:
|
||||||
|
rm -rf ./_build/*
|
||||||
|
|
||||||
|
test: build
|
||||||
|
./test.sh
|
||||||
|
|
||||||
|
npm:
|
||||||
|
npm install
|
||||||
|
|
||||||
|
|
||||||
|
|
35
README.md
Normal file
35
README.md
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
# Kiwimix (calendar mixer)
|
||||||
|
|
||||||
|
Swiss knife for calendars
|
||||||
|
|
||||||
|
|
||||||
|
## Roadmap
|
||||||
|
|
||||||
|
Access to calendar (with credentials)
|
||||||
|
|
||||||
|
* :x: with hardcoded data :wink:
|
||||||
|
* :x: with data from config file with multiple calendars
|
||||||
|
|
||||||
|
Download calendar events locally
|
||||||
|
|
||||||
|
* :x: choose source calendar
|
||||||
|
* :x: as separate files ?
|
||||||
|
* :x: as an in-memory database ?
|
||||||
|
|
||||||
|
Upload calendar events remotely
|
||||||
|
|
||||||
|
* :x: choose target calendar
|
||||||
|
|
||||||
|
Merge events
|
||||||
|
|
||||||
|
* :x: merge overlapping events
|
||||||
|
* :x: keep (internal) reference to source-calendars/parent-events
|
||||||
|
* :x: anonymize events
|
||||||
|
|
||||||
|
Web I
|
||||||
|
|
||||||
|
* :x: split into library + CLI util
|
||||||
|
* :x: write an API for the lib
|
||||||
|
* :x: add a web frontend
|
||||||
|
* :x: add user management & multi-account
|
||||||
|
|
Loading…
Reference in a new issue