Popover
Used to show detailed information inside a pop-up
Provide contextual content with suitable naming, focus and dismissal. Preserve modal portal boundaries when nested and check viewport-edge positioning.
Installation and initialization
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
Initialize ChakraProvider with defaultSystem and Emotion before rendering. Preserve the host React version and inspect peer compatibility. Official npm installation supplies components, not these example source files. Use the resource setup guide for locale, next-themes and framework-specific SSR; copy the selected example source separately from npm installation.
Complete native usage example
This is the actual pinned example, not a generic API mock. Copy its source closure and retain the named export. Additional imports are listed per example below.
import { Button, Input, Popover, Portal, Text } from "@chakra-ui/react"
export const PopoverBasic = () => {
return (
<Popover.Root>
<Popover.Trigger asChild>
<Button size="sm" variant="outline">
Click me
</Button>
</Popover.Trigger>
<Portal>
<Popover.Positioner>
<Popover.Content>
<Popover.Arrow />
<Popover.Body>
<Popover.Title fontWeight="medium">Naruto Form</Popover.Title>
<Text my="4">
Naruto is a Japanese manga series written and illustrated by
Masashi Kishimoto.
</Text>
<Input placeholder="Your fav. character" size="sm" />
</Popover.Body>
</Popover.Content>
</Popover.Positioner>
</Portal>
</Popover.Root>
)
}
All examples and reproduction requirements
Names identify demos, not component variant props. Copy every sourceFiles entry for the selected example. The compositions alias denotes local files, not a package. Preserve relative imports or rewrite the alias to your project's actual path. React peers are inspected separately; editor examples retain the coherent pinned Tiptap extension family.
Basic
popover-basic · Named export PopoverBasic · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-basic.tsx
Controlled
popover-controlled · Named export PopoverControlled · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-controlled.tsx
With Multiple Triggers
popover-with-multiple-triggers · Named export PopoverWithMultipleTriggers · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-with-multiple-triggers.tsx
With Sizes
popover-with-sizes · Named export PopoverWithSizes · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-with-sizes.tsx
Lazy Mounted
popover-lazy-mounted · Named export PopoverLazyMounted · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-lazy-mounted.tsx
With Placement
popover-with-placement · Named export PopoverWithPlacement · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-with-placement.tsx
With Offset
popover-with-offset · Named export PopoverWithOffset · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-with-offset.tsx
With Same Width
popover-with-same-width · Named export PopoverWithSameWidth · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-with-same-width.tsx
Nested
popover-nested · Named export PopoverNested · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-nested.tsx
With Initial Focus
popover-with-initial-focus · Named export PopoverWithInitialFocus · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-with-initial-focus.tsx
With Form
popover-with-form · Named export PopoverWithForm · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-with-form.tsx
With Custom Bg
popover-with-custom-bg · Named export PopoverWithCustomBg · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-with-custom-bg.tsx
Open From Dialog
popover-open-from-dialog · Named export PopoverOpenFromDialog · original upstream example
npm install @chakra-ui/react@3.37.0 @emotion/react@11.14.0
vendor/apps/compositions/src/examples/popover-open-from-dialog.tsx
Native API and source references
The source viewer retains original declarations, imports and inheritance. Ark UI event contracts, Chakra style props and recipe types stay in their native packages; this guide does not flatten or invent their defaults. Code comments remain original source, not translated prose.
npm/@chakra-ui/react@3.37.0/dist/types/components/popover/index.d.tsnpm/@chakra-ui/react@3.37.0/dist/types/components/popover/namespace.d.tsnpm/@chakra-ui/react@3.37.0/dist/types/components/popover/popover.d.ts
State and installation checks
Run strict types, the target production build and real interactions. Test labels/focus/keyboard, both themes, narrow layout, empty/loading/error states where supported and cleanup after unmount. Remote demo endpoints, uploads and downloads are constrained in the preview; configure your own services. Copying a command or reaching preview-ready does not prove installation or backend success.
Provenance and license boundaries
https://github.com/chakra-ui/chakra-ui/tree/2e7517745cff2fcde0b8012f136cf99611ff262a
These are JGuang practical bilingual notes, not a full translation of upstream MDX. Original documentation and example bytes remain in vendor. Preserve repository MIT, compositions ISC metadata and separate dependency notices. The original metadata discrepancy and any missing full notices remain explicit review items; paid Chakra Pro is excluded.