Skip to content

Conversation

@pasqualevitiello
Copy link
Contributor

@pasqualevitiello pasqualevitiello commented Dec 19, 2025

What does this PR do?

Standardizes typography across the app by switching body text to Cal Sans UI and renaming the heading font from --font-cal/font-cal to --font-heading/font-heading. Font loading is now centralized via @coss/ui/fonts for consistent usage and simpler setup.

Changes

  • Added shared fonts in @coss/ui/fonts (fontSans = Cal Sans UI variable, fontHeading = Cal Sans SemiBold)
  • Applied fontSans and fontHeading variables on body in app layout and _document; removed scattered local font imports
  • Renamed all font-cal usages to font-heading and updated related utilities (e.g., prose-h3:font-heading)
  • Updated !font-cal to font-heading! (Tailwind v4 syntax)
  • Removed redundant font-weight classes (font-semibold, font-medium, etc.) from elements with font-heading since the heading font is already semibold
  • Updated theme tokens to use --font-heading and aligned platform/global styles

Migration Guide

  • Replace class font-cal with font-heading and CSS var --font-cal with --font-heading
  • Replace !font-cal with font-heading! (Tailwind v4 important syntax)
  • Import fonts from @coss/ui/fonts and add ${fontSans.variable} ${fontHeading.variable} to the body class
  • Update any prose utilities from prose-h3:font-cal to prose-h3:font-heading
  • Remove font-weight classes from elements using font-heading (the font is already semibold)

Mandatory Tasks (DO NOT REMOVE)

  • I have self-reviewed the code (A decent size PR without self-review might be rejected).
  • I have updated the developer docs in /docs if this PR makes changes that would require a documentation change. N/A - internal font changes only.
  • I confirm automated tests are in place that prove my fix is effective or that my feature works.

How should this be tested?

  1. Verify headings throughout the app render with the correct Cal Sans SemiBold font
  2. Verify body text uses Cal Sans UI
  3. Check that the Tailwind v4 important syntax (font-heading!) works correctly
  4. Visually confirm no font-weight regressions after removing explicit weight classes

Human Review Checklist

  • Verify headings look correct without explicit font-semibold/font-medium classes (the heading font is inherently semibold)
  • Confirm font-heading! syntax works correctly in Tailwind v4
  • Check font loading works across web app and platform atoms

Link to Devin run: https://app.devin.ai/sessions/fb0be98a05a444bd9a71539f53701308
Requested by: pasquale@cal.com

@vercel
Copy link

vercel bot commented Dec 19, 2025

Deployment failed with the following error:

You don't have permission to create a Preview Deployment for this Vercel project: cal-eu.

View Documentation: https://vercel.com/docs/accounts/team-members-and-roles

@vercel
Copy link

vercel bot commented Dec 19, 2025

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

Project Deployment Review Updated (UTC)
cal-com-v2 Error Error Jan 10, 2026 11:19pm
4 Skipped Deployments
Project Deployment Review Updated (UTC)
api-v2 Ignored Ignored Preview Jan 10, 2026 11:19pm
cal Ignored Ignored Jan 10, 2026 11:19pm
cal-companion Ignored Ignored Preview Jan 10, 2026 11:19pm
cal-eu Ignored Ignored Jan 10, 2026 11:19pm

@github-actions
Copy link
Contributor

This PR has been marked as stale due to inactivity. If you're still working on it or need any help, please let us know or update the PR to keep it active.

@github-actions github-actions bot added the Stale label Dec 27, 2025
devin-ai-integration bot and others added 2 commits January 7, 2026 12:32
Co-Authored-By: pasquale@cal.com <pasquale@cal.com>
Co-Authored-By: pasquale@cal.com <pasquale@cal.com>
@vercel
Copy link

vercel bot commented Jan 7, 2026

Deployment failed with the following error:

You don't have permission to create a Preview Deployment for this Vercel project: cal.

View Documentation: https://vercel.com/docs/accounts/team-members-and-roles

@vercel
Copy link

vercel bot commented Jan 7, 2026

Deployment failed with the following error:

You don't have permission to create a Preview Deployment for this Vercel project: cal-companion.

View Documentation: https://vercel.com/docs/accounts/team-members-and-roles

@PeerRich PeerRich marked this pull request as ready for review January 7, 2026 13:45
@PeerRich PeerRich requested review from a team as code owners January 7, 2026 13:46
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

4 issues found across 74 files

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="apps/web/app/layout.tsx">

<violation number="1" location="apps/web/app/layout.tsx:109">
P1: Typo: Extra trailing double quote `"` inside the template literal will be included as part of the className, breaking the `antialiased` class application.</violation>
</file>

<file name="packages/platform/atoms/globals.css">

<violation number="1" location="packages/platform/atoms/globals.css:245">
P2: Duplicate CSS variable declaration. The line `--font-cal: var(--font-cal);` was changed to `--font-heading: var(--font-heading);`, but `--font-heading` is already declared on the preceding line. This creates a redundant duplicate that should be removed.</violation>
</file>

<file name="packages/coss-ui/src/fonts/README.md">

<violation number="1" location="packages/coss-ui/src/fonts/README.md:26">
P2: Documentation incorrectly states `fontHeading` uses "Cal Sans Regular font" but the implementation uses `CalSans-SemiBold.woff2`. Should be "Cal Sans SemiBold font" to match the actual font file.</violation>

<violation number="2" location="packages/coss-ui/src/fonts/README.md:30">
P2: Incorrect directory path in documentation. Should be `packages/coss-ui/src/fonts/` instead of `packages/ui/src/fonts/` to match the actual file location.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

