Back to Portfolio
Calendar Sync: Multi-Platform Event Synchronization Engine
Integration & Automation

Calendar Sync: Multi-Platform Event Synchronization Engine

Enterprise calendar synchronization platform with Google Calendar API, Firestore persistence, node-cron scheduling, and Swagger documentation for multi-platform event automation.

Project Overview

The Challenge

Distributed teams used multiple calendar systems, causing scheduling conflicts and missed meetings.

Manual calendar synchronization between platforms was error-prone and time-consuming.

Recurring events weren't properly synchronized, leading to duplicate or missing occurrences.

No reliable way to track sync state or resolve conflicts when calendars diverged.

Built a robust calendar synchronization engine enabling bidirectional event sync across multiple Google Calendar accounts and third-party platforms. Handles recurring events with rrule library and maintains sync state in Firestore for reliability.

Implemented automated synchronization workflows using node-cron for scheduled syncs, ensuring real-time calendar updates across distributed teams. Integrated Google Cloud Firestore for persistent sync state and conflict resolution.

Developed comprehensive RESTful API with Swagger documentation, enabling easy integration for enterprise clients. Deployed to Google Cloud Platform with Secret Manager for secure credential management.

Technical Architecture

Click diagram to zoom

API Gateway: Express.js with Swagger documentation and Passport OAuth for Google Calendar access delegation.

Sync Engine: Core synchronization logic handling event creation, updates, and deletion across calendars with conflict resolution.

Scheduler: node-cron runs periodic sync jobs (configurable intervals), ensuring calendars stay updated without manual triggers.

State Persistence: Firestore stores sync metadata (last sync time, event IDs, change tokens) for incremental sync efficiency.

Recurring Events: rrule library parses and generates recurring event instances, supporting complex recurrence patterns (daily, weekly, monthly with exceptions).

Key Challenges & Solutions

1

Recurring Event Synchronization

Implemented rrule library to handle complex recurring patterns (RRULE standard). Ensured instances are properly created/modified/deleted when recurrence rules change, preventing event duplication.

2

Sync State Management

Designed Firestore schema tracking sync state per calendar pair. Used Google Calendar sync tokens for incremental updates, reducing API calls by 80% compared to full calendar scans.

3

Conflict Resolution

Built conflict detection logic comparing event modification timestamps. Implemented 'last write wins' strategy with user-configurable override rules for critical events.

Impact & Results

Reduced scheduling conflicts by 90% for distributed teams

Decreased calendar sync time from hours (manual) to minutes (automated)

80% reduction in Google Calendar API calls via incremental sync

Swagger documentation enabled 5+ third-party integrations within weeks

Key Features

  • Google Calendar API integration
  • Firest ore sync state persistence
  • node-cron scheduled synchronization
  • Recurring event handling (rrule)
  • Swagger API documentation
  • OAuth 2.0 authentication
  • Firebase Admin SDK
  • GCP Secret Manager integration
  • Express-validator input validation
  • Knex.js database queries

Technologies Used

Express.jsGoogle Calendar APIFirestoreFirebase Adminnode-cronrruleSwaggerPassport.jsGoogle Cloud Secret ManagerKnex.jsdate-fns

Project Details

Client

Enterprise SaaS Platform - Contract

Timeline

2024

Role

Backend Integration Engineer

© 2026 Firas Jday. All rights reserved.

0%