11 Repos
Simulations based on spring dynamics simulating mass, tension, and friction.
Distinct from Physics Simulation: Focuses on spring-specific dynamics for UI motion rather than general environmental or rigid body physics simulation
Explore 11 awesome GitHub repositories matching part of an awesome list · Spring Physics. Refine with filters or upvote what's useful.
react-spring is a declarative animation framework for React that drives visual transitions through state-driven declarations. It functions as a motion engine where animations are defined as target values pursued by a physics engine based on application state. The library utilizes a spring physics engine to calculate natural movements by simulating mass, tension, and friction instead of relying on fixed durations. To maintain high frame rates, it updates DOM elements directly via references to bypass the standard React render cycle. The framework covers physics-based motion and state-driven t
Calculates natural movement by simulating mass, tension, and friction instead of using fixed durations.
Popmotion is a JavaScript animation library and declarative motion engine designed for creating programmatic motion and interactive transitions within web user interfaces. It provides a functional animation API that allows developers to define complex animation sequences through configuration objects rather than manual frame management. The engine utilizes a functional approach to animate user interface elements, implementing spring-based physics simulations to mimic real-world momentum. It employs interpolation-based value mapping and functional transformations to translate animation progres
Implements spring physics simulations using mass, tension, and friction to create natural-feeling motion.
Matter-js is a 2D rigid body physics engine written in JavaScript for simulating realistic physical interactions, collisions, and dynamics in web browsers. It functions as a web physics simulation library that calculates motion, gravity, and constraints for objects rendered on a web canvas. The library includes a built-in canvas physics visualizer to draw physical bodies, joints, and constraints for debugging and gameplay. It distinguishes itself through a plugin system that supports recursive dependency resolution and internal method patching to inject custom logic into the engine's executio
Implements damped harmonic oscillator springs to connect bodies with elastic behavior.
dynamics.js is a physics-based JavaScript animation engine designed to create spring and bounce animations. It utilizes the browser animation frame loop to ensure motion is synchronized with the refresh rate. The engine includes tools for animation debugging, allowing users to slow down or freeze active motions to tune parameters. It also features a timing mechanism that executes callbacks synchronized with the animation frame rate to prevent visual stuttering. The project provides a physics solver based on mass, stiffness, and damping constants. Additionally, it includes a utility for apply
Calculates object positions using mass, stiffness, and damping constants to simulate oscillation.
Framer - Design Everything
Applies spring-based physics calculations to animate properties with natural motion and momentum.
react-native-interactable is a gesture physics library and interaction framework for React Native. It provides an animated gesture engine and a physics-based UI toolkit designed to create complex touch-based components such as swipeable rows and draggable cards. The project distinguishes itself through the simulation of physical properties, including spring tension, surface friction, and gravitational forces. It allows for the creation of gravity wells that attract or repel views and integrates simulated springs to pull elements toward specific coordinates with adjustable damping. The framew
Calculates view coordinates using simulated spring tension, damping, and gravitational forces to mimic real-world movement.
Advance is a physics-based animation library and motion simulation toolkit for iOS, tvOS, and macOS. It provides a framework for driving value transitions using non-linear physics functions and a spring physics engine to produce natural, bouncy movements. The library distinguishes itself through a vector-based animation framework that allows custom data types to be animated by converting them into vector representations. It also implements velocity-preserving state handoffs to maintain a consistent rate of change when transitioning between different animation modes. The toolkit covers both t
Calculates value changes over time using mass, stiffness, and damping for natural bounce.
cursor-effects is eine JavaScript-Bibliothek und eine Effekt-Engine, die darauf ausgelegt ist, physikbasierte Cursor-Trails und schwebende visuelle Effekte in Webbrowsern zu implementieren. Sie bietet ein Framework zum Hinzufügen interaktiver grafischer Overlays, die dem Benutzerzeiger folgen. Das System ist auf das Erzeugen von Partikel-Trails, physikbasierten schwebenden Emojis und zeigerverfolgenden Text-Strings spezialisiert. Diese Animationen nutzen federbasierte Physiksimulationen, um organische Reaktionen und Streumuster bei Cursorbewegungen zu erzeugen. Die Bibliothek verwaltet den gesamten Lebenszyklus visueller Elemente, vom koordinatenbasierten Zeiger-Tracking und der DOM-Injektion bis hin zur automatischen Entfernung von Partikeln. Animations-Frames werden über eine Request-Animation-Loop aktualisiert, um sicherzustellen, dass die Bewegung mit der nativen Bildwiederholrate des Browsers übereinstimmt.
Simulates tension and damping to create organic, bouncy reactions to cursor movements.
TwinklingRefreshLayout ist ein Pull-to-Refresh-Layout für Android, das einen scrollbaren Container zur Implementierung von Refresh- und Load-More-Funktionalitäten bereitstellt. Es fungiert als View-Wrapper für Komponenten wie RecyclerView, ScrollView und WebView, um konsistente Refresh- und Ladeverhalten über verschiedene scrollbare Views hinweg sicherzustellen. Das Projekt zeichnet sich durch eine Overscroll-Rebound-Komponente aus, die eine elastische Sprunganimation erzeugt, wenn Benutzer über Layout-Grenzen hinaus scrollen. Es enthält ein System für benutzerdefinierte Refresh-Indikatoren, das es Header- und Footer-Views ermöglicht, ihre visuellen Zustände basierend auf dem Scroll-Fortschritt des Benutzers zu animieren. Das Layout deckt zudem eine Reihe interaktiver Scroll-Effekte ab, einschließlich Pull-to-Load-Triggern am unteren Ende einer Liste und fester Header-Positionierung, um spezifische Views während des Scrollens stationär zu halten.
Implements UI physics coordinators to calculate scroll offsets and dampening for elastic bouncing effects.
mujoco_menagerie is a curated library of physical robot specifications and XML model definitions designed for standardized dynamics and contact simulation. It provides a collection of high-quality robot model files for humanoids, quadrupeds, and manipulators, alongside detailed kinematic and inertial parameters used to reproduce real-world robot behavior in virtual environments. The project serves as a repository of robotics simulation assets and MJCF model definitions optimized for accuracy. It includes standardized model libraries specifically for bipedal, quadrupedal, and humanoid hardware
Allows users to apply spring forces to simulation bodies via mouse interactions.
EasyAnimation is a Swift library for defining and executing interface animations. It provides a system for modifying layer properties and creating visual transitions for UI components. The library specializes in physics-based motion, utilizing spring constants and damping ratios to produce bouncy movement effects. It also enables complex animation sequencing, allowing multiple visual changes to be chained together with specific timing and delays. Additional capabilities include the ability to cancel running animation sequences after the active step completes and the use of block-based proper
Calculates movement using spring constants and damping ratios to create natural bounce effects.