PHPackages                             mkato/library-calendar - 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. mkato/library-calendar

ActiveLibrary

mkato/library-calendar
======================

An API extension for getting free time from users calendar

016[6 PRs](https://github.com/m1a9s9a4/library-Calendar/pulls)PHP

Since Oct 18Pushed 3y agoCompare

[ Source](https://github.com/m1a9s9a4/library-Calendar)[ Packagist](https://packagist.org/packages/mkato/library-calendar)[ RSS](/packages/mkato-library-calendar/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (7)Used By (0)

library-calendar
================

[](#library-calendar)

```
composer require mkato/library-calendar

```

about
-----

[](#about)

Calender Manager (ex: GoogleCalenderManager) is doing the hard things. It get's the schedules from the calendar via api.

If you're using google calendar, the code is ready for you. Use Calendar.php and it's already connected with the GoogleCalendarManager.

To use a different calendar, you have to create a calendar manager and schedule using the interface of those two. Then use service provider to extend the singleton of CalendarManager::class to your created class.

how to use?
-----------

[](#how-to-use)

Calling the Calendar.php, you can get your busy time or free time. However, you have to authenticate your email so it can access your calendar.

features
--------

[](#features)

### free time

[](#free-time)

It returns the time which has no schedule between the datetime you passed. Because it just looks into the schedule, the target time is 24 hours. Therefore midnight time will also be selected as a free time.

### busy time

[](#busy-time)

It returns the time which has some kind of schedule.

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/224f01764a9816a4e650fb75e733784dc7440948073bfdf55310df00fced7fd1?d=identicon)[mkato](/maintainers/mkato)

---

Top Contributors

[![m1a9s9a4](https://avatars.githubusercontent.com/u/22877924?v=4)](https://github.com/m1a9s9a4 "m1a9s9a4 (19 commits)")

### Embed Badge

![Health badge](/badges/mkato-library-calendar/health.svg)

```
[![Health](https://phpackages.com/badges/mkato-library-calendar/health.svg)](https://phpackages.com/packages/mkato-library-calendar)
```

PHPackages © 2026

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