The iCal4j project is a collection of Open Source Java libraries providing support for the iCalendar specifications (RFCs).
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.
The following table provides an overview of the currently active projects in iCal4j.
|ical4j||Support for the iCalendar standard||RFC5545, RFC5546, RFC6868, RFC7953, RFC7986, RFC7529, RFC9073, RFC9074, RFC9253|
|ical4j-extensions||Support for non-standard iCalendar components and properties||-|
|ical4j-zoneinfo-outlook||Alternate timezone definitions to improve support for MS Outlook||-|
|ical4j-vcard||Support for the vCard standard||RFC6350, RFC6473, RFC6474, RFC6868, RFC6869|
|ical4j-template||Template calendar and card object builders to assist with data creation||-|
|ical4j-connector||Support for connecting to calendar and card store implementations (e.g. CalDAV)||RFC4791, RFC6352|
|ical4j-integration||Support for delivery of calendar and card objects via common transports (e.g Email)||RFC6047|
|ical4j-command||Command-line support for calendar and card operations||-|
|ical4j-serializer||Serialization of calendar data to standard formats (e.g xCal, jCal, JSCalendar, etc.)||RFC6321, RFC6351, RFC7095, RFC7265, RFC8984|
|tzurl||Generation and hosting of timezone data in iCalendar format||-|
For a concise description of the goals and directions of iCal4j please take a look at the open issues.
Detailed descriptions of changes included in each release may be found in the CHANGELOG.
iCal4j was created with the help of Open Source software.