Dubai alternatives and similar libraries
Based on the "Passbook" category.
Alternatively, view Dubai alternatives based on common mentions on social networks and blogs.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Dubai or a related project?
Popular Comparisons
README
Passbook is an iOS 6 feature that manages boarding passes, movie tickets, retail coupons, & loyalty cards. Using the PassKit API, developers can register web services to automatically update content on the pass, such as gate changes on a boarding pass, or adding credit to a loyalty card.
Dubai makes it easy to generate .pkpass
from a script or the command line, allowing you to rapidly iterate on the design and content of your passes, or generate one-offs on the fly.
Pairs nicely with Rack::Passbook.
Dubai is named for Dubai, UAE, a center of commerce and trade (and as Dave Rupert was all-too-eager to point out, an unfortunate pun on "Do Buy!"). It's part of a series of world-class command-line utilities for iOS development, which includes Cupertino (Apple Dev Center management), Shenzhen (Building & Distribution), Houston (Push Notifications), Venice (In-App Purchase Receipt Verification), and Nashville (iTunes Store API).
Installation
$ gem install dubai
Usage
require 'dubai'
Dubai::Passbook.certificate, Dubai::Passbook.password = "/path/to/certificate.p12", "..."
# Example.pass is a directory with files "pass.json", "icon.png" & "[email protected]"
File.open("Example.pkpass", 'w') do |f|
f.write Dubai::Passbook::Pass.new("Example.pass").pkpass.string
end
Command Line Interface
Dubai also comes with the pk
binary, which provides a convenient way to generate and preview passes
$ pk generate Example.pass -T boarding-pass
Dubai comes with templates for all of the different Passbook layouts:
boarding-pass
coupon
event-ticket
store-card
generic
Build a .pkpass
file (which can previewed with a drag-and-drop onto the iOS Simulator):
$ pk build Example.pass -c /path/to/certificate.p12
...or serve them from a webserver (which can be previewed by visiting the address on a device or the simulator):
$ pk serve Example.pass -c /path/to/certificate.p12
$ open http://localhost:4567/pass.pkpass
Specify a -H
/ --host
option to bind the server to a particular host. Binding on 0.0.0.0
will listen for all incoming connections on the local network, such as an iPhone or iPad:
$ pk serve Example.pass -H 0.0.0.0
Creator
Mattt Thompson (@mattt)
License
Dubai is available under the MIT license. See the LICENSE file for more info.
*Note that all licence references and agreements mentioned in the Dubai README section above
are relevant to that project's source code only.