React HUD npm version
React HUD will showcase a view (image, video, carousel, whatever you want) on your website, with multiple action points overlaying the display.
- Have a look at the PR template doc for best approach to getting your pr merged.
import { ReactHUD } from "react-heads-up-display"; const App = () => { ... ; return ( <ReactHUD topLeft={{} | ReactElementLike | ReactNodeArray | string | number | boolean | null | undefined} topMiddle={{} | ReactElementLike | ReactNodeArray | string | number | boolean | null | undefined} topRight={{} | ReactElementLike | ReactNodeArray | string | number | boolean | null | undefined} centreLeft={{} | ReactElementLike | ReactNodeArray | string | number | boolean | null | undefined} centreMiddle={{} | ReactElementLike | ReactNodeArray | string | number | boolean | null | undefined} centreRight={{} | ReactElementLike | ReactNodeArray | string | number | boolean | null | undefined} bottomLeft={{} | ReactElementLike | ReactNodeArray | string | number | boolean | null | undefined} bottomMiddle={{} | ReactElementLike | ReactNodeArray | string | number | boolean | null | undefined} bottomRight={{} | ReactElementLike | ReactNodeArray | string | number | boolean | null | undefined} displayMiddle={{} | ReactElementLike | ReactNodeArray | string | number | boolean | null | undefined} topLeftClass="" topMiddleClass="" topRightClass="" centreLeftClass="" centreMiddleClass="" centreRightClass="" bottomLeftClass="" bottomMiddleClass="" bottomRightClass="" displayMiddleClass="" hudClass="" hudContainerClass="" hasFullScreen={ topLeft: boolean, topMiddle: boolean, topRight: boolean, centreLeft: boolean, centreMiddle: boolean, centreRight: boolean, bottomLeft: boolean, bottomMiddle: boolean, bottomRight: boolean } /> ) }
ReactHUD.defaultProps = { topLeftClass: 'absolute top-0 left-0 z-10', topMiddleClass: 'absolute top-0 left-1/2 transform -translate-x-1/2 z-10', topRightClass: 'absolute top-0 right-0 z-10', centreLeftClass: 'absolute top-1/2 left-0 -translate-y-1/2 z-10', centreMiddleClass: 'absolute top-1/2 left-1/2 transform -translate-x-1/2 z-10', centreRightClass: 'absolute top-1/2 right-0 -translate-y-1/2 z-10', bottomLeftClass: 'absolute bottom-0 left-0 z-10', bottomMiddleClass: 'absolute bottom-0 lg:left-1/2 lg:transform lg:-translate-x-1/2 z-10 lg:w-2/5 w-full', bottomRightClass: 'absolute lg:bottom-0 bottom-2 right-0 z-10', displayMiddleClass: 'absolute w-full h-full z-0', hudClass: 'relative flex items-center justify-center h-full w-full bg-black m-0 p-0', hudContainerClass: 'absolute inset-0 m-0 p-0 h-full max-h-full w-full', hasFullScreen: { topLeft: false, topMiddle: false, topRight: false, centreLeft: false, centreMiddle: false, centreRight: false, bottomLeft: false, bottomMiddle: false, bottomRight: false }, }; ReactHUD.propTypes = { topLeft: node, topMiddle: node, topRight: node, centreLeft: node, centreMiddle: node, centreRight: node, bottomLeft: node, bottomMiddle: node, bottomRight: node, displayMiddle: node, topLeftClass: string, topMiddleClass: string, topRightClass: string, centreLeftClass: string, centreMiddleClass: string, centreRightClass: string, bottomLeftClass: string, bottomMiddleClass: string, bottomRightClass: string, displayMiddleClass: string, hudClass: string, hudContainerClass: string, hasFullScreen: shape({ topLeft: bool, topMiddle: bool, topRight: bool, centreLeft: bool, centreMiddle: bool, centreRight: bool, bottomLeft: bool, bottomMiddle: bool, bottomRight: bool }), };
All styling is controlled by tailwind and you can override any part of the HUD, by adding any of the following props.
topLeftClass: string, topMiddleClass: string, topRightClass: string, centreLeftClass: string, centreMiddleClass: string, centreRightClass: string, bottomLeftClass: string, bottomMiddleClass: string, bottomRightClass: string, displayMiddleClass: string, hudClass: string, hudContainerClass: string,
- This project was bootstrapped with Create React App.