Home

Awesome

Swift Swift Package Manager compatible Carthage compatible

EmojiTimeFormatter

Format your dates/times as emojis 🕟 🕑 🕗

Description

You can build easy to understand user interfaces with EmojiTimeFormatter or can do funny things like that:

Screencast

The example is accessable via Power of Emojis.

Installation

EmojiTimeFormatter supports multiple methods for installing the library in a project. You can find the latest version in the release tab.

Installation with Swift Package Manager

To integrate EmojiTimeFormatter into your Xcode project using Swift Package Manager, specify it in your Package.swift file:

import PackageDescription

let package = Package(
    [...]
    dependencies: [
        .Package(url: "https://github.com/thomaspaulmann/EmojiTimeFormatter.git", majorVersion: XYZ)
    ]
)

Installation with Carthage

To integrate EmojiTimeFormatter into your Xcode project using Carthage, specify it in your Cartfile:

github "thomaspaulmann/EmojiTimeFormatter" ~> X.Y.Z

Run carthage update --toolchain com.apple.dt.toolchain.XcodeDefault to build the framework and drag the built EmojiTimeFormatter.framework into your Xcode project. It's important to specify your toolchain in the Xcode beta builds.

Installation without anything

To integrate EmojiTimeFormatter into your Xcode project using nothing but your hands, copy the Sources folder to your Xcode project. It's only two files and 200 lines of code.

Usage

You can convert dates to clock face emojis and vice versa.

Date to Emoji

Create a new EmojiTimeFormatter, get the ClockFaceEmoji for your Date and print it. It's that simple.

let now = Date()
let formatter = EmojiTimeFormatter()
let clockFaceEmoji = formatter.clockFace(from: now)

print("It's \(clockFaceEmoji) o'clock.") // Output: It's 🕢 o'clock.

Emoji to Date

It's also possible to convert a ClockFaceEmoji back to a Date. Create a new EmojiTimeFormatter, get the Date for your ClockFaceEmoji and print it. It's that simple, again.

let twelveThirty = ClockFaceEmoji.twelveThirty
let formatter = EmojiTimeFormatter()
let date = formatter.date(from: twelveThirty)

print("It's \(date).") // Output: It's 1970-01-01 00:30:00 +0000.

Note: Actually it's not a date, it's a time relative to 00:00:00 UTC on 1 January 1970.

License

This project is licensed under the MIT License - see the LICENSE file for details.