</head>
<body
className="dark:bg-default bg-subtle antialiased"
className={`${fontSans.variable} ${fontHeading.variable} font-sans dark:bg-default bg-subtle antialiased"`}
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Jan 7, 2026

Choose a reason for hiding this comment

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

P1: Typo: Extra trailing double quote " inside the template literal will be included as part of the className, breaking the antialiased class application.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At apps/web/app/layout.tsx, line 109:

<comment>Typo: Extra trailing double quote `"` inside the template literal will be included as part of the className, breaking the `antialiased` class application.</comment>

<file context>
@@ -114,16 +105,8 @@ export default async function RootLayout({ children }: { children: React.ReactNo
-      </head>
       <body
-        className="dark:bg-default bg-subtle antialiased"
+        className={`${fontSans.variable} ${fontHeading.variable} font-sans dark:bg-default bg-subtle antialiased"`}
         style={
           isEmbed
</file context>
Suggested change
className={`${fontSans.variable} ${fontHeading.variable} font-sans dark:bg-default bg-subtle antialiased"`}
className={`${fontSans.variable} ${fontHeading.variable} font-sans dark:bg-default bg-subtle antialiased`}

✅ Addressed in a2123cb

--radius: var(--radius);
--font-heading: var(--font-heading);
--font-cal: var(--font-cal);
--font-heading: var(--font-heading);
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Jan 7, 2026

Choose a reason for hiding this comment

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

P2: Duplicate CSS variable declaration. The line --font-cal: var(--font-cal); was changed to --font-heading: var(--font-heading);, but --font-heading is already declared on the preceding line. This creates a redundant duplicate that should be removed.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/platform/atoms/globals.css, line 245:

<comment>Duplicate CSS variable declaration. The line `--font-cal: var(--font-cal);` was changed to `--font-heading: var(--font-heading);`, but `--font-heading` is already declared on the preceding line. This creates a redundant duplicate that should be removed.</comment>

<file context>
@@ -242,7 +242,7 @@
     --radius: var(--radius);
     --font-heading: var(--font-heading);
-    --font-cal: var(--font-cal);
+    --font-heading: var(--font-heading);
     --shadow-dropdown: var(--shadow-dropdown);
     --shadow-switch-thumb: var(--shadow-switch-thumb);
</file context>

✅ Addressed in a2123cb


## Adding New Fonts

1. Place the font file in this directory (`packages/ui/src/fonts/`)
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Jan 7, 2026

Choose a reason for hiding this comment

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

P2: Incorrect directory path in documentation. Should be packages/coss-ui/src/fonts/ instead of packages/ui/src/fonts/ to match the actual file location.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/coss-ui/src/fonts/README.md, line 30:

<comment>Incorrect directory path in documentation. Should be `packages/coss-ui/src/fonts/` instead of `packages/ui/src/fonts/` to match the actual file location.</comment>

<file context>
@@ -0,0 +1,49 @@
+
+## Adding New Fonts
+
+1. Place the font file in this directory (`packages/ui/src/fonts/`)
+2. Add a new font configuration in `index.ts`:
+
</file context>

✅ Addressed in a2123cb

## Available Fonts

- `fontSans` - Cal Sans UI variable font (supports multiple weights and modes)
- `fontHeading` - Cal Sans Regular font
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Jan 7, 2026

Choose a reason for hiding this comment

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

P2: Documentation incorrectly states fontHeading uses "Cal Sans Regular font" but the implementation uses CalSans-SemiBold.woff2. Should be "Cal Sans SemiBold font" to match the actual font file.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/coss-ui/src/fonts/README.md, line 26:

<comment>Documentation incorrectly states `fontHeading` uses "Cal Sans Regular font" but the implementation uses `CalSans-SemiBold.woff2`. Should be "Cal Sans SemiBold font" to match the actual font file.</comment>

<file context>
@@ -0,0 +1,49 @@
+## Available Fonts
+
+- `fontSans` - Cal Sans UI variable font (supports multiple weights and modes)
+- `fontHeading` - Cal Sans Regular font
+
+## Adding New Fonts
</file context>
Fix with Cubic

Copy link
Contributor

@eunjae-lee eunjae-lee left a comment

Choose a reason for hiding this comment

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

Overall it looks great in the app

Copy link
Contributor

@Ryukemeister Ryukemeister left a comment

Choose a reason for hiding this comment

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

test atoms, everything looks good!

@keithwillcode keithwillcode enabled auto-merge (squash) January 9, 2026 10:18
@keithwillcode keithwillcode merged commit c380ea8 into main Jan 9, 2026
68 of 70 checks passed
@keithwillcode keithwillcode deleted the feat/update-fonts branch January 9, 2026 10:42
PeerRich added a commit that referenced this pull request Jan 12, 2026
emrysal pushed a commit that referenced this pull request Jan 12, 2026
Anshumancanrock pushed a commit to Anshumancanrock/cal.com that referenced this pull request Jan 12, 2026
…6064)

* feat: rename --font-cal to --font-heading + use Cal Sans UI

* chore: remove font-weight from font-heading elements and CSS variables

Co-Authored-By: pasquale@cal.com <pasquale@cal.com>

* chore: remove unneeded css vars

* fix: cubic issues

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: pasquale@cal.com <pasquale@cal.com>
Co-authored-by: Rajiv Sahal <sahalrajiv-extc@atharvacoe.ac.in>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants