承接 ernestdefoe/calendar 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ernestdefoe/calendar

Composer 安装命令:

composer require ernestdefoe/calendar

包简介

A full-featured calendar & events extension for Flarum 2 — month/list views, RSVP, categories, recurring events, cover images, iCal feed + Google Calendar export, and an Upcoming-Events widget (works on the default theme, Bespoke, and Page Builder).

README 文档

README

License Latest version Flarum

A full-featured, free calendar & events extension for Flarum 2 — and an engagement engine that makes your whole community feel alive. Events (month/ week/day/list, RSVPs, recurrence, iCal + Google Calendar) plus a GitHub-style activity heatmap with streaks, a forum-pulse leaderboard, live countdowns in any post, "on this day" memories, and member birthday/anniversary celebrations.

Everything works on the default theme and integrates natively with Bespoke and Page Builder.

Built to feel premium. Priced at free.

✨ Engagement engine (the reason to install even if you don't need a calendar)

  • 🔥 Activity heatmap + streaks — every member profile gets a GitHub-style year-long contribution graph with current/longest streaks, totals, and earned achievement badges. The single best driver of daily return visits.
  • 📈 Forum Pulse — a community-wide activity heatmap + "most active" leaderboard widget that shows, at a glance, that the place is buzzing.
  • Live countdowns — drop [countdown=2026-12-31T23:59:59]New Year[/countdown] into any post for a live ticking timer; upcoming events get one automatically.
  • 🕰️ On this day — resurfaces the most-discussed threads from today's date in years past, reviving old conversations.
  • 🎂 Member celebrations — opt-in birthdays (month/day only — never a year) and join-anniversaries, shown in a "today's celebrations" widget.

Each appears on the default theme and as a Bespoke widget / Page Builder block, with admin toggles for the index widgets.

Calendar & events features

  • 🗓️ Month, Week, Day & list views with quick prev / today / next navigation. Week/Day are true time grids with hour lines, a live "now" indicator, side-by-side overlapping events, and double-click-to-create at the clicked time slot.
  • 📍 Location on every event, rendered as a one-tap Google Maps link.
  • 🔁 Recurring events (daily / weekly / monthly / yearly) via standard RRULE, expanded on the fly so each occurrence shows on the right day.
  • RSVP — members mark themselves Going or Interested, with live counts.
  • 🎨 Categories with colours — filter the calendar and give each event a coloured accent. Managed from a dedicated admin panel with a colour picker.
  • 🖼️ Cover image per event — paste a URL, or upload a file directly when FoF Upload is installed (auto-detected; falls back to a URL field otherwise).
  • 📅 iCal export — a subscribable feed.ics for the whole calendar plus a per-event .ics download (RFC 5545, proper escaping & folding).
  • 🟦 Google Calendar — "Add to Google Calendar" deep-links with title, time, description and location pre-filled.
  • 💬 Optional discussion thread per event (hybrid model) so members can comment using Flarum's native discussion UI.
  • 🧩 Upcoming Events widget — works standalone on the default theme, and registers as a first-class widget/block in Bespoke and Page Builder.
  • 🌓 Theme-aware — every colour resolves through Flarum's own CSS variables, so it looks correct in light & dark and on custom themes out of the box.
  • 🔐 Permissions — separate "create events" and "manage all events" controls.

Installation

composer require ernestdefoe/calendar
php flarum migrate
php flarum cache:clear

Then open Admin → Calendar to configure it.

Updating

composer update ernestdefoe/calendar
php flarum migrate
php flarum cache:clear

Configuration

Admin → Calendar gives you:

Setting What it does
Default view Month grid or upcoming list when the calendar opens.
Week starts on Sunday or Monday.
Index widget Show an "Upcoming events" widget on the forum index.
Widget count How many upcoming events the widget lists.
Link discussion Auto-create a discussion thread for each new event (for comments).
Categories Add / rename / recolour / delete colour-coded categories.

Two permissions are added under Admin → Permissions:

  • Create calendar events — who can add events.
  • Manage all calendar events — who can edit/delete events they don't own.

The Upcoming Events widget

The widget is a self-contained component, so it shows up automatically wherever your theme supports it:

  • Default theme — appears in the index sidebar (toggle in admin).
  • Bespoke — available in the widget tray as Upcoming events.
  • Page Builder — available as an Events block.

Calendar subscription (iCal)

Every calendar exposes a subscribable feed at:

https://your-forum.example/calendar/feed.ics

Paste that URL into Google Calendar (Other calendars → From URL), Apple Calendar (File → New Calendar Subscription), or Outlook to keep events in sync. Each event also has its own .ics download and an "Add to Google Calendar" link.

How events are modelled

Events are their own records (title, time, location, recurrence, etc.). When Link discussion is enabled, creating an event also spins up a normal Flarum discussion linked to it, so comments, mentions, likes and notifications all work exactly as members expect — no parallel comment system to learn.

Compatibility

  • Flarum ^2.0
  • PHP ^8.3
  • No required third-party extensions. Plays nicely with Bespoke & Page Builder when present, and degrades gracefully when they aren't.
  • Optional: FoF Upload — enables drag-free file uploads for event cover images.

Contributing

Issues and PRs welcome. To build the front-end locally:

cd js
npm install
npm run dev      # watch
npm run build    # production

License

MIT © ernestdefoe

ernestdefoe/calendar 适用场景与选型建议

ernestdefoe/calendar 是一款 基于 TypeScript 开发的 Composer 扩展包,目前已累计 114 次下载、GitHub Stars 达 0, 最近一次更新时间为 2026 年 06 月 04 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「calendar」 「events」 「ical」 「flarum」 「rsvp」 「flarum-extension」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 ernestdefoe/calendar 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 ernestdefoe/calendar 我们能提供哪些服务?
定制开发 / 二次开发

基于 ernestdefoe/calendar 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 114
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 44
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: TypeScript

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-06-04