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
fgnass avatar

fgnass/spin.js

0
View on GitHub↗
9,251 stars·1,006 forks·CSS·MIT·16 viewsspin.js.org↗

Spin.js

spin.js is a CSS loading spinner library used to signal background processes through resolution-independent activity indicators. It provides a JavaScript animation wrapper that manages the lifecycle and document injection of these elements, allowing for the programmatic start and stop of loading states.

The project allows for the definition of spinner geometry, colors, and animation speed to match specific design systems. Users can customize the visual appearance through parameters such as line count, radius, and shadow effects, while also controlling rotation direction and timing.

The library covers general user interface patterns for asynchronous process feedback and loading state visualization. It utilizes CSS keyframe animations for rendering and includes capabilities for adjusting layout positioning and stacking order relative to parent elements.

Features

  • Spinners - Provides resolution-independent loading spinners created with CSS keyframe animations to signal background processes.
  • Activity Indicators - Provides a highly customizable activity indicator for giving visual feedback during asynchronous operations.
  • CSS Animation Utilities - Utilizes a utility set of CSS keyframe animations to render rotating activity indicators.
  • Visual Process Feedback - Provides immediate visual cues to users to signal the status of background tasks or API requests.
  • Loading State Indicators - Visualizes the active state of background processes to prevent the user from perceiving the application as frozen.
  • CSS Loading Spinner Libraries - Ships a complete library of resolution-independent activity indicators created with CSS keyframe animations.
  • Resolution-Independent Rendering - Uses relative units and vector-like shapes to ensure the spinner remains sharp across different screen sizes.
  • Advanced Styling - Allows detailed configuration of visual styles including line count, radius, and shadow effects.
  • Animation Control - Enables precise control over the rotation direction, speed, and timing of the activity indicator.
  • Appearance Customization - Provides capabilities to define visual geometry, colors, and line thickness to align with specific design systems.
  • Lifecycle Management - Manages the lifecycle of the spinner by programmatically adding or removing the element from the document.
  • Style Configurations - Provides a configuration layer to define custom geometry, colors, and animation speeds for loading indicators.
  • Lifecycle Wrappers - Provides a JavaScript wrapper to manage the lifecycle and document injection of animated loading elements.
  • CSS Animation Patterns - Implements resolution-independent spinning elements using pure CSS keyframe patterns for cross-browser performance.
  • DOM Element Injection Utilities - Programmatically injects and removes spinner elements from the DOM to control the animation lifecycle.
  • 进度条/加载动画(Loading) - Listed in the “进度条/加载动画(Loading)” section of the Awesome Frontend awesome list.
  • Loading Indicators - Spinning progress indicator.

Star history

Star history chart for fgnass/spin.jsStar history chart for fgnass/spin.js

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 fgnass/spin.js do?

spin.js is a CSS loading spinner library used to signal background processes through resolution-independent activity indicators. It provides a JavaScript animation wrapper that manages the lifecycle and document injection of these elements, allowing for the programmatic start and stop of loading states.

What are the main features of fgnass/spin.js?

The main features of fgnass/spin.js are: Spinners, Activity Indicators, CSS Animation Utilities, Visual Process Feedback, Loading State Indicators, CSS Loading Spinner Libraries, Resolution-Independent Rendering, Advanced Styling.

Which projects share features with fgnass/spin.js?

Projects with overlapping indexed features include: lukehaas/css-loaders — This project is a collection of lightweight animated loading indicators and pure CSS UI components. It provides a… hakimel/ladda — Ladda is an animated button library that provides loading button components to signal processing states during web… epicmaxco/epic-spinners — This project is a library of animated UI elements and CSS loading spinners designed to indicate background processes… tobiasahlin/spinkit — SpinKit is a UI component library and CSS animation library focused on providing a collection of animated loading… ninjaprox/nvactivityindicatorview — NVActivityIndicatorView is a library of themed and configurable animation views used to replace standard system… harlonwang/avloadingindicatorview — AVLoadingIndicatorView is a reusable iOS user interface component designed to display background processing states. It…

Projects sharing features with Spin.js

These projects share indexed features with Spin.js. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • lukehaas/css-loaderslukehaas avatar

    lukehaas/css-loaders

    7,058View on GitHub↗

    This project is a collection of lightweight animated loading indicators and pure CSS UI components. It provides a library of pre-made styles and keyframes for rendering visual motion effects and loading spinners without the use of JavaScript. The library prioritizes minimal document object model overhead by utilizing a single-element HTML structure for each loader. It employs pseudo-elements to create complex shapes and relies on font-size based scaling to ensure proportional resizing across different dimensions. These components function as user interface feedback systems, providing visual

    CSS
    View on GitHub↗7,058
  • hakimel/laddahakimel avatar

    hakimel/Ladda

    7,796View on GitHub↗

    Ladda is an animated button library that provides loading button components to signal processing states during web interactions. It serves as a form submission indicator that replaces button text with a loading spinner during asynchronous operations to provide user feedback and prevent multiple clicks. The library focuses on asynchronous UI feedback and frontend state visualization. It links the visual appearance of buttons to the loading state of API calls and manages the user experience during form submissions. Capabilities include the creation of buttons with integrated animation styles a

    JavaScript
    View on GitHub↗7,796
  • epicmaxco/epic-spinnersepicmaxco avatar

    epicmaxco/epic-spinners

    3,914View on GitHub↗

    This project is a library of animated UI elements and CSS loading spinners designed to indicate background processes to users. It provides a collection of pre-built Vue components that wrap CSS animations for integration into web applications. The library allows for the customization of spinner appearance, including the adjustment of size, color, and animation speed to match a specific visual brand. These indicators provide visual feedback during asynchronous operations to ensure the frontend user experience remains active.

    Vue
    View on GitHub↗3,914
  • tobiasahlin/spinkittobiasahlin avatar

    tobiasahlin/SpinKit

    19,351View on GitHub↗

    SpinKit is a UI component library and CSS animation library focused on providing a collection of animated loading indicators and spinners. It serves as a set of lightweight visual transitions designed to create motion and feedback within web interfaces. The library implements these indicators using pure CSS rendering and keyframe animations to notify users of active background processes. It uses a class-based styling system and minimal HTML structures to render visual cues without relying on scripts or images. Appearance can be adjusted through CSS variables and custom styles to modify color

    CSS
    View on GitHub↗19,351
  • Compare all 30 related projects→