Giter VIP home page Giter VIP logo

oh-snack's Introduction

🥪
Oh-Snack

Simple snackbar notifications

Version License: MIT

· Homepage · View Demo · Report Bug / Request Feature ·

Table of Contents

About

oh-snack displays stackable snackbar notifications.

It currently features:

  • notifications stack on top of each other, with fancy push animations
  • configurable position on screen, allowing multiple at once
  • custom animation classes, to create that fancy 3d spinning animation you always dreamed of
  • hide notifications after timeout
  • optional dismiss button

Install

NPM:

npm install oh-snack

or:

CDN:

<script src="https://unpkg.com/oh-snack/dist/index.umd.js"></script>

Usage

Add bundled CSS:

Using a bundler:

import 'oh-snack/dist/index.css';

or:

CDN:

<link rel="stylesheet" href="https://unpkg.com/oh-snack/dist/index.css" />

Import module when using NPM:

import { snack } from 'oh-snack';

Example:

snack("Hi, I'm a snackbar notification 👋");

snack("Hi, I'm a sticky notification up here.", {
  position: 'topRight',
  timeout: false,
});

API

/**
 * Show a snackbar notification
 * @param message Message to display
 * @param config Configuration
 */
function snack(message: string, config?: SnackConfiguration): void;

SnackConfiguration:

{
  /**
   * Position on screen
   * @default 'bottomCenter'
   */
  position?:
    | 'topLeft'
    | 'topCenter'
    | 'topRight'
    | 'bottomLeft'
    | 'bottomCenter'
    | 'bottomRight';
  /**
   * Timeout in milliseconds after which notification is hidden.
   * Set to false to enable sticky notification.
   * @default 2800
   */
  timeout?: number | false;
  /**
   * Defines Whether a close button is shown
   * @default !timeout
   */
  closeable?: boolean;
  /**
   * Show animation class
   * @default 'os-show-default'
   */
  showAnimationClass?: string;
  /**
   * Hide animation class
   * @default 'os-hide-default'
   */
  hideAnimationClass?: string;
}

Run tests

npm run test

Contact

👤 Timo Bechtel

🤝 Contributing

Contributions, issues and feature requests are welcome!

  1. Check issues
  2. Fork the Project
  3. Create your Feature Branch (git checkout -b feat/AmazingFeature)
  4. Test your changes npm run test
  5. Commit your Changes (git commit -m 'feat: add amazingFeature')
  6. Push to the Branch (git push origin feat/AmazingFeature)
  7. Open a Pull Request

Commit messages

This project uses semantic-release for automated release versions. So commits in this project follow the Conventional Commits guidelines. I recommend using commitizen for automated commit messages.

Show your support

Give a ⭐️ if this project helped you!

📝 License

Distributed under the MIT License.


This README was generated with ❤️ by readme-md-generator

oh-snack's People

Contributors

timobechtel avatar semantic-release-bot avatar dependabot[bot] avatar

Stargazers

Roman avatar

Watchers

James Cloos avatar  avatar  avatar

oh-snack's Issues

update dependencies

  • Upgrade serialize-javascript to version 3.1.0 or later.
  • Upgrade dot-prop to version 4.2.1 or later.
  • Upgrade yargs-parser to version 13.1.2 or later.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.