Layout

Navigation made easy

FinallyReact's layout system can be used by importing the Layout component. You can easily specify responsive navbar, sidenav, and footer elements for your application.

Below is a simple example of a Layout with default configurations for both Navbar and Sidenav:

Example

Content - nav-1 - sidenav-1

If you choose to use a Navbar and Sidenav, the Layout component will manage both so they work nicely together. Note: this website uses the Layout component with integrated Navbar and Sidenav components, so you can see how it functions on various screen sizes.

Z-Index

A list of default z-index values used with FinallyReact components. You can use these as a guide to arrange your own component layers.

  • Dropdown: 100
  • Copy Wrapper: 110
  • Pop: 120
  • Datepicker: 130
  • Sidenav: 200-230
  • Navbar: 230
  • Modal: 300-320
  • Slideout: 400-410
  • Notification: 500

Layout Props

Prop NameProp TypeDescription
contentPropsHTMLAttributesProps for content wrapper
footeranyCustom footer component
footerPropsHTMLAttributesProps for integrated Footer
fullHeightbooleanLayout takes full height of screen
navbarPropsHTMLAttributesProps for integrated Navbar
showNavbarbooleanShould Layout display an integrated Navbar?
showSidenavbooleanShould Layout display an integrated Sidenav?
sidenavPropsHTMLAttributesProps for Sidenav

Navbar Props

Prop NameProp TypeDescription
activeKeystringActive key for Sidenav
centerContentReact.ReactNodeContent for center of Navbar
customContentReact.ReactNodeCustom Navbar component
itemsNavbarItem[] (below)List of items for default Sidenav
leftContentReact.ReactNodeContent for left side of Navbar
logostring | React.ReactNodeLogo for Navbar
mobileDropdownPropsHTMLAttributesProps for mobile dropdown
rightContentReact.ReactNodeContent for right side of Navbar
stickybooleanShould Sidenav stick while scrolling?
withSidenavbooleanIs Sidenav being used with Navbar?

NavbarItem Props

Prop NameProp TypeDescription
disabledbooleanIs NavItem disabled?
dropdownItemsobject[]List of items for NavItem dropdown
dropdownItems[].disabled
booleanIs NavItem dropdown item disabled?
dropdownItems[].iconLeft
React.ReactNodeLeft icon for NavItem dropdown item
dropdownItems[].iconRight
React.ReactNodeRight icon for NavItem dropdown item
dropdownItems[].itemProps
HTMLAttributesProps for NavItem dropdown item
dropdownItems[].key
stringIdentifier for NavItem dropdown item
dropdownItems[].label
stringLabel for NavItem dropdown item
dropdownItems[].onClick
() => voidClick handler for NavItem dropdown item
iconLeftReact.ReactNodeIcon for left side of NavItem
iconRightReact.ReactNodeIcon for right side of NavItem
itemPropsHTMLAttributesProps for NavItem
keystringIdentifier for NavItem
labelstringLabel for NavItem
onClick() => voidClick handler for NavItem

Sidenav Props

Prop NameProp TypeDescription
activeKeystringActive key for Sidenav
categoryPropsHTMLAttributesProps for Sidenav category
customContentReact.ReactNodeCustom Sidenav component
hideMobileMenubooleanShould Sidenav hide mobile menu?
itemPropsHTMLAttributesProps for Sidenav item
itemsSidenavItem[] (below)List of items for default Sidenav
showSearchbooleanShould Sidenav show search?
sidenavPropsHTMLAttributesProps for Sidenav
sidenavSearchPropsTextInputPropsProps for integrated Sidenav search
simplebooleanKeep it simple; no flashy styles
stickybooleanShould Sidenav stick while scrolling?
withNavbarbooleanIs Sidenav being used with Navbar?

SidenavItem Props

Prop NameProp TypeDescription
altsstring[]List of alternative labels used for search
disabledbooleanIs item disabled?
iconReact.ReactNodeIcon to display for item
itemsSidenavItem[] (self)Specify sub-items for categories
keystringIdentifier for item
labelstringLabel for item
linkstringHref path for clicking item
render(item: SidenavItemProps) => React.ReactNode;Render prop for custom item
type'category' or 'item'Type of item