Skip to content

Studio: "Send for review" / Publish does nothing with no error when submitting component #280

@hadiMh

Description

@hadiMh

Description

When publishing a component in 21st.dev Studio (dashboard), after pasting component code and filling metadata, clicking Send for review / Publish does nothing — no success message, no error toast, and the component status does not change to on_review.

Image

It suddenly close the loading and the form inputs get empty as below:

Image

The live preview works correctly (component renders as expected), so the issue appears to be with submission/validation/API feedback, not with the React code itself.

Steps to reproduce

  1. Log in to 21st.dev Studio
  2. Create a new component (category: Pricing Sections / UI Component)
  3. Paste main component code into the editor (code.tsx / src/components/ui/component.tsx)
  4. Configure the default demo (default.tsx / demos/default/code.demo.tsx) with slug default
  5. Confirm live preview renders correctly (3-tier pricing UI, billing toggle, featured center card)
  6. Fill metadata: Name, Slug, Description, Component type, at least one demo
  7. Upload Cover image (if required) and add tags
  8. Click Send for review / Publish

** I tried 3 times in different days and the submitting just saves my work in draft with lost form data: **

Image

Expected behavior

  • Submission succeeds or fails with a visible error message
  • Component status updates to on_review
  • User receives confirmation (toast, banner, or status change in UI)

Actual behavior

  • Button click shows the loading modal
  • Then it suddenly disapears and the form inputs lose their data
  • No error message and no success feedback
  • Status does not change to on_review
  • No obvious indication of what is missing or what failed

Environment

  • URL: https://21st.dev/studio (component publish / review flow)
  • Browser: Chrome 131
  • OS: macOS
  • Account: Logged in (yes)
  • Extensions / ad blockers: none
  • Network: home Wi‑Fi

Component details (for reproduction)

  • Type: UI Component (React + TypeScript)
  • Dependency: lucide-react (required for icons)
  • Main file size: ~1,094 lines / ~32 KB (code.tsx)
  • Demos: default (dark), optional light (light theme)
  • Default export: SaasPricingShowcase (default export present)
  • Demo default export: Demo function (default export present)

Preview works with:

  • Monthly / Yearly billing toggle
  • Three pricing tiers (Free, Pro featured center, Enterprise)
  • Trust strip and theme toggle

UI state observed before submit

  • Live preview renders correctly
  • Demo slug is default (as required by docs)
  • Cover image: filled
  • Tags: filled (4 tags)

Troubleshooting already tried

  • Refreshed page and re-saved component + demo files
  • Refreshed live preview
  • Re-logged in to 21st.dev
  • Checked browser DevTools → Network tab on submit (see below)
  • Tried incognito / private window (no extensions)

Console tab:

21st.dev-1779298600212.log

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions