PHPackages                             itsnubix/nowcal - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. itsnubix/nowcal

ActiveLibrary[Parsing &amp; Serialization](/categories/parsing)

itsnubix/nowcal
===============

A modern PHP library for generating iCalendar v2.0 events

1.6.1(1y ago)911.5k—8.3%4MITPHPPHP &gt;8.1CI failing

Since Feb 10Pushed 1y ago2 watchersCompare

[ Source](https://github.com/itsnubix/nowcal)[ Packagist](https://packagist.org/packages/itsnubix/nowcal)[ RSS](/packages/itsnubix-nowcal/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (2)Versions (21)Used By (0)

NowCal
======

[](#nowcal)

[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE)[![Total Downloads](https://camo.githubusercontent.com/28d2ec29f320a090b46725156e6a8bd0fb2b968aa3dfb0c25f27d1314c0a47ec/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6974736e756269782f6e6f7763616c2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/itsnubix/nowcal)

A modern PHP library for generating iCalendar v2.0 events.

Getting Started
---------------

[](#getting-started)

### Installation

[](#installation)

Install with composer using `composer require itsnubix/nowcal`

### Basic usage

[](#basic-usage)

```
use NowCal\NowCal;

$event = NowCal::create(['start' => 'October 5, 2019 6:03PM']))
  ->summary('Daft Punk is playing')
  ->location('My House');
```

API
---

[](#api)

### Properties

[](#properties)

The following properties can be get/set on the NowCal instance. Users can take advantage of the set property helpers in the class, i.e.: `$nowcal->location('Event Location');` as they provide a nice syntax to string multiple calls together and support callbacks if necessary.

PropertyDescriptionuidA globally unique ID. NOTE: passing the same ICS file into a calendar app with the same UI allows you to update the existing invitestartA string parseable by DateTimetimezoneA string parseable by DateTimeZoneendA string parseable by DateTime, as per RFC 5545, only an end value or duration value may be useddurationA string parseable by DateInterval, as per RFC 5545, only an end value or duration value may be usedsummaryA short description of the eventlocationThe location where the event is taking placesequenceAn integer that represents the version numbermethodsend if required, publish/cancel/etcreminderA simple display reminder. A string parseable by DateInterval.### Methods

[](#methods)

```
$props = [
  'start' => 'now',
  'end' => 'now + 1 hour',
  // OR
  'duration' => '28d 6h 42m 12s',
  'summary' => 'Daft Punk is playing',
  'location' => 'My House',
];

// Creates a NowCal instance
$nowcal = new NowCal($props); // or NowCal::create($props);

// Exports a raw output array
$nowcal->raw; // or NowCal::raw($props)

// Exports a plain text version
$nowcal->plain; // or NowCal::plain($props)

// Exports a path to a tempfile
$nowcal->file; // or NowCal::file($props)
```

###  Health Score

47

—

FairBetter than 94% of packages

Maintenance46

Moderate activity, may be stable

Popularity34

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity78

Established project with proven stability

 Bus Factor1

Top contributor holds 91.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~118 days

Recently: every ~67 days

Total

20

Last Release

402d ago

Major Versions

0.5.2 → 1.0.02024-04-17

PHP version history (4 changes)0.1.4PHP ^7.1.8

0.5.1PHP ^7.1.8|^8.0

1.0.0PHP ^8.1

1.1.0PHP &gt;8.1

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/15757117?v=4)[Kyle Milloy](/maintainers/kylemilloy)[@kylemilloy](https://github.com/kylemilloy)

---

Top Contributors

[![kylemilloy](https://avatars.githubusercontent.com/u/15757117?v=4)](https://github.com/kylemilloy "kylemilloy (42 commits)")[![ronyu21](https://avatars.githubusercontent.com/u/10749880?v=4)](https://github.com/ronyu21 "ronyu21 (3 commits)")[![jeremykenedy](https://avatars.githubusercontent.com/u/6244570?v=4)](https://github.com/jeremykenedy "jeremykenedy (1 commits)")

---

Tags

icalicalendaricsphp-libraryiCalendaricscalendar

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/itsnubix-nowcal/health.svg)

```
[![Health](https://phpackages.com/badges/itsnubix-nowcal/health.svg)](https://phpackages.com/packages/itsnubix-nowcal)
```

###  Alternatives

[eluceo/ical

The eluceo/iCal package offers an abstraction layer for creating iCalendars. You can easily create iCal files by using PHP objects instead of typing your \*.ics file by hand. The output will follow RFC 5545 as best as possible.

1.2k17.5M47](/packages/eluceo-ical)[johngrogg/ics-parser

ICS Parser

4813.7M23](/packages/johngrogg-ics-parser)[spatie/icalendar-generator

Build calendars in the iCalendar format

6787.4M9](/packages/spatie-icalendar-generator)[sabre/vobject

The VObject library for PHP allows you to easily parse and manipulate iCalendar and vCard objects

59723.5M41](/packages/sabre-vobject)[jsvrcek/ics

abstraction layer for creating multi-byte safe RFC 5545 compliant .ics files

2191.9M9](/packages/jsvrcek-ics)[om/icalparser

Simple iCal parser

60552.3k](/packages/om-icalparser)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
