Introduction
The iCal4j project is a collection of Open Source Java libraries for creating semantically-rich calendar and scheduling data. iCal4j is based on the iCalendar and vCard specifications, with each library focused on a specific subset of interoperability functionality.
What is iCalendar?
The iCalendar standard was originally created from a collaboration of leading groupware developers, as a way for their software to interoperate.
The core iCal4j library provides an implementation of the iCalendar specifications that are designed to facilitate interoperability between calendaring and scheduling software systems.
iCalendar provides a common data format used to store scheduling information such as events, appointments, to-do lists, etc. Most calendaring tools include some level of support for the iCalendar standard.
Active Projects
The following table provides an overview of the currently active projects in iCal4j.
Name | Description | References |
---|---|---|
ical4j | Model and parsing support for iCalendar standards | RFC5545, RFC5546, RFC6868, RFC7953, RFC7986, RFC7529, RFC9073, RFC9074, RFC9253 |
ical4j-zoneinfo-outlook | Alternate timezone definitions to improve support for MS Outlook | - |
ical4j-vcard | Model and parsing support for vCard standards | RFC6350, RFC6473, RFC6474, RFC6868, RFC6869 |
ical4j-extensions | Model extensions for non-standard data objects | - |
ical4j-connector | Connectivity to persistent store implementations (e.g. CalDAV) | RFC4791, RFC6352 |
ical4j-integration | Delivery of data objects via common transport channels (e.g Email) | RFC6047 |
ical4j-serializer | Serialization of data objects to structured data formats (e.g xCal, jCal, JSCalendar, etc.) | RFC6321, RFC6351, RFC7095, RFC7265, RFC8984 |
ical4j-command | Command framework and CLI | - |
ical4j-streams | Asynchronous stream processing | - |
ical4j-graph | Linked object traversal | - |
ical4j-template | Templating support for data presentation | - |
tzurl | Generation and hosting of timezone data in iCalendar format | - |
Further Links
-
For a concise description of the goals and directions of iCal4j please take a look at the open issues.
-
In this guide You will find examples of how to use iCal4j, as well as throughout the API documentation.
-
Detailed descriptions of changes included in each release may be found in the CHANGELOG.
-
iCal4j was created with the help of Open Source software.