Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

feat: organization v3 redesign onboarding#24967

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
sean-brydon merged 8 commits intomainfromfeat/onboarding-v3-orgs
Nov 13, 2025

Conversation

@sean-brydon
Copy link
Member

@sean-brydonsean-brydon commentedNov 6, 2025
edited by cubic-dev-aibot
Loading

What does this PR do?

  • Redesigns the organization onboarding flow by merging the brand and details pages
  • Improves the organization details page with a scrollable interface and visual previews
  • Adds a new organization-specific browser preview component

Visual Demo (For contributors especially)

Image Demo:

  • The PR replaces the separate brand page with an integrated details page that includes logo and banner uploads
  • The new organization browser view shows a preview of the organization profile with the selected branding

Mandatory Tasks (DO NOT REMOVE)

  • I have self-reviewed the code.
  • I have updated the developer docs in /docs if this PR makes changes that would require a documentation change. If N/A, write N/A here and check the checkbox.
  • I confirm automated tests are in place that prove my fix is effective or that my feature works.

How should this be tested?

  • Go through the organization onboarding flow
  • Test uploading logos and banners
  • Verify that the organization browser preview updates in real-time with the form inputs
  • Confirm that the form validation works correctly for organization name and slug
  • Check that the scrollable interface works properly with fade effects at top and bottom

Checklist

  • I have read thecontributing guide
  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have checked if my changes generate no new warnings

Summary by cubic

Split organization brand from the details step and added live previews for organizations and teams. Revamped org/team invites with reusable components, a dedicated email-invite page, and a CSV upload modal.

  • New Features

    • Separate Brand step with logo, banner, and color; instant org preview via OnboardingOrganizationBrowserView.
    • Teams browser preview added; invites include email substep (/onboarding/organization/invite/email, /onboarding/teams/invite/email), CSV upload (template + parsing), and Google Workspace (behind flag).
    • Shared components (EmailInviteForm, InviteOptions, RoleSelector) used across org and team invites.
  • Refactors

    • Updated org flow: Details → Brand → Teams → Invites; OnboardingLayout now supports dynamic step counts (org=4, team=3, personal=2).
    • UI polish (OnboardingCard header padding) and org-specific previews now replace generic views across details/brand/invites/teams; ensured org welcome modal takes precedence over personal.

Written for commitd9b55c0. Summary will update automatically on new commits.

@github-actions
Copy link
Contributor

github-actionsbot commentedNov 6, 2025
edited
Loading

Hey there and thank you for opening this pull request! 👋🏼

We require pull request titles to follow theConventional Commits specification and it looks like your proposed title needs to be adjusted.

Details:

No release type found in pull request title "organization brand customistaion". Add a prefix to indicate what kind of release this pull request corresponds to. For reference, see https://www.conventionalcommits.org/Available types: - feat: A new feature - fix: A bug fix - docs: Documentation only changes - style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc) - refactor: A code change that neither fixes a bug nor adds a feature - perf: A code change that improves performance - test: Adding missing tests or correcting existing tests - build: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm) - ci: Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs) - chore: Other changes that don't modify src or test files - revert: Reverts a previous commit

@sean-brydonsean-brydon marked this pull request as ready for reviewNovember 6, 2025 10:47
@graphite-appgraphite-appbot requested a review froma teamNovember 6, 2025 10:47
Copy link
Contributor

@cubic-dev-aicubic-dev-aibot left a comment

Choose a reason for hiding this comment

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

1 issue found across 5 files

Prompt for AI agents (all 1 issues)
Understand the root cause of the following 1 issues and fix them.<file name="apps/web/modules/onboarding/components/OnboardingCard.tsx"><violation number="1" location="apps/web/modules/onboarding/components/OnboardingCard.tsx:17">Reducing the header padding to px-1 misaligns the card header with the content/footer (still using px-5), so the title sits noticeably closer to the edge. Please keep the padding consistent at px-5 for visual alignment.</violation></file>

React with 👍 or 👎 to teach cubic. Mention@cubic-dev-ai to give feedback, ask questions, or re-run the review.

@vercel
Copy link

vercelbot commentedNov 6, 2025
edited
Loading

The latest updates on your projects. Learn more aboutVercel for GitHub.

