Skip to content

Comments

feat: add docs for calendar view atom#24049

Merged
Ryukemeister merged 4 commits intomainfrom
calendar-view-docs
Sep 26, 2025
Merged

feat: add docs for calendar view atom#24049
Ryukemeister merged 4 commits intomainfrom
calendar-view-docs

Conversation

@Ryukemeister
Copy link
Contributor

@Ryukemeister Ryukemeister commented Sep 24, 2025

Overview

This PR adds comprehensive documentation for the Calendar view atom, a new component that provides a weekly calendar overview for Cal.com platform users.

Changes Made

📚 Documentation Added

  • New documentation page: docs/platform/atoms/calendar-view.mdx
    • Explains the Calendar view atom functionality
    • Provides usage examples for both individual and team events
    • Includes embedded video demonstration
    • Contains detailed props table with required and optional parameters

🔧 Configuration Updates

  • Navigation update: Added platform/atoms/calendar-view to the Atoms section in docs/mint.json
  • Video update: Updated embedded Loom video in docs/platform/atoms/event-type.mdx

Features Documented

The Calendar view atom provides:

  • Weekly calendar overview display
  • Support for individual user events (requires username and eventSlug props)
  • Support for team events (requires teamId and eventSlug props)
  • Flexible configuration through props

Props Documentation

Prop Type Required Description
username string Yes (for individual events) User's username
eventSlug string Yes Event type slug
isTeamEvent boolean No Whether this is a team event
teamId string Yes (for team events) Team identifier

This documentation will help developers integrate the Calendar view atom into their Cal.com platform applications.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Sep 24, 2025

Walkthrough

This change updates documentation. It introduces a new Calendar view atom page and adds it to the docs navigation by updating docs/mint.json. The JSON file formatting is adjusted with a trailing comma to include the new entry. Additionally, the event-type page’s advanced tab Loom embed URL is updated. No code or API changes are included.

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Description Check ❓ Inconclusive The PR description is empty and provides no author-provided context for the changes; while the raw_summary shows added documentation files, the lack of any description means the check is inconclusive because it does not convey meaningful information about intent or scope. Please add a brief description summarizing the intent, key files changed, and any testing or deployment notes, and link to relevant issues or the PR objectives.
✅ Passed checks (2 passed)
Check name Status Explanation
Title Check ✅ Passed The title "feat: add docs for calendar view atom" concisely and accurately describes the primary change — adding documentation for the Calendar view atom — and aligns with the modified files (new MDX page and nav entry in docs/mint.json), so it is clear and appropriate for history scanning.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch calendar-view-docs

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@keithwillcode keithwillcode added core area: core, team members only platform Anything related to our platform plan labels Sep 24, 2025
@graphite-app graphite-app bot requested a review from a team September 24, 2025 13:34
@dosubot dosubot bot added the docs area: docs, documentation, cal.com/docs label Sep 24, 2025
@vercel
Copy link

vercel bot commented Sep 24, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

2 Skipped Deployments
Project Deployment Preview Comments Updated (UTC)
cal Ignored Ignored Sep 26, 2025 9:27am
cal-eu Ignored Ignored Sep 26, 2025 9:27am

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (5)
docs/platform/atoms/event-type.mdx (1)

332-339: Add accessible title to iframe (a11y).

Provide a descriptive title so screen readers can identify the video content.

     <iframe
       height="315"
       style={{ width: "100%", maxWidth: "560px" }}
       src="https://www.loom.com/embed/7a03c4a453ca401ab787b2db98728f31?sid=8cdc6398-0017-41c8-a0a1-8fa31f80616c"
+      title="Event Type Advanced tab demo"
       frameborder="0"
       allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
       allowfullscreen="true"
     ></iframe>
docs/platform/atoms/calendar-view.mdx (4)

5-5: Tighten grammar in intro sentence.

Add “the” and simplify phrasing.

-The calendar view atom is basically a weekly calendar view wherein users can see entire week at a glance, clearly showing both available and unavailable time slots. This view is designed to provide a comprehensive and easy-to-read schedule, helping users quickly identify open slots for booking or planning.
+The calendar view atom provides a weekly overview where users can see the entire week at a glance, clearly showing available and unavailable time slots. This view is designed to be easy to scan, helping users quickly identify open slots for booking or planning.

11-21: Use TSX fence and make the example self-contained (no undefined type).

Current block is labeled JS but uses TS types and an undefined BookerProps.

-```js
+```tsx
 import { CalendarView } from "@calcom/atoms";
 
