
Security News
Axios Maintainer Confirms Social Engineering Attack Behind npm Compromise
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.
react-cube-navigation
Advanced tools
React Cube Navigation provides an animated cube style navigation pattern like that found in Instagram stories.
Install react-cube-navigation and its peer dependencies react-gesture-responder and react-spring using yarn or npm.
yarn add react-cube-navigation react-gesture-responder react-spring
import Cube from "react-cube-navigation";
const images = [
"https://images.unsplash.com/photo-1565371557106-c2abcc6fb36a?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=634&q=80",
"https://images.unsplash.com/photo-1565361849078-294849288ced?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=634&q=80",
"https://images.unsplash.com/photo-1565279799937-b397e6483124?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=619&q=80",
"https://images.unsplash.com/photo-1565264216052-3c9012481a1f?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=634&q=80",
"https://images.unsplash.com/photo-1565274952013-13cecde5c8b1?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=634&q=80",
"https://images.unsplash.com/photo-1565287753977-e94d0227c640?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=633&q=80",
"https://images.unsplash.com/photo-1565340076861-7a6667b36072?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=700&q=80",
"https://images.unsplash.com/photo-1565259901762-b8d797c6f887?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=634&q=80"
];
function Example() {
const [index, setIndex] = React.useState(0);
return (
<Cube
index={index}
onChange={i => setIndex(i)}
width={300}
height={600}
hasNext={i => i < images.length - 1}
renderItem={(i, active) => {
return (
<div
style={{
backgroundImage: `url(${images[i]})`,
backgroundSize: "cover",
flex: 1,
borderRadius: "1rem"
}}
/>
);
}}
/>
);
}
| Name | Type | Default Value | Description |
|---|---|---|---|
| renderItem * | (i: number, active: boolean) => React.ReactNode; | A callback to render cube panes | |
| onChange * | (i: number) => void; | A callback to update the current index | |
| index * | number |{ index: number, immediate: boolean} | The index to render. Optionally pass an object with an index and immediate property to skip animations. | |
| hasNext | (i: number) => boolean | true | Whether another pane exists after the provided index |
| width | number | 200 | The width of the cube in pixels |
| height | number | 600 | The height of the cube in pixels |
| perspective | number | 1200 | The perspective of the cube in pixels |
| paneStyle | React.CSSProperties | Pane container styles | |
| scaleRange | [number, number] | [1, 0.95] | The scale range to shrink the cube when swiping |
| lockScrolling | boolean | false | Lock all page scrolling |
FAQs
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
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.