Calendar infrastructure for strict enterprise environments.

Headless scheduling engine plus framework-agnostic Web Components. Zero dependencies. Built for Salesforce Locker Service and strict CSP.

Locker Service

Most calendar libraries use blocked JavaScript patterns — eval, dynamic Function constructors, prototype manipulation — that Locker Service prohibits.

forceCalendar uses only Locker-safe patterns. No blocked APIs, no runtime code generation.

Strict CSP

Content Security Policy blocks inline styles, eval, and unsafe-inline. Calendar libraries that inject CSS or generate styles at runtime fail silently.

All styling uses CSS custom properties and external stylesheets. No inline style injection.

Security Reviews

Enterprise security teams audit every dependency. A library with 50+ transitive dependencies creates weeks of review work and ongoing supply chain risk.

Zero dependencies means zero supply chain risk. One package to audit, one license to approve.

Started with Salesforce

Most calendar libraries break inside Locker Service — that's where forceCalendar started. The same zero-dependency architecture works in any strict enterprise environment.

forceCalendar month view running inside a Salesforce org, showing colorful events across February 2026

Native LWC Integration

Runs as a Lightning Web Component. Uses real Salesforce data through Apex, not external APIs.

Locker Service Safe

Zero blocked API calls. No eval, no dynamic Function constructors, no prototype manipulation.

All Views Included

Month, week, and day views with event creation, color coding, and full navigation.

forceCalendar week view inside Salesforce showing timed events

Week view with timed events

forceCalendar day view inside Salesforce showing detailed event blocks

Day view with event details

Enterprise calendar infrastructure

Salesforce is the flagship integration. The same architecture works anywhere strict security is required.

Salesforce

Shipping now. LWC + Apex with full Locker Service compliance.

Any Web App

Web Components work in React, Vue, Angular, or vanilla JS.

Strict CSP

No eval, no inline styles. Works behind the strictest policies.

Air-Gapped

Zero external requests. Runs fully offline with no CDN dependencies.

Two packages, one architecture

Use Core for scheduling logic and Interface for production-ready UI components.

@forcecalendar/core@forcecalendar/interfaceSalesforce LWC
app.jsJavaScript
import { Calendar } from '@forcecalendar/core';
import '@forcecalendar/interface';

const calendar = new Calendar({
  locale: 'en-US',
  timezone: 'America/New_York'
});

// That's it. <forcecal-main> is ready to use.

Recurrence Rules

RFC 5545 RRULE support with exceptions, overrides, and timezone-aware expansion for complex enterprise schedules.

Timezone Support

Full IANA timezone database with automatic daylight-saving transitions and cross-timezone conversion.

ICS Import / Export

iCalendar file support for interoperability with Outlook, Google Calendar, and existing enterprise systems.

Conflict Detection

Spatial indexing enables fast overlap detection across large event sets without scanning every event.

Full-Text Search

Built-in search engine with fuzzy matching across event titles, descriptions, and custom fields.

CSS Theming

35+ CSS custom properties for complete visual control without touching JavaScript or Shadow DOM internals.

How it compares

Independent benchmarks against FullCalendar — an excellent, widely-used library. forceCalendar exists for a different niche: strict enterprise environments where most calendar libraries cannot run.

Bundle Size

forceCalendar (core + interface)1.04 MB
FullCalendar (core + 5 plugins + rrule)3.01 MB

2.9x smaller total bundle. Fewer bytes to audit, fewer bytes to ship behind corporate firewalls.

Recurrence (RRULE)

The dedicated rrule library is significantly faster than forceCalendar’s built-in RecurrenceEngine at expanding recurrence rules (17x to 1000x depending on pattern complexity).

The trade-off: forceCalendar’s recurrence is built-in with zero extra dependencies, while FullCalendar requires the separate rrule library. For most calendars with moderate recurrence, the built-in engine is fast enough. For heavy RRULE workloads, a dedicated library wins.

Benchmarks run against published npm packages. Full methodology and interactive results available on the dashboard.

View full benchmark