Automation and integrations decision

CalMedi

A technical user can reproduce the core sync (Doctolib→Google) using a headless browser or extension plus a small backend, but the full commercial product (extension UX, hosted billing, GDPR assurances, polished support and scaling) requires more engineering and operations than a solo-build; prior open-source calendar-sync projects cover parts but not the Doctolib-specific extension/workflow.

Visit website
You pay

$10/mo

$120/yr

Read off the official pricing page.

You’d pay instead

$100one-off60 h to build

$25/mo6 h/mo upkeep

On cash alone, building overtakes the subscription at 4 seats.

No open-source build does this yet

Nothing published replaces this one, so a replacement starts from an empty file. Here is what it would have to cover.

What a replacement has to do

  • Poll Doctolib for appointments (via extension or headless browser), map/transform events (optionally anonymize), and push creates/updates/deletes to a Google Calendar using the Google Calendar API.

What it still won’t have

  • Polished, publish-ready Chrome extension and its store listing
  • Hosted Stripe billing, trial flows and automatic per-link billing
  • GDPR/legal/compliance assurances and third-party security reviews
  • Operational monitoring, multi-tenant scaling, and formal support/SLA
  • Polished dashboard, onboarding flows and enterprise features (multi-site admin)

What remains hard

  • Product polish and ongoing maintenance
Read the build prompt

First-year cost

Keep paying

Paying is—cheaper in year one.

On cash alone, building overtakes the subscription at 4 seats.

Paid seatsseats

Money you would actually spend

Keep paying
—

Subscription price × seats × 12

Build it
—

AI build —APIs + hosting —

Time you would spend

—

—

What you would spend

What we assumed

The verdict above measures whether you could build it. This one is only about money.

Runnable build prompt

Not run yet
Build a self-hosted Doctolib→Google sync service using Node.js (Express), PostgreSQL, and Puppeteer (or a Chrome extension) for Doctolib scraping; use Google OAuth2 to obtain calendar write access. In scope: (1) a Chrome extension or headless Puppeteer worker that authenticates to Doctolib and extracts appointment objects; (2) a backend API to accept extracted events, reconcile diffs (create/update/delete) and call Google Calendar API; (3) a scheduler to run polling at configurable cadence per link; (4) a small web UI to connect Google accounts (OAuth), configure cadence (1/3/7/30 per day), and toggle anonymization; (5) Postgres schema for links, last-sync cursors, and anonymization flags; (6) deploy scripts (Docker) and basic logs/health checks. Out of scope: hosted billing/Stripe integration, multi-tenant enterprise admin UI, published Chrome Web Store onboarding, legal/compliance certification. Include error handling for network/API failures, idempotent sync logic, retries, and unit/integration tests for parsing, reconciliation, and OAuth flows.
How we checked2 sources · 3/3 runs agreed · evidence score 60

How the score was reached

  • Partly verdict base52
  • 2 cited sources+1
  • Price verified on pricing page+3
  • 3/3 assessment runs agreed+4
  • Evidence score60

The base comes from the verdict. Everything under it is a check that either happened or did not, and each one is a fact frozen in this record rather than a judgement made at render time - so the same evidence always produces the same number.

How scoring works →

Cited sources · 2

Every page the run actually retrieved.

Integrity checks

What held up, and what did not.

✓ Price read off the page✓ 3 independent runs, one answer✓ Citations limited to fetched pages! 1 moat recorded