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)11159.6k↓46.2%4[3 issues](https://github.com/jasvrcek/IcsBundle/issues)[2 PRs](https://github.com/jasvrcek/IcsBundle/pulls)MITPHPPHP &gt;=7.4

Since Jan 13Pushed 1y 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 2d 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

45

—

FairBetter than 91% of packages

Maintenance42

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

425d 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

[jsvrcek/ics

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

2232.0M12](/packages/jsvrcek-ics)[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.2k18.7M61](/packages/eluceo-ical)[spatie/icalendar-generator

Build calendars in the iCalendar format

6878.7M19](/packages/spatie-icalendar-generator)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1189.8k](/packages/rcsofttech-audit-trail-bundle)[welp/ical-bundle

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

10116.0k](/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.8k](/packages/aluguest-ical-easy-reader)

PHPackages © 2026

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