Site icon k5n.us

A New Modern, Fully RFC 5545-Compliant iCalendar Parser and Writer for PHP

I’m excited to share that my new open-source library, php-icalendar-core, is now available on GitHub:

https://github.com/craigk5n/php-icalendar-core

This is a clean, modern, zero-dependency PHP 8.2+ library for parsing and writing iCalendar (.ics) data according to RFC 5545, with strong support for recurrence rules (RRULE), timezones, and even forward-compatible rich-text descriptions via STYLED-DESCRIPTION (RFC 9073).

Table of Contents

Why Another iCalendar Library?

Existing PHP iCalendar solutions are often outdated, tightly coupled to frameworks, or lack strict RFC compliance and modern PHP features. I wanted something that is:

The result is a library that feels native to modern PHP — using readonly properties, enums, DateTimeImmutable, and strong typing throughout.

Built with AI Assistance

This project was a great experiment in agentic development. I leaned heavily on AI coding tools to accelerate the work:

All AI-generated code was carefully reviewed, tested, and refined by me, but the speed and quality boost from these tools was remarkable.

Excellent Documentation on DeepWiki

One of the best parts of the project has been the documentation. I’ve published comprehensive, auto-generated docs on DeepWiki — a fantastic platform that creates beautiful, searchable wikis for codebases complete with architecture diagrams, class references, and explanations.

You can explore the full php-icalendar-core documentation there (just search for the repo on deepwiki.com or follow the link from the GitHub README). It’s one of the cleanest ways I’ve seen to document a library automatically while keeping it up-to-date.

Thorough Testing & Top-Tier Code Quality

Quality was non-negotiable. The library includes:

The combination of comprehensive tests and strict static analysis makes php-icalendar-core one of the most robust iCalendar implementations available in PHP today.

Exit mobile version