2 Skipped Deployments
ProjectDeploymentPreviewCommentsUpdated (UTC)
calIgnoredIgnoredNov 13, 2025 10:07am
cal-euIgnoredIgnoredNov 13, 2025 10:07am

Copy link
Contributor

@cubic-dev-aicubic-dev-aibot left a comment

Choose a reason for hiding this comment

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

Reviewed changes from recent commits (found 4 issues).

4 issues found across 11 files

Prompt for AI agents (all 4 issues)
Understand the root cause of the following 4 issues and fix them.<file name="apps/web/modules/onboarding/components/InviteOptions.tsx"><violation number="1" location="apps/web/modules/onboarding/components/InviteOptions.tsx:16">Rule violated: **Enforce Singular Naming for Single-Item Functions**`InviteOptions` returns a single JSX element but the function name is plural, violating the Enforce Singular Naming for Single-Item Functions rule. Rename the export to a singular form so that the name aligns with the single return value.</violation><violation number="2" location="apps/web/modules/onboarding/components/InviteOptions.tsx:78">The copy-invite button is permanently disabled; use isSubmitting to control the disabled state so the handler remains reachable.</violation></file><file name="apps/web/modules/onboarding/components/RoleSelector.tsx"><violation number="1" location="apps/web/modules/onboarding/components/RoleSelector.tsx:20">The ToggleGroup is wrapped in `hidden md:flex`, so on small screens the entire role selector disappears and users cannot change the invite role. Remove the `hidden` so the control remains visible on mobile.</violation></file><file name="apps/web/modules/onboarding/components/EmailInviteForm.tsx"><violation number="1" location="apps/web/modules/onboarding/components/EmailInviteForm.tsx:67">Replace the hard-coded `rick@cal.com` fallback with a localized string via `t()` so the placeholder can be translated.</violation></file>

React with 👍 or 👎 to teach cubic. Mention@cubic-dev-ai to give feedback, ask questions, or re-run the review.

color="secondary"
className="h-8 w-full justify-center rounded-[10px]"
onClick={onCopyInviteLink}
disabled>
Copy link
Contributor

@cubic-dev-aicubic-dev-aibotNov 6, 2025
edited
Loading

Choose a reason for hiding this comment

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

The copy-invite button is permanently disabled; use isSubmitting to control the disabled state so the handler remains reachable.

Prompt for AI agents
Address the following comment on apps/web/modules/onboarding/components/InviteOptions.tsx at line 78:<comment>The copy-invite button is permanently disabled; use isSubmitting to control the disabled state so the handler remains reachable.</comment><file context>@@ -0,0 +1,89 @@+            color=&quot;secondary&quot;+            className=&quot;h-8 w-full justify-center rounded-[10px]&quot;+            onClick={onCopyInviteLink}+            disabled&gt;+            &lt;div className=&quot;flex items-center gap-1&quot;&gt;+              &lt;Icon name=&quot;link&quot; className=&quot;h-4 w-4&quot; /&gt;</file context>
Fix with Cubic

<TextField
labelSrOnly
{...form.register(`invites.${index}.email`)}
placeholder={emailPlaceholder||`rick@cal.com`}
Copy link
Contributor

@cubic-dev-aicubic-dev-aibotNov 6, 2025
edited
Loading

Choose a reason for hiding this comment

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

Replace the hard-codedrick@cal.com fallback with a localized string viat() so the placeholder can be translated.

Prompt for AI agents
Address the following comment on apps/web/modules/onboarding/components/EmailInviteForm.tsx at line 67:<comment>Replace the hard-coded `rick@cal.com` fallback with a localized string via `t()` so the placeholder can be translated.</comment><file context>@@ -0,0 +1,111 @@+                &lt;TextField+                  labelSrOnly+                  {...form.register(`invites.${index}.email`)}+                  placeholder={emailPlaceholder || `rick@cal.com`}+                  type=&quot;email&quot;+                  size=&quot;sm&quot;</file context>
Fix with Cubic

