Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dmolik/julius
A real simple caldav experiment using postgres as a backend
https://github.com/dmolik/julius
caldav caldav-server postgres
Last synced: about 14 hours ago
JSON representation
A real simple caldav experiment using postgres as a backend
- Host: GitHub
- URL: https://github.com/dmolik/julius
- Owner: dmolik
- Created: 2020-03-19T12:15:17.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-05-17T11:54:52.000Z (6 months ago)
- Last Synced: 2024-05-17T12:48:53.250Z (6 months ago)
- Topics: caldav, caldav-server, postgres
- Language: Go
- Homepage:
- Size: 260 KB
- Stars: 9
- Watchers: 3
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Julius
A CalDav calendaring server implemented using [Go](https://golang.org), [github.com/samedi/caldav-go](https://github.com/samedi/caldav-go), and [Postgres](https://www.postgresql.org/) designed to be small and efficient.
## Building
To build Julius you will need Golang and a Make variant. Then, Simply run `make`.
### Dependencies
- [Golang](https://golang.org)
- [Make](https://www.gnu.org/software/make/)
- [Docker](https://www.docker.com)## Running
### Minikube (Kubernetes)
Start a local Kubernetes cluster using Minikube and then deploy Julius.
make minikube
make deploy
export USER=
export PASSWORD=
make seed
make tunnel # Optional, if you want to access Julius from your local machine, (route the load balancer to your local machine)### Docker Compose
Start the containers locally and then add users manually, just replace `USER` and `PASSWORD` with your desired values.
make up
docker exec -it julius-db-1 psql -U julius julius -c "INSERT INTO users (username, email, password) VALUES ('USER', '[email protected]', crypt('PASSWORD', gen_salt('bf', 12)));"
docker exec -it julius-db-1 psql -U julius julius -c "INSERT INTO collections (owner_id, name) VALUES (1, '/');"
docker exec -it julius-db-1 psql -U julius julius -c "INSERT INTO collection_roles (collection_id, user_id, permission) VALUES (1, 1, 'admin');"