Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
github.com/mkosir/react-parallax-tilt
👀 Easily apply tilt hover effect on React components
npm install react-parallax-tilt
import Tilt from 'react-parallax-tilt';
const App = () => {
return (
<Tilt>
<div style={{ height: '300px', backgroundColor: 'darkgreen' }}>
<h1>React Parallax Tilt 👀</h1>
</div>
</Tilt>
);
};
All of the props are optional.
Below is the complete list of possible props and their options:
▶︎ indicates the default value if there's one
tiltEnable: boolean ▶︎ true
Boolean to enable/disable tilt effect.
tiltReverse: boolean ▶︎ false
Reverse the tilt direction.
tiltAngleXInitial: number ▶︎ 0
Initial tilt value (degrees) on x axis.
tiltAngleYInitial: number ▶︎ 0
Initial tilt value (degrees) on y axis.
tiltMaxAngleX: number ▶︎ 20
Max tilt rotation (degrees) on x axis (range: 0°-90°
).
tiltMaxAngleY: number ▶︎ 20
Max tilt rotation (degrees) on y axis (range: 0°-90°
).
tiltAxis: 'x' | 'y' ▶︎ undefined
Enable tilt on single axis.
tiltAngleXManual: number | null ▶︎ null
Manual tilt rotation (degrees) on x axis.
tiltAngleYManual: number | null ▶︎ null
Manual tilt rotation (degrees) on y axis.
glareEnable: boolean ▶︎ false
Boolean to enable/disable glare effect.
glareMaxOpacity: number ▶︎ 0.7
The maximum glare opacity (range: 0-1
).
glareColor: string ▶︎ #ffffff
Set color of glare effect.
glareBorderRadius: string ▶︎ 0
Accepts any standard CSS border radius. Useful if the glare color is different to the page color.
glarePosition: 'top' | 'right' | 'bottom' | 'left' | 'all' ▶︎ bottom
Set position of glare effect.
glareReverse: boolean ▶︎ false
Reverse the glare direction.
scale: number ▶︎ 1
Scale of the component (1.5 = 150%, 2 = 200%, etc.).
perspective: number ▶︎ 1000
The perspective property defines how far the object (wrapped/child component) is away from the user. The lower the more extreme the tilt gets.
flipVertically: boolean ▶︎ false
Boolean to enable/disable vertical flip of component.
flipHorizontally: boolean ▶︎ false
Boolean to enable/disable horizontal flip of component.
reset: boolean ▶︎ true
If the effects has to be reset on onLeave
event.
transitionEasing: string ▶︎ cubic-bezier(.03,.98,.52,.99)
Easing of the transition when manipulating the component.
transitionSpeed: number ▶︎ 400
Speed of the transition when manipulating the component.
trackOnWindow: boolean ▶︎ false
Track mouse and touch events on the whole window.
gyroscope: boolean ▶︎ false
Boolean to enable/disable device orientation detection.
onMove: ({ tiltAngleX: number, tiltAngleY: number, tiltAngleXPercentage: number, tiltAngleYPercentage: number, glareAngle: number, glareOpacity: number, event: Event }) => void
Gets triggered when user moves on the component.
onEnter: (event: Event) => void
Gets triggered when user enters the component.
onLeave: (event: Event) => void
Gets triggered when user leaves the component.
Please keep in mind that detecting device orientation is currently experimental technology.
Check the browser compatibility before using it in production.
A few takeaways when using device orientation event:
https
)<iframe>
elementApple decided turning device motion and orientation off by default since iOS 12.2.
With iOS 13+ permission API can be used to gain access to device orientation event.
When using gyroscope feature:
<Tilt gyroscope={true}>
<h1>React Parallax Tilt 👀</h1>
</Tilt>
it will present a permission dialog prompting the user to allow motion and orientation access at domain level:
Note that user needs to take some action (like tapping a button) to be able to display the dialog (invoking dialog on page load is not possible).
Easily set up a local development environment!
Build project and start storybook on localhost:
npm install
npm start
Start coding! 🎉
npm install
npm link # link your local repo to your global packages
npm run build:watch # build the files and watch for changes
Clone project repo that you wish to test with react-parallax-tilt library and run:
npm install
npm link react-parallax-tilt # link your local copy into this project's node_modules
npm start
All contributions are welcome!
Please take a moment to review guidelines PR | Issues
FAQs
Unknown package
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.