Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gregolive/mobile-navbar
A set of 3 mobile-friendly navbars.
https://github.com/gregolive/mobile-navbar
css javascript npm npm-module
Last synced: 18 days ago
JSON representation
A set of 3 mobile-friendly navbars.
- Host: GitHub
- URL: https://github.com/gregolive/mobile-navbar
- Owner: gregolive
- Created: 2022-03-07T08:07:03.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-03-07T14:44:42.000Z (almost 3 years ago)
- Last Synced: 2024-04-29T23:08:51.008Z (8 months ago)
- Topics: css, javascript, npm, npm-module
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/@gregolive/mobile-navbar
- Size: 8.79 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Mobile Navbar
A set of 3 mobile-friendly navbars: an expandable dropdown nav, a side drawer, and a tabbed nav.
At screen sizes above 768px the dropdown and side drawer navs behave like a typical header nav with menu links appearing on the right side of the navbar.
[Live demo](https://gregolive.github.io/dynamic-ui-design/#mobile-menu-demo) 👈
[npm package](https://www.npmjs.com/package/@gregolive/mobile-navbar) 📦
## Prerequisites
For icons to display, please install [font-awesome](https://www.npmjs.com/package/font-awesome).
## Installation
On the command line run:
```
npm i @gregolive/mobile-navbar
```Import the function(s) in your Javascript file with:
```
import { navbarExpand, navbarSide, navbarTabs } from '@gregolive/mobile-navbar';
```## Usage
Pass 1 or 2 arguments into the selected function depending on the navbar being used:
1.
navbarExpand
andnavbarSide
are first passed atitle
object for the text that appears on the left side of the navbar and the link that opens when it is clicked```
const myTitle = { text: 'My Navbar', href: '#' };
```2. All 3 navbars require a
links
object containing the text, href and font-awesome icon class for each menu item```
const myLinks = [
{ text: 'News', href: '#', icon: 'fa-solid fa-newspaper' },
{ text: 'Contact', href: '#', icon: 'fa-solid fa-address-card' },
{ text: 'About', href: '#', icon: 'fa-solid fa-circle-info' },
];
```Append to the DOM.
Examples:
```
// 1) Expandable dropdown nav
const nav1 = navbarExpand(myTitle, myLinks);
document.body.appendChild(nav1);// 2) Side drawer nav
const nav2 = navbarSide(myTitle, myLinks);
document.body.appendChild(nav2);// 3) Tabbed nav
const nav3 = navbarTabs(myLinks);
document.body.appendChild(nav3);
```Default styling (colors, padding, etc.) can be overridden by overriding the CSS variables in:
```
:root {
...
}
```## License
ISC