/excal

NIF bindings to libical providing icalendar rrule expansion.

Primary LanguageElixirMIT LicenseMIT

Excal

Build Status codecov SourceLevel Hex.pm Version License Dependabot Status

NIF bindings to libical for Elixir.

This library is still a WIP, but works well for basic calls to libical's recurrence iterators.

Requirements

Excal requires that libical (and its development headers) be present on your system, and that it's at least version 3.0.0.

macOS

You can easily install libical using Homebrew on macOS:

brew install libical

Homebrew provides the latest version, as of this writing, which is 3.0.7.

linux

Use favorite package manager to install libical (may be named slightly differently depending on distro), or maybe libical-dev if you're using a Debian based distro like Ubuntu.

NOTE: Make sure you're getting at least version 3.0.0. Anything below will prevent Excal from compiling.

Windows

I'm not currently aware of how to get this working on Windows, but if someone wants to try and let me know how, I will add instructions to this readme.

Installation

The package can be installed by adding excal to your list of dependencies in mix.exs:

def deps do
  [
    {:excal, "~> 0.3.2"}
  ]
end

Documentation can be found at https://hexdocs.pm/excal.