wedding 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +18 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +86 -0
- data/Rakefile +1 -0
- data/bin/wedding +5 -0
- data/lib/wedding.rb +38 -0
- data/lib/wedding/bride.rb +27 -0
- data/lib/wedding/ceremony.rb +118 -0
- data/lib/wedding/cli.rb +44 -0
- data/lib/wedding/default_config.rb +23 -0
- data/lib/wedding/groom.rb +27 -0
- data/lib/wedding/post_install_message.rb +23 -0
- data/lib/wedding/version.rb +4 -0
- data/screenshot.png +0 -0
- data/spec/wedding_spec.rb +39 -0
- data/wedding.gemspec +38 -0
- metadata +204 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
Copyright (c) 2013 Jai Pandya
|
|
2
|
+
|
|
3
|
+
MIT License
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
+
a copy of this software and associated documentation files (the
|
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
+
the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be
|
|
14
|
+
included in all copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Wedding
|
|
2
|
+
|
|
3
|
+
> How would be a weddding without a gem?
|
|
4
|
+
|
|
5
|
+
<img src='http://i.imgur.com/Ap02gKh.png' alt='screenshot' width='600' />
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
A fun experiment to invite my geeky friends
|
|
10
|
+
via this ruby gem.
|
|
11
|
+
|
|
12
|
+
## Installation
|
|
13
|
+
|
|
14
|
+
Command line install
|
|
15
|
+
|
|
16
|
+
$ gem install wedding
|
|
17
|
+
|
|
18
|
+
Add this line to your application's Gemfile:
|
|
19
|
+
|
|
20
|
+
gem 'wedding'
|
|
21
|
+
|
|
22
|
+
And then execute:
|
|
23
|
+
|
|
24
|
+
$ bundle
|
|
25
|
+
|
|
26
|
+
## Usage
|
|
27
|
+
|
|
28
|
+
### Command Line
|
|
29
|
+
|
|
30
|
+
List of all available commands
|
|
31
|
+
|
|
32
|
+
wedding
|
|
33
|
+
|
|
34
|
+
Print a personalized wedding invitation
|
|
35
|
+
|
|
36
|
+
wedding invitation
|
|
37
|
+
|
|
38
|
+
Glory words for the groom
|
|
39
|
+
|
|
40
|
+
wedding groom
|
|
41
|
+
|
|
42
|
+
Glory words for the bride
|
|
43
|
+
|
|
44
|
+
wedding bride
|
|
45
|
+
|
|
46
|
+
RSVP for the event
|
|
47
|
+
|
|
48
|
+
wedding rsvp
|
|
49
|
+
|
|
50
|
+
Map location of the venue
|
|
51
|
+
|
|
52
|
+
wedding location
|
|
53
|
+
|
|
54
|
+
### Public API
|
|
55
|
+
|
|
56
|
+
New wedding
|
|
57
|
+
|
|
58
|
+
# By default it would take config options from
|
|
59
|
+
# lib/wedding/default_config.rb, which can be overridden
|
|
60
|
+
# by passing your own hash
|
|
61
|
+
|
|
62
|
+
wedding = Wedding.new
|
|
63
|
+
|
|
64
|
+
Returns invitation card string
|
|
65
|
+
|
|
66
|
+
wedding.invitation
|
|
67
|
+
|
|
68
|
+
Wedding venue coordinates
|
|
69
|
+
|
|
70
|
+
wedding.location
|
|
71
|
+
|
|
72
|
+
Returns google maps URL of the venue
|
|
73
|
+
|
|
74
|
+
wedding.map_location
|
|
75
|
+
|
|
76
|
+
Access the groom 'object'
|
|
77
|
+
|
|
78
|
+
wedding.groom
|
|
79
|
+
|
|
80
|
+
Access the bride 'object'
|
|
81
|
+
|
|
82
|
+
wedding.bride
|
|
83
|
+
|
|
84
|
+
RSVP information about the event
|
|
85
|
+
|
|
86
|
+
wedding.rsvp
|
data/Rakefile
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require "bundler/gem_tasks"
|
data/bin/wedding
ADDED
data/lib/wedding.rb
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
require 'launchy'
|
|
2
|
+
require 'thor'
|
|
3
|
+
require 'wedding/default_config'
|
|
4
|
+
|
|
5
|
+
# Lets bring the bride, groom here and
|
|
6
|
+
# ring the bells to start the ceremony
|
|
7
|
+
require 'wedding/bride'
|
|
8
|
+
require 'wedding/groom'
|
|
9
|
+
require 'wedding/ceremony'
|
|
10
|
+
|
|
11
|
+
module Wedding
|
|
12
|
+
|
|
13
|
+
class << self
|
|
14
|
+
|
|
15
|
+
# Sets the default options used when calling Wedding#new.
|
|
16
|
+
attr_writer :default_config
|
|
17
|
+
|
|
18
|
+
# There is a weddig, there is a ceremony. Time for celebrations.
|
|
19
|
+
attr_accessor :ceremony
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# Returns new Ceremony object that can be used to query details
|
|
23
|
+
# about the wedding
|
|
24
|
+
# @param [Hash] config A hash of config values for wedding. Check
|
|
25
|
+
# default_config.rb
|
|
26
|
+
def new(config = nil)
|
|
27
|
+
config = config ? default_config.merge(config) : default_config.dup
|
|
28
|
+
Ceremony.new(config)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# Getter method for default_config for the wedding.
|
|
32
|
+
def default_config
|
|
33
|
+
DefaultConfig.options
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
module Wedding
|
|
2
|
+
# No wedding without a bride
|
|
3
|
+
class Bride
|
|
4
|
+
# Get her ready for all the jazz and buzz
|
|
5
|
+
def initialize(config)
|
|
6
|
+
self.name = config[:bride_name]
|
|
7
|
+
self.about = config[:bride_about]
|
|
8
|
+
self.occupation = config[:bride_occupation]
|
|
9
|
+
self.email = config[:bride_email]
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Overriding for pretty printing
|
|
13
|
+
def to_s
|
|
14
|
+
bride_gungaan = %Q[
|
|
15
|
+
========= Bride ==========
|
|
16
|
+
|
|
17
|
+
The bride's name is #{self.name}
|
|
18
|
+
She is a #{self.about}
|
|
19
|
+
She works as #{self.occupation}
|
|
20
|
+
If you want to contact her, her email ID
|
|
21
|
+
is #{self.email}
|
|
22
|
+
|
|
23
|
+
]
|
|
24
|
+
end
|
|
25
|
+
attr_accessor :name, :about, :occupation, :email
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
require 'cgi'
|
|
2
|
+
require 'artii'
|
|
3
|
+
require 'date'
|
|
4
|
+
require 'rainbow'
|
|
5
|
+
|
|
6
|
+
module Wedding
|
|
7
|
+
# The magic happens here
|
|
8
|
+
# Sing, dance, eat and enjoy
|
|
9
|
+
class Ceremony
|
|
10
|
+
|
|
11
|
+
# Time to set the things in the right direction
|
|
12
|
+
# Groom, bride, location, date and event schedule.
|
|
13
|
+
# @param [Hash] config configuration object for the constructor
|
|
14
|
+
def initialize(config)
|
|
15
|
+
@groom = Wedding::Groom.new(config)
|
|
16
|
+
@bride = Wedding::Bride.new(config)
|
|
17
|
+
@location = config[:location]
|
|
18
|
+
@date = Date.parse(config[:date])
|
|
19
|
+
@event_schedule = config[:event_schedule]
|
|
20
|
+
|
|
21
|
+
@artii = Artii::Base.new :font => 'slant'
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# We need to access what we have set earlier
|
|
25
|
+
attr_reader :groom, :bride, :location, :event_schedule, :date
|
|
26
|
+
|
|
27
|
+
# Venue coordinates
|
|
28
|
+
def coordinates
|
|
29
|
+
@location
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Lets have a more readable format of coordinates method
|
|
33
|
+
# with a URL to google maps
|
|
34
|
+
def location
|
|
35
|
+
"https://maps.google.com/?q=" + CGI.escape(coordinates)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Number of days left
|
|
39
|
+
def days_left
|
|
40
|
+
(date - Date.today)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
# Event schedule
|
|
44
|
+
def events
|
|
45
|
+
@event_schedule.join("\n")
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# Forms a pretty invitation card for the wedding
|
|
49
|
+
def invitation
|
|
50
|
+
invitation = %Q[
|
|
51
|
+
#{print_ganesha.color(:green)}
|
|
52
|
+
========= Wedding invitation ==========
|
|
53
|
+
|
|
54
|
+
#{@artii.asciify(groom.name).color(:blue)}
|
|
55
|
+
with
|
|
56
|
+
#{@artii.asciify(bride.name).color(:blue)}
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
Hi #{`whoami`.strip.capitalize}
|
|
60
|
+
|
|
61
|
+
We are getting married on #{date.strftime("%d %B %y")}. It will
|
|
62
|
+
be a great pleausre for us to have your presence
|
|
63
|
+
in the wedding ceremony.
|
|
64
|
+
|
|
65
|
+
Event schedule:
|
|
66
|
+
|
|
67
|
+
#{events}
|
|
68
|
+
|
|
69
|
+
Pack your bags! Only #{days_left.to_s.color(:red)} days left.
|
|
70
|
+
]
|
|
71
|
+
|
|
72
|
+
rescue StandardError => e
|
|
73
|
+
|
|
74
|
+
invitation = %Q[
|
|
75
|
+
========= Wedding invitation ==========
|
|
76
|
+
|
|
77
|
+
Looks like something went wrong here, did you you fake
|
|
78
|
+
the invitation?
|
|
79
|
+
|
|
80
|
+
]
|
|
81
|
+
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
# In Hindu mythology it is a custom to start
|
|
85
|
+
# anything new worshipping lord Ganesha
|
|
86
|
+
# http://en.wikipedia.org/wiki/Ganesha
|
|
87
|
+
def print_ganesha
|
|
88
|
+
ganesh = %Q[
|
|
89
|
+
_.!._
|
|
90
|
+
/O*@*O\\
|
|
91
|
+
<\\@(_)@/>
|
|
92
|
+
,;, .--;` `;--. ,
|
|
93
|
+
O@O_ / |d b| \\ _hnn
|
|
94
|
+
| `/ \\ | | / \\` |
|
|
95
|
+
&&&& :##;\\ /;##; &&&&
|
|
96
|
+
| \\ / `##/| |##' \\ / |
|
|
97
|
+
\\ %%%%`</| |#'`%%%% /
|
|
98
|
+
'._|_ \\ | |' / _|_.'
|
|
99
|
+
_/ / \\ \\ \\ \\
|
|
100
|
+
/ (\\( '. '-._&&&&
|
|
101
|
+
( ()##, o'--.._`\\-)
|
|
102
|
+
'-():`##########'()()()
|
|
103
|
+
/:::::/()`Y`()\\:::::\\
|
|
104
|
+
\\::::( () | () )::::/
|
|
105
|
+
`"""`\\().'.()/'"""`
|
|
106
|
+
]
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
# RSVP for the event
|
|
110
|
+
def rsvp
|
|
111
|
+
invitation = %Q[
|
|
112
|
+
You can RSVP to the event by sending an email to
|
|
113
|
+
#{groom.name.color(:blue)} (#{groom.email.color(:green)})
|
|
114
|
+
or #{bride.name.color(:blue)} (#{bride.email.color(:green)})
|
|
115
|
+
]
|
|
116
|
+
end
|
|
117
|
+
end
|
|
118
|
+
end
|
data/lib/wedding/cli.rb
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
require 'wedding'
|
|
2
|
+
require 'launchy'
|
|
3
|
+
module Wedding
|
|
4
|
+
|
|
5
|
+
# We have a new wedding taking place here
|
|
6
|
+
self.ceremony = self.ceremony || self.new
|
|
7
|
+
|
|
8
|
+
# Command line interface for the wedding
|
|
9
|
+
class CLI < Thor
|
|
10
|
+
desc 'invitation', 'Your invitation card is inside this envelope'
|
|
11
|
+
def invitation
|
|
12
|
+
puts Wedding.ceremony.invitation
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
desc 'location', 'Google maps link to the wedding venue'
|
|
16
|
+
def location
|
|
17
|
+
puts map_location = Wedding.ceremony.location
|
|
18
|
+
answer = yes?('Do you want to open this link in browser? (yes/no)')
|
|
19
|
+
if (answer)
|
|
20
|
+
begin
|
|
21
|
+
Launchy.open(map_location)
|
|
22
|
+
rescue StandardError => e
|
|
23
|
+
puts "Sorry, you are probably not using a graphical terminal"
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
desc 'rsvp', 'RSVP for the event'
|
|
29
|
+
def rsvp
|
|
30
|
+
puts Wedding.ceremony.rsvp
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
desc 'groom', 'Glory words about the groom'
|
|
34
|
+
def groom
|
|
35
|
+
puts Wedding.ceremony.groom
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
desc 'bride', 'Glory words about the bride'
|
|
39
|
+
def bride
|
|
40
|
+
puts Wedding.ceremony.bride
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module Wedding
|
|
2
|
+
module DefaultConfig
|
|
3
|
+
def self.options
|
|
4
|
+
{
|
|
5
|
+
:groom_name => "Jai",
|
|
6
|
+
:groom_about => "Programmer, Traveller, Photographer, Biker, SlideShare Engineer",
|
|
7
|
+
:groom_occupation => "Hacker at SlideShare",
|
|
8
|
+
:groom_email => "jaipandya@gmail.com",
|
|
9
|
+
:bride_name => "Prerita",
|
|
10
|
+
:bride_about => "Banker, Traveller, Dancer, Painter, Dreamer",
|
|
11
|
+
:bride_occupation => "Asst. Manager at Bank of Baroda",
|
|
12
|
+
:bride_email => "preritayadav@gmail.com",
|
|
13
|
+
:location => "+26° 52' 57.3024\", +75° 48' 24.75\"",
|
|
14
|
+
:event_schedule => [
|
|
15
|
+
" 7:00 pm Barat starts from Home",
|
|
16
|
+
" 8:00 pm Barat reaches venue",
|
|
17
|
+
"12:00 pm Phere"
|
|
18
|
+
],
|
|
19
|
+
:date => "2013-11-29"
|
|
20
|
+
}
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
module Wedding
|
|
2
|
+
# No wedding without a groom
|
|
3
|
+
class Groom
|
|
4
|
+
# Get him ready for all pomp and show
|
|
5
|
+
def initialize(config)
|
|
6
|
+
self.name = config[:groom_name]
|
|
7
|
+
self.about = config[:groom_about]
|
|
8
|
+
self.occupation = config[:groom_occupation]
|
|
9
|
+
self.email = config[:groom_email]
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Overriding for pretty printing
|
|
13
|
+
def to_s
|
|
14
|
+
groom_gungaan = %Q[
|
|
15
|
+
========= Groom ==========
|
|
16
|
+
|
|
17
|
+
The groom's name is #{self.name}
|
|
18
|
+
He is a #{self.about}
|
|
19
|
+
He works as a #{self.occupation}
|
|
20
|
+
If you want to contact him, his email ID
|
|
21
|
+
is #{self.email}
|
|
22
|
+
|
|
23
|
+
]
|
|
24
|
+
end
|
|
25
|
+
attr_accessor :name, :about, :occupation, :email
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module Wedding
|
|
2
|
+
class << self
|
|
3
|
+
def post_install_message
|
|
4
|
+
footer = <<'EOS'
|
|
5
|
+
|
|
6
|
+
==== Release notes for wedding gem ====
|
|
7
|
+
|
|
8
|
+
Now that you have installed this gem, you earn our immence respect.
|
|
9
|
+
You are the star guest of our wedding, you will receive our special
|
|
10
|
+
attention.
|
|
11
|
+
Go ahead and type `wedding` (wihtout backticks) on the command
|
|
12
|
+
prompt to see the list of commands available with it. Print your
|
|
13
|
+
personal invitation, and fire your browser to see the location of
|
|
14
|
+
the event. We love you!
|
|
15
|
+
|
|
16
|
+
Prerita and Jai
|
|
17
|
+
|
|
18
|
+
=======================================
|
|
19
|
+
|
|
20
|
+
EOS
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
data/screenshot.png
ADDED
|
Binary file
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
require 'wedding'
|
|
2
|
+
|
|
3
|
+
describe "Wedding#default_config" do
|
|
4
|
+
it "returns default config options" do
|
|
5
|
+
Wedding.default_config.should eql({
|
|
6
|
+
:groom_name => "Jai",
|
|
7
|
+
:groom_about => "Programmer, Traveller, Photographer, Biker, SlideShare Engineer",
|
|
8
|
+
:groom_occupation => "Hacker at SlideShare",
|
|
9
|
+
:groom_email => "jaipandya@gmail.com",
|
|
10
|
+
:bride_name => "Prerita",
|
|
11
|
+
:bride_about => "Banker, Traveller, Dancer, Painter, Dreamer",
|
|
12
|
+
:bride_occupation => "Asst. Manager at Bank of Baroda",
|
|
13
|
+
:bride_email => "preritayadav@gmail.com",
|
|
14
|
+
:location => "26° 53.415', 75° 48.466'",
|
|
15
|
+
:event_schedule => [
|
|
16
|
+
"7:00 pm Barats starts from Home",
|
|
17
|
+
"8:00 pm Barat reaches venue",
|
|
18
|
+
"12:00 pm Fere"
|
|
19
|
+
],
|
|
20
|
+
:date => "29 November 2013"
|
|
21
|
+
})
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
describe "Wedding::Ceremony" do
|
|
26
|
+
|
|
27
|
+
it "correctly initializes all the instance variables" do
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
it "launches the browser for map location" do
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
it "prints an awesome invitation message" do
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
it 'RSVPs for the event' do
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
end
|
data/wedding.gemspec
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
+
require 'wedding/version'
|
|
5
|
+
require 'wedding/post_install_message'
|
|
6
|
+
|
|
7
|
+
Gem::Specification.new do |spec|
|
|
8
|
+
spec.name = "wedding"
|
|
9
|
+
spec.version = Wedding::VERSION
|
|
10
|
+
spec.authors = ["Jai Pandya"]
|
|
11
|
+
spec.email = ["jaipandya@gmail.com"]
|
|
12
|
+
spec.description = <<-EOS
|
|
13
|
+
What could be better than a gem for a wedding. A fun experiment that generates
|
|
14
|
+
an invite for my wedding. The gem is generic in nature that accepts a configuration
|
|
15
|
+
object to work on.
|
|
16
|
+
EOS
|
|
17
|
+
spec.summary = %q{I created this gem for inviting friends to my wedding.}
|
|
18
|
+
spec.homepage = "http://github.com/jaipandya/wedding"
|
|
19
|
+
spec.license = "MIT"
|
|
20
|
+
|
|
21
|
+
spec.files = `git ls-files`.split($/)
|
|
22
|
+
spec.executables = ['wedding']
|
|
23
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
24
|
+
spec.require_paths = ["lib"]
|
|
25
|
+
|
|
26
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
|
27
|
+
spec.add_development_dependency "rake"
|
|
28
|
+
spec.add_development_dependency "rspec", "~> 2.6"
|
|
29
|
+
|
|
30
|
+
spec.post_install_message = Wedding.post_install_message
|
|
31
|
+
|
|
32
|
+
spec.add_runtime_dependency 'launchy', '2.3.0'
|
|
33
|
+
spec.add_runtime_dependency 'require_all', '~> 1.3.2'
|
|
34
|
+
spec.add_runtime_dependency 'thor', '~> 0.18'
|
|
35
|
+
spec.add_runtime_dependency 'artii', '~> 2.0.3'
|
|
36
|
+
spec.add_runtime_dependency 'rainbow', '~> 1.1.4'
|
|
37
|
+
|
|
38
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: wedding
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
prerelease: false
|
|
5
|
+
segments:
|
|
6
|
+
- 0
|
|
7
|
+
- 0
|
|
8
|
+
- 1
|
|
9
|
+
version: 0.0.1
|
|
10
|
+
platform: ruby
|
|
11
|
+
authors:
|
|
12
|
+
- Jai Pandya
|
|
13
|
+
autorequire:
|
|
14
|
+
bindir: bin
|
|
15
|
+
cert_chain: []
|
|
16
|
+
|
|
17
|
+
date: 2013-11-19 00:00:00 +05:30
|
|
18
|
+
default_executable:
|
|
19
|
+
dependencies:
|
|
20
|
+
- !ruby/object:Gem::Dependency
|
|
21
|
+
name: bundler
|
|
22
|
+
prerelease: false
|
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
|
24
|
+
requirements:
|
|
25
|
+
- - ~>
|
|
26
|
+
- !ruby/object:Gem::Version
|
|
27
|
+
segments:
|
|
28
|
+
- 1
|
|
29
|
+
- 3
|
|
30
|
+
version: "1.3"
|
|
31
|
+
type: :development
|
|
32
|
+
version_requirements: *id001
|
|
33
|
+
- !ruby/object:Gem::Dependency
|
|
34
|
+
name: rake
|
|
35
|
+
prerelease: false
|
|
36
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - ">="
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
segments:
|
|
41
|
+
- 0
|
|
42
|
+
version: "0"
|
|
43
|
+
type: :development
|
|
44
|
+
version_requirements: *id002
|
|
45
|
+
- !ruby/object:Gem::Dependency
|
|
46
|
+
name: rspec
|
|
47
|
+
prerelease: false
|
|
48
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
|
49
|
+
requirements:
|
|
50
|
+
- - ~>
|
|
51
|
+
- !ruby/object:Gem::Version
|
|
52
|
+
segments:
|
|
53
|
+
- 2
|
|
54
|
+
- 6
|
|
55
|
+
version: "2.6"
|
|
56
|
+
type: :development
|
|
57
|
+
version_requirements: *id003
|
|
58
|
+
- !ruby/object:Gem::Dependency
|
|
59
|
+
name: launchy
|
|
60
|
+
prerelease: false
|
|
61
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
|
62
|
+
requirements:
|
|
63
|
+
- - "="
|
|
64
|
+
- !ruby/object:Gem::Version
|
|
65
|
+
segments:
|
|
66
|
+
- 2
|
|
67
|
+
- 3
|
|
68
|
+
- 0
|
|
69
|
+
version: 2.3.0
|
|
70
|
+
type: :runtime
|
|
71
|
+
version_requirements: *id004
|
|
72
|
+
- !ruby/object:Gem::Dependency
|
|
73
|
+
name: require_all
|
|
74
|
+
prerelease: false
|
|
75
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
|
76
|
+
requirements:
|
|
77
|
+
- - ~>
|
|
78
|
+
- !ruby/object:Gem::Version
|
|
79
|
+
segments:
|
|
80
|
+
- 1
|
|
81
|
+
- 3
|
|
82
|
+
- 2
|
|
83
|
+
version: 1.3.2
|
|
84
|
+
type: :runtime
|
|
85
|
+
version_requirements: *id005
|
|
86
|
+
- !ruby/object:Gem::Dependency
|
|
87
|
+
name: thor
|
|
88
|
+
prerelease: false
|
|
89
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
|
90
|
+
requirements:
|
|
91
|
+
- - ~>
|
|
92
|
+
- !ruby/object:Gem::Version
|
|
93
|
+
segments:
|
|
94
|
+
- 0
|
|
95
|
+
- 18
|
|
96
|
+
version: "0.18"
|
|
97
|
+
type: :runtime
|
|
98
|
+
version_requirements: *id006
|
|
99
|
+
- !ruby/object:Gem::Dependency
|
|
100
|
+
name: artii
|
|
101
|
+
prerelease: false
|
|
102
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
|
103
|
+
requirements:
|
|
104
|
+
- - ~>
|
|
105
|
+
- !ruby/object:Gem::Version
|
|
106
|
+
segments:
|
|
107
|
+
- 2
|
|
108
|
+
- 0
|
|
109
|
+
- 3
|
|
110
|
+
version: 2.0.3
|
|
111
|
+
type: :runtime
|
|
112
|
+
version_requirements: *id007
|
|
113
|
+
- !ruby/object:Gem::Dependency
|
|
114
|
+
name: rainbow
|
|
115
|
+
prerelease: false
|
|
116
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
|
117
|
+
requirements:
|
|
118
|
+
- - ~>
|
|
119
|
+
- !ruby/object:Gem::Version
|
|
120
|
+
segments:
|
|
121
|
+
- 1
|
|
122
|
+
- 1
|
|
123
|
+
- 4
|
|
124
|
+
version: 1.1.4
|
|
125
|
+
type: :runtime
|
|
126
|
+
version_requirements: *id008
|
|
127
|
+
description: |
|
|
128
|
+
What could be better than a gem for a wedding. A fun experiment that generates
|
|
129
|
+
an invite for my wedding. The gem is generic in nature that accepts a configuration
|
|
130
|
+
object to work on.
|
|
131
|
+
|
|
132
|
+
email:
|
|
133
|
+
- jaipandya@gmail.com
|
|
134
|
+
executables:
|
|
135
|
+
- wedding
|
|
136
|
+
extensions: []
|
|
137
|
+
|
|
138
|
+
extra_rdoc_files: []
|
|
139
|
+
|
|
140
|
+
files:
|
|
141
|
+
- .gitignore
|
|
142
|
+
- Gemfile
|
|
143
|
+
- LICENSE.txt
|
|
144
|
+
- README.md
|
|
145
|
+
- Rakefile
|
|
146
|
+
- bin/wedding
|
|
147
|
+
- lib/wedding.rb
|
|
148
|
+
- lib/wedding/bride.rb
|
|
149
|
+
- lib/wedding/ceremony.rb
|
|
150
|
+
- lib/wedding/cli.rb
|
|
151
|
+
- lib/wedding/default_config.rb
|
|
152
|
+
- lib/wedding/groom.rb
|
|
153
|
+
- lib/wedding/post_install_message.rb
|
|
154
|
+
- lib/wedding/version.rb
|
|
155
|
+
- screenshot.png
|
|
156
|
+
- spec/wedding_spec.rb
|
|
157
|
+
- wedding.gemspec
|
|
158
|
+
has_rdoc: true
|
|
159
|
+
homepage: http://github.com/jaipandya/wedding
|
|
160
|
+
licenses:
|
|
161
|
+
- MIT
|
|
162
|
+
post_install_message: |+
|
|
163
|
+
|
|
164
|
+
==== Release notes for wedding gem ====
|
|
165
|
+
|
|
166
|
+
Now that you have installed this gem, you earn our immence respect.
|
|
167
|
+
You are the star guest of our wedding, you will receive our special
|
|
168
|
+
attention.
|
|
169
|
+
Go ahead and type `wedding` (wihtout backticks) on the command
|
|
170
|
+
prompt to see the list of commands available with it. Print your
|
|
171
|
+
personal invitation, and fire your browser to see the location of
|
|
172
|
+
the event. We love you!
|
|
173
|
+
|
|
174
|
+
Prerita and Jai
|
|
175
|
+
|
|
176
|
+
=======================================
|
|
177
|
+
|
|
178
|
+
rdoc_options: []
|
|
179
|
+
|
|
180
|
+
require_paths:
|
|
181
|
+
- lib
|
|
182
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
183
|
+
requirements:
|
|
184
|
+
- - ">="
|
|
185
|
+
- !ruby/object:Gem::Version
|
|
186
|
+
segments:
|
|
187
|
+
- 0
|
|
188
|
+
version: "0"
|
|
189
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
190
|
+
requirements:
|
|
191
|
+
- - ">="
|
|
192
|
+
- !ruby/object:Gem::Version
|
|
193
|
+
segments:
|
|
194
|
+
- 0
|
|
195
|
+
version: "0"
|
|
196
|
+
requirements: []
|
|
197
|
+
|
|
198
|
+
rubyforge_project:
|
|
199
|
+
rubygems_version: 1.3.6
|
|
200
|
+
signing_key:
|
|
201
|
+
specification_version: 3
|
|
202
|
+
summary: I created this gem for inviting friends to my wedding.
|
|
203
|
+
test_files:
|
|
204
|
+
- spec/wedding_spec.rb
|