@sean-brydonsean-brydonforce-pushed thefeat/onboarding-fixes-and-polish branch from82f4a45 toe2edcedCompareNovember 6, 2025 14:30
@sean-brydonsean-brydonforce-pushed thefeat/onboarding-fixes-and-polish branch 2 times, most recently from965247a toa64fe5bCompareNovember 7, 2025 08:00
@sean-brydonsean-brydonforce-pushed thefeat/onboarding-fixes-and-polish branch froma64fe5b to3ff98feCompareNovember 7, 2025 08:18
@sean-brydonsean-brydon changed the titleorganization brand customistaionfeat: organization v3 redesign onboardingNov 7, 2025
@sean-brydonsean-brydonforce-pushed thefeat/onboarding-fixes-and-polish branch from3ff98fe toabe5192CompareNovember 7, 2025 08:55
@sean-brydonsean-brydon changed the base branch fromfeat/onboarding-fixes-and-polish tographite-base/24967November 12, 2025 10:07
@graphite-app
Copy link

graphite-appbot commentedNov 12, 2025
edited by sean-brydon
Loading

Merge activity

  • Nov 12, 10:07 AM UTC: This pull request can not be added to theGraphite merge queue. Please try rebasing and resubmitting to merge when ready.
  • Nov 12, 10:07 AM UTC:Graphite disabled "merge when ready" on this PR due to: a merge conflict with the target branch; resolve the conflict and try again..
  • Nov 13, 10:45 AM UTC:@sean-brydon merged this pull request withGraphite.

@sean-brydonsean-brydon changed the base branch fromgraphite-base/24967 tomainNovember 12, 2025 10:11
@sean-brydonsean-brydon dismissedeunjae-lee’sstale reviewNovember 12, 2025 10:11

The base branch was changed.

eunjae-lee
eunjae-lee previously approved these changesNov 12, 2025
eunjae-lee
eunjae-lee previously approved these changesNov 13, 2025
@sean-brydonsean-brydon merged commit19641ff intomainNov 13, 2025
40 of 41 checks passed
@sean-brydonsean-brydon deleted the feat/onboarding-v3-orgs branchNovember 13, 2025 10:45
Spandan-Mishra added a commit to Spandan-Mishra/cal.com that referenced this pull requestNov 16, 2025
- Redesigns the organization onboarding flow by merging the brand and details pages- Improves the organization details page with a scrollable interface and visual previews- Adds a new organization-specific browser preview component- The PR replaces the separate brand page with an integrated details page that includes logo and banner uploads- The new organization browser view shows a preview of the organization profile with the selected branding- [ ] I have self-reviewed the code.- [ ] I have updated the developer docs in /docs if this PR makes changes that would require a documentation change. If N/A, write N/A here and check the checkbox.- [ ] I confirm automated tests are in place that prove my fix is effective or that my feature works.- Go through the organization onboarding flow- Test uploading logos and banners- Verify that the organization browser preview updates in real-time with the form inputs- Confirm that the form validation works correctly for organization name and slug- Check that the scrollable interface works properly with fade effects at top and bottom- I have read the [contributing guide](https://github.com/calcom/cal.com/blob/main/CONTRIBUTING.md)- My code follows the style guidelines of this project- I have commented my code, particularly in hard-to-understand areas- I have checked if my changes generate no new warnings<!-- This is an auto-generated description by cubic. -->---Split organization brand from the details step and added live previews for organizations and teams. Revamped org/team invites with reusable components, a dedicated email-invite page, and a CSV upload modal.- **New Features**  - Separate Brand step with logo, banner, and color; instant org preview via OnboardingOrganizationBrowserView.  - Teams browser preview added; invites include email substep (/onboarding/organization/invite/email, /onboarding/teams/invite/email), CSV upload (template + parsing), and Google Workspace (behind flag).  - Shared components (EmailInviteForm, InviteOptions, RoleSelector) used across org and team invites.- **Refactors**  - Updated org flow: Details → Brand → Teams → Invites; OnboardingLayout now supports dynamic step counts (org=4, team=3, personal=2).  - UI polish (OnboardingCard header padding) and org-specific previews now replace generic views across details/brand/invites/teams; ensured org welcome modal takes precedence over personal.<sup>Written for commitd9b55c0. Summary will update automatically on new commits.</sup><!-- End of auto-generated description by cubic. -->
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

@cubic-dev-aicubic-dev-ai[bot]cubic-dev-ai[bot] left review comments

@eunjae-leeeunjae-leeeunjae-lee approved these changes

Assignees

No one assigned

Labels

consumercorearea: core, team members onlyready-for-e2esize/XXL

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

4 participants

@sean-brydon@eunjae-lee@keithwillcode

[8]ページ先頭

©2009-2025 Movatter.jp