use Data::ICal; use Data::ICal::Entry::Event; use Date::ICal; use strict; my $calendar = Data::ICal->new(); my $vtodo = Data::ICal::Entry::Event->new(); $vtodo->add_properties( summary => "some fun", description => "a fun thing to do", dtstart => Date::ICal->new ( day => 29, month => 6, year => 2006, hour => 7, min => 15, sec => 00 )->ical, dtend => Date::ICal->new(day => 29, month => 6, year => 2006, hour => 7, min => 45, sec => 00 )->ical, ); $calendar->add_entry($vtodo); print $calendar->as_string;