awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
atomiks avatar

atomiks/tippyjsArchived

0
View on GitHub↗
12,270 stars·540 forks·JavaScript·MIT·15 viewsatomiks.github.io/tippyjs↗

Tippyjs

Tippy.js is a JavaScript tooltip library and interactive popup framework used to create tooltips, popovers, and dropdowns. It functions as a floating UI component toolkit that renders content relative to a reference element with support for automatic positioning, flip-positioning, and offsets.

The library acts as an accessible overlay manager, using ARIA attributes and focus management to ensure screen reader compatibility. It also serves as a CSS animation tool, providing utilities for transitions, spring physics, and themes to manage the visual entry and exit of floating interface elements.

The toolkit covers broad capability areas including dynamic positioning and layout synchronization, event-driven trigger logic for various input methods, and a plugin architecture for extending lifecycle hooks. It supports diverse content management options, from rendering rich HTML and dynamic data to implementing headless positioning logic and coordinate-based context menus.

Performance is managed through strategies such as event delegation, deferred popup creation, and the use of singleton popup instances to reduce DOM overhead.

Features

  • Floating Element Positioning - Provides a geometric calculation engine for positioning overlays relative to target elements with automatic flip-positioning.
  • Tooltips - Implements small informational popups that appear when users hover over or focus on specific elements.
  • DOM-Based Content Renderers - Renders diverse content types including plain text, DOM elements, or function return values within popups.
  • Accessibility Attribute Bindings - Provides mechanisms for linking reference elements and popup content using unique ARIA identifiers.
  • Tooltips - A comprehensive library for creating tooltips, popovers, and dropdowns with automatic positioning and accessibility.
  • Popup Trigger Mapping - Activates popovers by mapping specific DOM events like hover, focus, or click to visibility state changes.
  • Floating Element Rendering - Renders floating content relative to a reference element with configurable placement, offsets, and custom HTML.
  • Interaction Triggers - Allows developers to define which user events, such as hover, focus, or click, trigger the tooltip.
  • Interactive Popup Frameworks - Offers a framework for building complex menus and popovers that allow user interaction within the floating element.
  • Anchor Attachments - Provides multiple ways to attach informational popups to elements using CSS selectors, DOM elements, or data attributes.
  • Popover Overlays - Provides floating containers with interactive content that remain positioned relative to a trigger element.
  • Popover Generation - Implements the core capability of generating floating popovers containing text or HTML anchored to reference elements.
  • Overlay Managers - Manages ARIA attributes and focus order for floating content to ensure screen reader compatibility.
  • Overlay Visibility Controls - Offers programmatic methods to show or hide popups independently of user interaction events.
  • Reference-Anchor Models - Ensures floating popups remain anchored to their reference elements during window resizing or scrolling.
  • UI Event Triggers - Activates popovers using specific user events such as clicks, focus, or mouse enters with optional timing delays.
  • Floating UI Overlays - Renders content relative to a reference element with support for automatic positioning, flip-positioning, and offsets.
  • Accessible Floating Overlays - Implements floating elements with ARIA attributes to ensure screen reader compatibility and keyboard navigation.
  • Accessibility Attribute Mapping - Implements dynamic mapping of internal popup states to ARIA attributes for assistive technology support.
  • Popup Transitions - Implements configurable entry and exit animations for floating elements, including transition types, durations, and inertia effects.
  • Contextual Menus - Enables the creation of custom right-click or coordinate-based menus that appear at the point of interaction.
  • Configuration Inheritance - Applies a hierarchical set of shared properties to all instances to ensure visual and behavioral consistency.
  • Global Defaults - Provides centralized configuration for applying consistent settings across all popup instances.
  • Extensible Plugin Architectures - Ships a modular framework for adding custom behaviors and lifecycle hooks to overlay instances.
  • Headless Component Logic - Implements a headless pattern that manages positioning and state logic while leaving the visual rendering to the developer.
  • Hook-Based Plugin Systems - Extends core functionality by registering custom logic into lifecycle events like creation, showing, and hiding.
  • Screen Reader Optimizations - Manages programmatic focus and announcement consolidation so screen readers describe tooltips upon element focus.
  • Spring Physics Configurations - Uses CSS timing functions to simulate spring physics for elastic, bouncing entry and exit animations.
  • CSS Animation Utilities - Provides utilities for applying CSS transitions, spring physics, and themes to floating interface elements.
  • Cursor Trajectory Tracking - Updates floating element positions in real-time by tracking the coordinates of the mouse or touch cursor.
  • CSS Styling - Supports styling the appearance and arrow colors of popups using custom CSS and data attributes.
  • Design Systems - Integrates with design systems by allowing popups to be styled with predefined CSS classes.
  • Detached Popup Triggers - Allows a popup to be positioned relative to an element different from the one that triggered its appearance.
  • Dynamic Element Tracking - Renders real-time data or complex HTML inside a popup that tracks the mouse or follows a moving element.
  • Position Synchronization - Continuously updates tooltip positions to track reference elements that are animating or changing layout.
  • Floating Element Arrows - Provides directional pointers and rounded arrows that visually connect the popup to its trigger.
  • Nested Menus - Supports the creation of multi-level hierarchical hover menus by nesting popovers.
  • Floating Content Styling - Allows application of custom themes, transition animations, and visual markers to floating elements.
  • Tooltip Configurations - Allows defining a base set of formatting and styling properties for all initialized tooltips.
  • Animation Pipelines - Controls entry and exit transitions by managing class toggles and timing functions for spring and inertial effects.
  • Multi-Input Interaction Handlers - Ensures accessibility by activating tooltips through mouse hover, keyboard focus, or touch taps.
  • Focus Management - Controls popover visibility and focus order to ensure seamless keyboard navigation for users.
  • Runtime UI Content Updates - Allows modifying the text, layout, or configuration of an active popup after it has been rendered.
  • Interactive Overlay Content - Allows users to interact with content inside the popup and prevents clipping in overflow-hidden containers.
  • Multi-Trigger Popups - Reduces DOM overhead by reusing a single popup instance across multiple different trigger elements.
  • Multiple Popup Instance Managers - Provides direct references to tooltip instances to programmatically manage their behavior and visibility.
  • Popup Positioning Engines - Allows precise control of the spacing and distance between the reference element and the popup via offsets.
  • Utilities and Helpers - Highly customizable tooltip and popover library.

