Giter Site home page Giter Site logo

silvrwolfboy / whisper Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hyperoslo/whisper

0.0 2.0 1.0 2.31 MB

:mega: Whisper is a component that will make the task of display messages and in-app notifications simple. It has three different views inside

Home Page: http://hyper.no

License: Other

Swift 97.72% Ruby 2.28%

whisper's Introduction

⚠️ DEPRECATED, NO LONGER MAINTAINED

Whisper

CircleCI Version Carthage License Platform Swift

Description 🍃

Break the silence of your UI, whispering, shouting or whistling at it. Whisper is a component that will make the task of displaying messages and in-app notifications simple. It has three different views inside.

Whispers

Whisper

Display a short message at the bottom of the navigation bar—this can be anything, from a "Great Job!" to an error message. It can have images or even a loader.

Shouts

In-App

Let users know that something happened inside the app with this beautiful customizable in-app notification.

Whistles

Whistle

This is the smallest of all, a beautiful discretion in your UI.

Bonus

All sounds are fully customizable, as are colors and fonts.

Shouts have an optional action that will be called if the user taps on it, and you'll even get a message when the Shout is gone. Finally, if you want to set how long the Shout should be displayed, you have a duration property.

In Whisper, there is no need to think about scroll view insets anymore—this will be handled automatically. As an added bonus, when transitioning from one view controller to another, the next controller's offset will be adjusted as you'd expect. It just works!

Usage

The usage of the component is so simple, you just create a message in the case of Whisper, an announcement in the case of a Shout, or a Murmur in the case of a Whistle. Because there may be a conflict with show from UIViewController, you need to explicitly use the Whisper namespace to call show.

For a Whisper:
let message = Message(title: "Enter your message here.", backgroundColor: .red)

// Show and hide a message after delay
Whisper.show(whisper: message, to: navigationController, action: .show)

// Present a permanent message
Whisper.show(whisper: message, to: navigationController, action: .present)

// Hide a message
Whisper.hide(whisperFrom: navigationController)
For a Shout:
let announcement = Announcement(title: "Your title", subtitle: "Your subtitle", image: UIImage(named: "avatar"))
Whisper.show(shout: announcement, to: navigationController, completion: {
  print("The shout was silent.")
})
For a Whistle:
let murmur = Murmur(title: "This is a small whistle...")

// Show and hide a message after delay
Whisper.show(whistle: murmur, action: .show(0.5))

// Present a permanent status bar message
Whisper.show(whistle: murmur, action: .present)

// Hide a message
Whisper.hide(whistleAfter: 3)

If you want to use Whisper with Objective-C, you can find information about it here.

Installation

Whisper is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'Whisper'

Whisper is also available through Carthage. To install just write into your Cartfile:

github "hyperoslo/Whisper"

Roadmap

In the future the idea is to keep improving and add some features:

  • Improve the offset detection and animation.
  • Add more UI related components into Whisper.
  • More customization points and more sizes for each whisper.
  • Custom actions inside Whispers and Shouts.
  • We are open to new and awesome ideas, contribute if you like! :)

Author

Hyper made this with ❤️

Contribute

We would love for you to contribute to Whisper, check the CONTRIBUTING file for more info.

License

Whisper is available under the MIT license. See the LICENSE file for more info.

whisper's People

Contributors

ramongilabert avatar onmyway133 avatar zenangst avatar vadymmarkov avatar arthur-here avatar tkohout avatar acadet avatar duemunk avatar jinjic avatar wowlocal avatar luciditydesign avatar andreyz avatar n1mda avatar cmilr avatar chrisamanse avatar gilserrap avatar bevbomb avatar jgiola avatar jgorset avatar plu avatar jondwillis avatar minuscorp avatar shrugs avatar nachosoto avatar sammy-sc avatar tiepvuvan avatar davidlamys avatar sumitee2 avatar

Watchers

James Cloos avatar  avatar

Forkers

personalhomeman

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.