Initial import

This commit is contained in:
Glenn Y. Rolland 2020-12-28 02:11:39 +01:00
commit bf340e6130
2 changed files with 83 additions and 0 deletions

48
Makefile Normal file
View 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
View 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