Skip to content

feat(studio): Sanity Studio UX — publish confirm, desk icons, slug uniqueness, collection panes#419

Open
ignmandagaran wants to merge 3 commits into
mainfrom
ignmandagaran/pagebuilder-feature-plan
Open

feat(studio): Sanity Studio UX — publish confirm, desk icons, slug uniqueness, collection panes#419
ignmandagaran wants to merge 3 commits into
mainfrom
ignmandagaran/pagebuilder-feature-plan

Conversation

@ignmandagaran

@ignmandagaran ignmandagaran commented Jun 25, 2026

Copy link
Copy Markdown
Member

Summary

Ports Sanity Studio editor-experience features from the basement-cli
page-builder template, adapted to this project's flat content model.

Changes

  • Publish action wrapped in a critical confirm dialog (production only)
  • Releases and Scheduled Drafts tabs hidden from the Studio navbar
  • Phosphor icons on every desk group/item
  • Slug uniqueness enforced on post, project, openPosition
  • Content/Company/Careers document lists replaced with a searchable,
    live-updating CollectionPane — Draft badge, thumbnail, /slug subtitle

Checklist

  • pnpm lint passes
  • Tested locally in dev mode
  • No breaking changes

… uniqueness

- Wrap the Publish action in a production-only critical confirm dialog so
  changes can't go live by accident (sanity/studio/confirm-publish-action.ts).
- Disable the Releases navbar tab (releases.enabled: false).
- Add Phosphor icons to every desk group/item.
- Enforce per-type slug uniqueness on post, project and openPosition via a
  shared isUnique helper (sanity/schemas/utils/unique-slug.ts).
@vercel

vercel Bot commented Jun 25, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
website-2k25 Ready Ready Preview, Comment Jul 16, 2026 3:21pm

releases.enabled: false hides Content Releases but not the separate
Scheduled Drafts tool; disable that too with scheduledDrafts.enabled: false.
…adges (#421)

* feat(studio): searchable, live, draft-badged collection panes

Phase 2 of the page-builder port, adapted to this project's flat content
model (no page/pageFolder hierarchy). Replaces the default
documentTypeListItem for the Content, Company and Careers collections with a
custom CollectionPane that adds:
- inline filter/search,
- live updates (client.listen + debounced refetch),
- a 'Draft' badge for documents with unpublished edits,
- a slug/role/client subtitle line.

'Create new' and document-edit intents are preserved via the structure
component's menuItems + canHandleIntent. Adds @sanity/ui as a direct dep
(already used transitively by sanity).

* feat(studio): hero thumbnail and slash-prefixed slug in collection rows

- Show a mini thumbnail (heroImage/cover/image/logo/avatar) on the left of each
  row, falling back to the collection's icon when there's no image.
- Render the slug subtitle as a path (/my-slug).
@ignmandagaran ignmandagaran changed the title feat(studio): publish confirm, hide releases, desk icons, slug uniqueness feat(studio): Sanity Studio DX — publish confirm, desk icons, slug uniqueness, collection panes Jul 16, 2026
@ignmandagaran ignmandagaran changed the title feat(studio): Sanity Studio DX — publish confirm, desk icons, slug uniqueness, collection panes feat(studio): Sanity Studio UX — publish confirm, desk icons, slug uniqueness, collection panes Jul 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant