PHPackages                             jsvrcek/ics-bundle - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. jsvrcek/ics-bundle

ActiveSymfony-bundle[Utility &amp; Helpers](/categories/utility)

jsvrcek/ics-bundle
==================

This bundle provides a dependency injection wrapper for the JsvrcekICS iCal library

1.2(1y ago)11150.6k—3.2%4[2 PRs](https://github.com/jasvrcek/IcsBundle/pulls)MITPHPPHP &gt;=7.4

Since Jan 13Pushed 10mo ago2 watchersCompare

[ Source](https://github.com/jasvrcek/IcsBundle)[ Packagist](https://packagist.org/packages/jsvrcek/ics-bundle)[ Docs](https://github.com/jasvrcek/IcsBundle)[ RSS](/packages/jsvrcek-ics-bundle/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (2)Versions (6)Used By (0)

IcsBundle
=========

[](#icsbundle)

Symfony Bundle providing dependency injection for the Jsvrcek\\ICS library, which is for creating iCal .ics files.

Installation
------------

[](#installation)

composer req jsvrcek/ics-bundle

Usage
-----

[](#usage)

```
    namespace App\Services;

    use Jsvrcek\ICS\CalendarExport;
    use Jsvrcek\ICS\Model\Calendar;
    use Jsvrcek\ICS\Model\CalendarEvent;
    use Jsvrcek\ICS\Model\Relationship\Attendee;
    use Jsvrcek\ICS\Utility\Formatter;

    private Formatter $formatter;
    private CalendarExport $calendarExport;

    class MyService
    {

    public function __construct(Formatter $formatter, CalendarExport $calendarExport) {

        $this->formatter = $formatter;
        $this->calendarExport = $calendarExport;
    }
```

```
// or inject them into the controller

```

```
        public function calendarAction(Formatter $formatter, CalendarExport $calendarExport)
        {
            $eventOne = new CalendarEvent();
            $eventOne->setStart(new \DateTime())
                ->setSummary('Family reunion')
                ->setUid('event-uid');

            //add an Attendee
            $attendee = new Attendee($formatter);
            $attendee->setValue('moe@example.com')
                ->setName('Moe Smith');
            $eventOne->addAttendee($attendee);

            // Add event to CalendarExport
            $calendarExport->setCalendars( [
                (new Calendar)->setTimezone( new DateTimeZone(date_default_timezone_get()) )
                    ->addEvent( $eventOne )
            ] );

            $response = new Response($calendarExport->getStream());
            $response->headers->set('Content-Type', 'text/calendar');

            return $response;
        }
    }
```

###  Health Score

48

—

FairBetter than 95% of packages

Maintenance52

Moderate activity, may be stable

Popularity41

Moderate usage in the ecosystem

Community16

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 62.1% 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 ~1133 days

Total

4

Last Release

378d ago

Major Versions

0.1 → 1.02022-08-15

### Community

Maintainers

![](https://www.gravatar.com/avatar/b1341e5b9951381e93e9486834a435a5740b0495b9db81ab1a7c7095b1a09e33?d=identicon)[jasvrcek](/maintainers/jasvrcek)

---

Top Contributors

[![jasvrcek](https://avatars.githubusercontent.com/u/953133?v=4)](https://github.com/jasvrcek "jasvrcek (18 commits)")[![tacman](https://avatars.githubusercontent.com/u/619585?v=4)](https://github.com/tacman "tacman (7 commits)")[![circulosmeos](https://avatars.githubusercontent.com/u/8865820?v=4)](https://github.com/circulosmeos "circulosmeos (1 commits)")[![GenieTim](https://avatars.githubusercontent.com/u/8596965?v=4)](https://github.com/GenieTim "GenieTim (1 commits)")[![markwatney2016](https://avatars.githubusercontent.com/u/22563689?v=4)](https://github.com/markwatney2016 "markwatney2016 (1 commits)")[![wickedOne](https://avatars.githubusercontent.com/u/343850?v=4)](https://github.com/wickedOne "wickedOne (1 commits)")

---

Tags

exporticsicalcalendarRFC 5545

### Embed Badge

![Health badge](/badges/jsvrcek-ics-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/jsvrcek-ics-bundle/health.svg)](https://phpackages.com/packages/jsvrcek-ics-bundle)
```

###  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)[spatie/icalendar-generator

Build calendars in the iCalendar format

6787.4M9](/packages/spatie-icalendar-generator)[jsvrcek/ics

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

2191.9M9](/packages/jsvrcek-ics)[kigkonsult/icalcreator

iCalcreator is the PHP implementation of rfc2445/rfc5545 and rfc updates, management of calendar information

2462.6M16](/packages/kigkonsult-icalcreator)[welp/ical-bundle

Symfony Bundle to manage .ics iCal file (creating and eventually reading)

10114.3k](/packages/welp-ical-bundle)[aluguest/ical-easy-reader

An easy to understood class, loads a "ics" format string and returns an array with the traditional iCal fields.

122.7k](/packages/aluguest-ical-easy-reader)

PHPackages © 2026

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