https://github.com/nicklayb/caltar
https://github.com/nicklayb/caltar
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/nicklayb/caltar
- Owner: nicklayb
- Created: 2025-02-13T20:21:23.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-17T00:15:42.000Z (over 1 year ago)
- Last Synced: 2025-03-17T01:27:12.172Z (over 1 year ago)
- Language: Elixir
- Size: 204 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Caltar
Calendar platform that supports various providers.
## Installation
### With Docker
```yml
services:
app:
image: nboisvert/caltar:latest
container_name: caltar
ports:
- "4000:4000"
volumes:
- ./data:/opt/data
environment:
- TZ=America/Montreal
- LOCALE=fr
- GEONAMES_USERNAME=nboisvert
- SECRET_KEY_BASE=...
- LIVE_VIEW_SALT=...
- DATABASE_PATH=/opt/data/db.sqlite
- APP_HOST=http://localhost:4000
restart: always
```
**Note**: It is recommended to mount a local folder at `/opt/data` otherwise the databas will be reset at every restart.
Once the app starts, a default calendar called "Main" will be created.
You can then head to `http://localhost:4000` to show the calendar or `http://localhost:4000/settings` to go to the settings and configure your calendar.
#### Environment
- `TZ`: Timezone to convert calendar dates
- `LOCALE`: Language, only `fr` and `en` are supported so far.
- `GEONAMES_USERNAME`: Username of a user that has access to [Geonames](https://www.geonames.org/) (Only required to use with Formula 1 provider.
- `SECRET_KEY_BASE`: Any random characters sequence of 64 characters long
- `LIVE_VIEW_SALT`: Any random characters sequence of 32 characters long
- `DATABASE_PATH`: Path to the sqlite database (It **must** be scoped under `/opt/data` inside the container).
- `APP_HOST`: Must represent the host from which you wanna access the app.
## Current provider supported
- `Icalendar`: Supports `ics` endpoint to show icalendar format.
- `Formula1`: Wrapper over `Icalendar` that are formatted more appropriately for Formula 1 (requires a `GEONAMES_USERNAME` env variable with a username registered at [Geonames](https://www.geonames.org/))
- `Birthdays`: Birthday list
- `Sport`: Schedule and live sporting event provided by either [theScore](https://thescore.com) or Hockey Tech (Provides mostly Canadian Hockey League).
- `Recurring`: Recurring event that occurs every x weeks for instance.