Star history

Star history chart for atomiks/tippyjsStar history chart for atomiks/tippyjs

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does atomiks/tippyjs do?

Tippy.js is a JavaScript tooltip library and interactive popup framework used to create tooltips, popovers, and dropdowns. It functions as a floating UI component toolkit that renders content relative to a reference element with support for automatic positioning, flip-positioning, and offsets.

What are the main features of atomiks/tippyjs?

The main features of atomiks/tippyjs are: Floating Element Positioning, Tooltips, DOM-Based Content Renderers, Accessibility Attribute Bindings, Popup Trigger Mapping, Floating Element Rendering, Interaction Triggers, Interactive Popup Frameworks.

Which projects share features with atomiks/tippyjs?

Projects with overlapping indexed features include: cosscom/coss — Coss is an accessible UI component library and design system framework used to build web interfaces. It provides a… chakra-ui/zag — Zag is a headless UI state machine library that provides unstyled component logic to ensure consistent behavior across… melt-ui/melt-ui — Melt UI is a headless UI library for Svelte that provides a collection of unstyled, accessible component builders. It… unovue/reka-ui. mui/base-ui — Base UI is a headless component library and unstyled framework providing accessible interface primitives. It decouples… chinchang/hint.css — hint.css is a pure CSS tooltip library and styling framework used to create accessible informational pop-ups. It…

Projects sharing features with Tippyjs

These projects share indexed features with Tippyjs. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • cosscom/cosscosscom avatar

    cosscom/coss

    10,125View on GitHub↗

    Coss is an accessible UI component library and design system framework used to build web interfaces. It provides a comprehensive kit of interactive elements and layout building blocks that follow screen reader and keyboard navigation standards. The project functions as a UI overlay management library, offering specialized tools for implementing anchored popovers, tooltips, and slide-out panels with smooth transitions. It includes a set of accessible form primitives and selection controls to ensure compatibility across different assistive technologies. Its broader capabilities cover the const

    TypeScriptnextjsradix-uireact
    View on GitHub↗10,125
  • chakra-ui/zagchakra-ui avatar

    chakra-ui/zag

    5,121View on GitHub↗

    Zag is a headless UI state machine library that provides unstyled component logic to ensure consistent behavior across different rendering engines. It functions as a toolkit for modeling complex user interface interactions using statecharts, decoupling the underlying logic and accessibility attributes from visual styling. The library is framework-agnostic, utilizing specialized adapters to bridge its state machine logic with various JavaScript libraries such as React, Solid, Vue, and Svelte. This approach allows developers to maintain a single interaction model while applying any CSS or styli

    TypeScripta11yaccessibilityagnostic
    View on GitHub↗5,121
  • melt-ui/melt-uimelt-ui avatar

    melt-ui/melt-ui

    4,167View on GitHub↗

    Melt UI is a headless UI library for Svelte that provides a collection of unstyled, accessible component builders. It functions as an accessible component framework and state management tool, offering the logic and state required to build interface elements that follow WAI-ARIA standards and support keyboard navigation without imposing specific visual styles. The library features a floating element positioning engine that manages the placement of popovers, tooltips, and menus relative to trigger elements. This system utilizes portals to prevent layout clipping and incorporates automatic overf

    TypeScript
    View on GitHub↗4,167
  • unovue/reka-uiunovue avatar

    unovue/reka-ui

    6,574View on GitHub↗
    Vueaccessibilityaccessiblecomponent-library
    View on GitHub↗6,574
  • Compare all 30 related projects→