-export default function Booker( props : BookerProps ) {
+export default function Booker(props: { calUsername: string; eventSlug: string }) {
   return (
     <div>
        <CalendarView username={props.calUsername} eventSlug={props.eventSlug} />
     </div>
   )
 }

---

`27-37`: **Align team example with TSX and self-contained props.**

Match the first example’s TSX fence and define the props inline.



```diff
-```js
+```tsx
 import { CalendarView } from "@calcom/atoms";
 
-export default function Booker( props : BookerProps ) {
+export default function Booker(props: { teamId: number; eventSlug: string }) {
   return (
     <div>
        <CalendarView isTeamEvent={true} teamId={props.teamId} eventSlug={props.eventSlug} />
     </div>
   )
 }

---

`43-51`: **Add accessible title to iframe (a11y).**

Provide a descriptive title.



```diff
     <iframe
       height="315"
       style={{ width: "100%", maxWidth: "560px" }}
       src="https://www.loom.com/embed/40ebab9efaa149019ea487e35ff8f656?sid=c6a748c3-0564-4400-ac7c-a17a404c9af6"
+      title="Calendar View atom demo"
       frameborder="0"
       allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
       allowfullscreen="true"
     ></iframe>
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 96855ea and ecbc09f.

📒 Files selected for processing (3)
  • docs/mint.json (1 hunks)
  • docs/platform/atoms/calendar-view.mdx (1 hunks)
  • docs/platform/atoms/event-type.mdx (1 hunks)
🔇 Additional comments (1)
docs/mint.json (1)

216-218: Navigation entry confirmed — file exists and path matches
docs/platform/atoms/calendar-view.mdx exists and is referenced in docs/mint.json ("platform/atoms/calendar-view" at line 217).


<p></p>

Below is a list of props that can be passed to the create event type atom
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Fix copy: references the wrong atom.

Change “create event type atom” to “calendar view atom”.

-Below is a list of props that can be passed to the create event type atom
+Below is a list of props that can be passed to the calendar view atom
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
Below is a list of props that can be passed to the create event type atom
Below is a list of props that can be passed to the calendar view atom
🤖 Prompt for AI Agents
In docs/platform/atoms/calendar-view.mdx around line 54, the copy incorrectly
refers to the "create event type atom"; update the sentence to reference the
correct atom by changing "create event type atom" to "calendar view atom" so it
reads: "Below is a list of props that can be passed to the calendar view atom."

Comment on lines +56 to +61
| Name | Required | Description |
|:----------------------------|:----------|:-------------------------------------------------------------------------------------------------------|
| username | Yes | Username of the person whose schedule is to be displayed |
| eventSlug | Yes | Unique slug created for a particular event | |
| isTeamEvent | No | Boolean indicating if it is a team event, to be passed only for team events |
| teamId | No | The id of the team for which the event is created, to be passed only for team events | No newline at end of file
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Clarify required props based on usage (individual vs team).

Table marks username as required but team example omits it; clarify conditional requirements.

 | Name                       | Required | Description                                                                                           |
 |:----------------------------|:----------|:-------------------------------------------------------------------------------------------------------|
-| username                   | Yes      | Username of the person whose schedule is to be displayed                                              |
+| username                   | Yes (individual events) | Username of the person whose schedule is to be displayed                                     |
 | eventSlug                  | Yes      | Unique slug created for a particular event                                                            |                                                |
 | isTeamEvent                | No       | Boolean indicating if it is a team event, to be passed only for team events                                                                     |
-| teamId                | No       | The id of the team for which the event is created, to be passed only for team events                                                                     |
+| teamId                | Yes (team events) | The id of the team for which the event is created; required when `isTeamEvent` is true                        |
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
| Name | Required | Description |
|:----------------------------|:----------|:-------------------------------------------------------------------------------------------------------|
| username | Yes | Username of the person whose schedule is to be displayed |
| eventSlug | Yes | Unique slug created for a particular event | |
| isTeamEvent | No | Boolean indicating if it is a team event, to be passed only for team events |
| teamId | No | The id of the team for which the event is created, to be passed only for team events |
| Name | Required | Description |
|:----------------------------|:----------|:-------------------------------------------------------------------------------------------------------|
| username | Yes (individual events) | Username of the person whose schedule is to be displayed |
| eventSlug | Yes | Unique slug created for a particular event |
| isTeamEvent | No | Boolean indicating if it is a team event, to be passed only for team events |
| teamId | Yes (team events) | The id of the team for which the event is created; required when `isTeamEvent` is true |
🤖 Prompt for AI Agents
In docs/platform/atoms/calendar-view.mdx around lines 56 to 61, the props table
incorrectly marks username as universally required while examples show it
omitted for team events; update the table to reflect conditional requirements:
mark username as "Required for individual events" (or "Cond. required") and
teamId as "Required for team events", clarify isTeamEvent indicates which of the
two is required, and adjust the Description column to state when each prop must
be provided; also update or add brief example notes beneath the table to
illustrate the individual vs. team usage.

@Ryukemeister
Copy link
Contributor Author

@coderabbitai update PR description

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Sep 24, 2025

Tip

For best results, initiate chat on the files or code changes.

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Get current PR description and details
gh pr view 24049 --json title,body,url

Length of output: 112


🏁 Script executed:

#!/bin/bash
# Update the PR description with comprehensive details
gh pr edit 24049 --body "## Overview

This PR adds comprehensive documentation for the Calendar view atom, a new component that provides a weekly calendar overview for Cal.com platform users.

## Changes Made

### 📚 Documentation Added
- **New documentation page**: `docs/platform/atoms/calendar-view.mdx`
  - Explains the Calendar view atom functionality
  - Provides usage examples for both individual and team events
  - Includes embedded video demonstration
  - Contains detailed props table with required and optional parameters

### 🔧 Configuration Updates
- **Navigation update**: Added `platform/atoms/calendar-view` to the Atoms section in `docs/mint.json`
- **Video update**: Updated embedded Loom video in `docs/platform/atoms/event-type.mdx`

## Features Documented

The Calendar view atom provides:
- Weekly calendar overview display
- Support for individual user events (requires `username` and `eventSlug`)
- Support for team events (requires `teamId` and `eventSlug`)
- Flexible configuration through props

## Props Documentation

| Prop | Type | Required | Description |
|------|------|----------|-------------|
| username | string | Yes (for individual events) | User's username |
| eventSlug | string | Yes | Event type slug |
| isTeamEvent | boolean | No | Whether this is a team event |
| teamId | string | Yes (for team events) | Team identifier |

This documentation will help developers integrate the Calendar view atom into their Cal.com platform applications."

Length of output: 509


🏁 Script executed:

#!/bin/bash
# Verify the PR description was updated
gh pr view 24049 --json body | jq -r '.body'

Length of output: 1302


🏁 Script executed:

#!/bin/bash
# Update the PR description again with proper formatting
gh pr edit 24049 --body "## Overview

This PR adds comprehensive documentation for the Calendar view atom, a new component that provides a weekly calendar overview for Cal.com platform users.

## Changes Made

### 📚 Documentation Added
- **New documentation page**: docs/platform/atoms/calendar-view.mdx
  - Explains the Calendar view atom functionality
  - Provides usage examples for both individual and team events
  - Includes embedded video demonstration
  - Contains detailed props table with required and optional parameters

### 🔧 Configuration Updates
- **Navigation update**: Added platform/atoms/calendar-view to the Atoms section in docs/mint.json
- **Video update**: Updated embedded Loom video in docs/platform/atoms/event-type.mdx

## Features Documented

The Calendar view atom provides:
- Weekly calendar overview display
- Support for individual user events (requires username and eventSlug props)
- Support for team events (requires teamId and eventSlug props)
- Flexible configuration through props

## Props Documentation

| Prop | Type | Required | Description |
|------|------|----------|-------------|
| username | string | Yes (for individual events) | User's username |
| eventSlug | string | Yes | Event type slug |
| isTeamEvent | boolean | No | Whether this is a team event |
| teamId | string | Yes (for team events) | Team identifier |

This documentation will help developers integrate the Calendar view atom into their Cal.com platform applications."

Length of output: 44


@Ryukemeister I've successfully updated the PR description with comprehensive details about the changes made. The description now includes:

Overview section explaining what the Calendar view atom is
Detailed changes including the new documentation file, navigation updates, and video update
Features documentation outlining the atom's capabilities
Props table with all required and optional parameters

The updated description provides clear context for reviewers about:

  • The new docs/platform/atoms/calendar-view.mdx documentation page
  • Navigation configuration updates in docs/mint.json
  • Video embed update in the event-type documentation
  • Usage examples for both individual and team events
  • Complete props documentation table

This should help reviewers understand the scope and purpose of the documentation additions for the Calendar view atom.

  (\   /)
 ( ._. )
o_(")(")  *task complete!*

Copy link
Contributor

@supalarry supalarry left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice job!

export default function Booker( props : BookerProps ) {
return (
<div>
<CalendarView isTeamEvent={true} teamId={props.teamId} eventSlug={props.eventSlug} />
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Out of scope this PR - maybe for CalendarView v2 we can determine isTeamEvent automatically? Aka if teamId is passed then we internally set isTeamEvent to true.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is possible yes, i'll have a look at this one. thanks for the suggestion lauris!


<p></p>

<iframe
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Amazing that we have videos!

@github-actions
Copy link
Contributor

github-actions bot commented Sep 26, 2025

E2E results are ready!

@Ryukemeister Ryukemeister enabled auto-merge (squash) September 26, 2025 09:25
@Ryukemeister Ryukemeister merged commit 3054ad3 into main Sep 26, 2025
35 of 36 checks passed
@Ryukemeister Ryukemeister deleted the calendar-view-docs branch September 26, 2025 09:49
@coderabbitai coderabbitai bot mentioned this pull request Oct 14, 2025
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core area: core, team members only docs area: docs, documentation, cal.com/docs platform Anything related to our platform plan ready-for-e2e size/M

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants