fuji 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/CONTRIBUTING.md +7 -0
- data/Gemfile +2 -0
- data/Gemfile.lock +35 -0
- data/LICENSE +22 -0
- data/README.md +54 -0
- data/Rakefile +6 -0
- data/fuji.gemspec +23 -0
- data/lib/fuji.rb +134 -0
- data/lib/fuji/version.rb +3 -0
- data/spec/fuji_spec.rb +91 -0
- data/spec/spec.opts +4 -0
- data/spec/spec_helper.rb +10 -0
- data/stylesheets/_fuji.sass +69 -0
- data/tmtags +24 -0
- data/tmtagsHistory +1 -0
- metadata +134 -0
data/.gitignore
ADDED
data/CONTRIBUTING.md
ADDED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
fuji (0.0.1)
|
5
|
+
compass
|
6
|
+
sass
|
7
|
+
|
8
|
+
GEM
|
9
|
+
remote: https://rubygems.org/
|
10
|
+
specs:
|
11
|
+
chunky_png (1.2.6)
|
12
|
+
compass (0.12.2)
|
13
|
+
chunky_png (~> 1.2)
|
14
|
+
fssm (>= 0.2.7)
|
15
|
+
sass (~> 3.1)
|
16
|
+
diff-lcs (1.1.3)
|
17
|
+
fssm (0.2.9)
|
18
|
+
rake (10.0.2)
|
19
|
+
rspec (2.11.0)
|
20
|
+
rspec-core (~> 2.11.0)
|
21
|
+
rspec-expectations (~> 2.11.0)
|
22
|
+
rspec-mocks (~> 2.11.0)
|
23
|
+
rspec-core (2.11.1)
|
24
|
+
rspec-expectations (2.11.3)
|
25
|
+
diff-lcs (~> 1.1.3)
|
26
|
+
rspec-mocks (2.11.2)
|
27
|
+
sass (3.2.1)
|
28
|
+
|
29
|
+
PLATFORMS
|
30
|
+
ruby
|
31
|
+
|
32
|
+
DEPENDENCIES
|
33
|
+
fuji!
|
34
|
+
rake
|
35
|
+
rspec
|
data/LICENSE
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2012 zeke
|
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,54 @@
|
|
1
|
+
Fuji
|
2
|
+
====
|
3
|
+
|
4
|
+
Fuji is a ruby gem for rendering and styling Heroku's global header and nav.
|
5
|
+
|
6
|
+
The only dependencies are Sass and Compass, so you can use it with Rails or Sinatra.
|
7
|
+
|
8
|
+
Usage
|
9
|
+
-----
|
10
|
+
|
11
|
+
Add fuji to your application's Gemfile:
|
12
|
+
|
13
|
+
```ruby
|
14
|
+
gem 'fuji'
|
15
|
+
```
|
16
|
+
|
17
|
+
Render the header in your application layout:
|
18
|
+
|
19
|
+
```haml
|
20
|
+
= Fuji::Header.render
|
21
|
+
```
|
22
|
+
|
23
|
+
The render method accepts the following options:
|
24
|
+
|
25
|
+
```ruby
|
26
|
+
{
|
27
|
+
gravatar_default: "http://assets.heroku.com.s3.amazonaws.com/addons.heroku.com/gravatar_default.png",
|
28
|
+
logo_text: "heroku",
|
29
|
+
logo_url: "https://www.heroku.com",
|
30
|
+
user: nil,
|
31
|
+
login_path: nil,
|
32
|
+
logout_path: nil,
|
33
|
+
}
|
34
|
+
```
|
35
|
+
|
36
|
+
Style it up by importing the fuji partial into your main sass/scss stylesheet
|
37
|
+
|
38
|
+
```sass
|
39
|
+
// Override defaults if you wish:
|
40
|
+
$fuji-foreground-color: #FFF
|
41
|
+
$fuji-text-color: rgba(#FFF, 1)
|
42
|
+
$fuji-highlight-color: #FFF
|
43
|
+
$fuji-max-width: 960px
|
44
|
+
|
45
|
+
@import "fuji"
|
46
|
+
```
|
47
|
+
|
48
|
+
## Contributing
|
49
|
+
|
50
|
+
See CONTRIBUTING.md
|
51
|
+
|
52
|
+
## License
|
53
|
+
|
54
|
+
MIT. Go nuts.
|
data/Rakefile
ADDED
data/fuji.gemspec
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
require File.expand_path('../lib/fuji/version', __FILE__)
|
3
|
+
|
4
|
+
Gem::Specification.new do |gem|
|
5
|
+
gem.authors = ["Zeke Sikelianos"]
|
6
|
+
gem.email = ["zeke@sikelianos.com"]
|
7
|
+
gem.description = %q{heroku's site header}
|
8
|
+
gem.summary = %q{heroku's site header}
|
9
|
+
gem.homepage = "https://github.com/heroku/fuji"
|
10
|
+
|
11
|
+
gem.files = `git ls-files`.split($\)
|
12
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
13
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
14
|
+
gem.name = "fuji"
|
15
|
+
gem.require_paths = ["lib"]
|
16
|
+
gem.version = Fuji::VERSION
|
17
|
+
|
18
|
+
gem.add_development_dependency 'rspec'
|
19
|
+
gem.add_development_dependency 'rake'
|
20
|
+
|
21
|
+
gem.add_dependency "compass"
|
22
|
+
gem.add_dependency "sass"
|
23
|
+
end
|
data/lib/fuji.rb
ADDED
@@ -0,0 +1,134 @@
|
|
1
|
+
require "fuji/version"
|
2
|
+
require 'digest/md5'
|
3
|
+
require 'uri'
|
4
|
+
require "compass"
|
5
|
+
|
6
|
+
# module Foo
|
7
|
+
#
|
8
|
+
# module Header
|
9
|
+
# def render
|
10
|
+
# puts "rendered!"
|
11
|
+
# end
|
12
|
+
# end
|
13
|
+
# extend Header
|
14
|
+
#
|
15
|
+
# end
|
16
|
+
|
17
|
+
module Fuji
|
18
|
+
|
19
|
+
def self.render
|
20
|
+
::Header.render
|
21
|
+
end
|
22
|
+
|
23
|
+
# This makes an _fuji.sass partial available to your app.
|
24
|
+
class Style
|
25
|
+
base_directory = File.join(File.dirname(__FILE__), '..')
|
26
|
+
Compass::Frameworks.register('fuji', :path => base_directory)
|
27
|
+
end
|
28
|
+
|
29
|
+
class Header
|
30
|
+
def self.render(options={})
|
31
|
+
|
32
|
+
# Options
|
33
|
+
options[:gravatar_fallback_url] ||= "http://assets.heroku.com.s3.amazonaws.com/addons.heroku.com/gravatar_default.png"
|
34
|
+
options[:logo_text] ||= "heroku"
|
35
|
+
options[:logo_url] ||= "https://www.heroku.com"
|
36
|
+
options[:user] ||= nil
|
37
|
+
options[:login_path] ||= nil
|
38
|
+
options[:logout_path] ||= nil
|
39
|
+
options[:links] ||= nil
|
40
|
+
|
41
|
+
links = []
|
42
|
+
|
43
|
+
unless options[:user]
|
44
|
+
links << {id: :how, name: 'How it Works', url: 'https://heroku.com/how'}
|
45
|
+
links << {id: :pricing, name: 'Pricing', url: 'https://www.heroku.com/pricing'}
|
46
|
+
end
|
47
|
+
|
48
|
+
links << {id: :apps, name: 'Apps', url: 'https://dashboard.heroku.com'}
|
49
|
+
links << {id: :addons, name: 'Addons', url: 'https://addons.heroku.com'}
|
50
|
+
links << {id: :documentation, name: 'Documentation', url: 'https://devcenter.heroku.com'}
|
51
|
+
links << {id: :support, name: 'Support', url: 'https://help.heroku.com'}
|
52
|
+
|
53
|
+
if options[:user] && options[:logout_path]
|
54
|
+
links << {id: :logout, name: 'Logout', url: options[:logout_path]}
|
55
|
+
end
|
56
|
+
|
57
|
+
# Gravatar
|
58
|
+
if options[:user] && options[:user].email
|
59
|
+
gravatar_url = [
|
60
|
+
"https://secure.gravatar.com/avatar/",
|
61
|
+
Digest::MD5.hexdigest(options[:user].email),
|
62
|
+
"?default=",
|
63
|
+
URI.escape(options[:gravatar_fallback_url])
|
64
|
+
].join("")
|
65
|
+
links << {
|
66
|
+
id: :gravatar,
|
67
|
+
name: Fuji::Helper.image_tag(gravatar_url),
|
68
|
+
url: 'https://dashboard.heroku.com/account'
|
69
|
+
}
|
70
|
+
end
|
71
|
+
|
72
|
+
if options[:login_path] && options[:current_user].nil?
|
73
|
+
links << {id: :login, name: 'Login', url: options[:login_path]}
|
74
|
+
end
|
75
|
+
|
76
|
+
# Join links together
|
77
|
+
links = links.map do |link|
|
78
|
+
Fuji::Helper.link_to(link[:name], link[:url], link[:id])
|
79
|
+
end.join("\n")
|
80
|
+
|
81
|
+
# Prepare the HTML output
|
82
|
+
out = "
|
83
|
+
<div id='fuji' class='fuji'>
|
84
|
+
<div class='container'>
|
85
|
+
<h1>
|
86
|
+
<a href='#{options[:logo_url]}'>#{options[:logo_text]}</a>
|
87
|
+
</h1>
|
88
|
+
<ul>#{links}</ul>
|
89
|
+
</div>
|
90
|
+
</div>
|
91
|
+
"
|
92
|
+
|
93
|
+
# If we're in Rails, make it HTML safe
|
94
|
+
out.respond_to?(:html_safe) ? out.html_safe : out
|
95
|
+
end
|
96
|
+
|
97
|
+
# def self.default_links(options={})
|
98
|
+
# end
|
99
|
+
|
100
|
+
end
|
101
|
+
|
102
|
+
class Helper
|
103
|
+
|
104
|
+
def self.current_site_matches?(search_string_or_url, request_object=nil)
|
105
|
+
# Allow request object to be mocked, for testing purposes
|
106
|
+
request ||= request_object
|
107
|
+
return false unless request
|
108
|
+
|
109
|
+
# Clean the string up
|
110
|
+
q = extract_domain(search_string_or_url).to_s
|
111
|
+
|
112
|
+
return true if request.url && request.url.include?(q)
|
113
|
+
return true if request.host_with_port && request.host_with_port.include?(q)
|
114
|
+
false
|
115
|
+
end
|
116
|
+
|
117
|
+
def self.extract_domain(string)
|
118
|
+
string =~ (/^(?:\w+:\/\/)?([^\/?]+)(?:\/|\?|$)/) ? $1 : string
|
119
|
+
end
|
120
|
+
|
121
|
+
def self.link_to(name, url, css="")
|
122
|
+
css << " active" if Fuji::Helper.current_site_matches?(url)
|
123
|
+
"<li><a href='#{url}' class='#{css}'>#{name}</a></li>"
|
124
|
+
end
|
125
|
+
|
126
|
+
def self.image_tag(url)
|
127
|
+
"<img src='#{url}'>"
|
128
|
+
end
|
129
|
+
|
130
|
+
end
|
131
|
+
|
132
|
+
end
|
133
|
+
|
134
|
+
# ActionView::Base.send :include, Fuji::ViewHelpers if defined?(ActionView)
|
data/lib/fuji/version.rb
ADDED
data/spec/fuji_spec.rb
ADDED
@@ -0,0 +1,91 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'digest/md5'
|
3
|
+
|
4
|
+
describe Fuji::Header do
|
5
|
+
|
6
|
+
describe "fuji" do
|
7
|
+
before do
|
8
|
+
@user = OpenStruct.new(email: "bob@heroku.com")
|
9
|
+
end
|
10
|
+
|
11
|
+
it "outputs an HTML string" do
|
12
|
+
Fuji::Header.render.should match /div id='fuji'/
|
13
|
+
end
|
14
|
+
|
15
|
+
it "renders the user's avatar" do
|
16
|
+
h = Fuji::Header.render(user: @user)
|
17
|
+
hash = Digest::MD5.hexdigest(@user.email)
|
18
|
+
|
19
|
+
h.should match /#{hash}/
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
23
|
+
|
24
|
+
describe "Fuji::Helper.current_site_matches?" do
|
25
|
+
|
26
|
+
describe "inside a rails app" do
|
27
|
+
before do
|
28
|
+
@request = OpenStruct.new(protocol: "https://", host_with_port: "dhh.com", fullpath: "/foo")
|
29
|
+
end
|
30
|
+
|
31
|
+
it "detects search string" do
|
32
|
+
Fuji::Helper.current_site_matches?('dhh.com/foo', @request).should == true
|
33
|
+
end
|
34
|
+
|
35
|
+
it "doesn't detect search string" do
|
36
|
+
Fuji::Helper.current_site_matches?('some other shit', @request).should == false
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
40
|
+
|
41
|
+
describe "inside a sinatra app" do
|
42
|
+
|
43
|
+
before do
|
44
|
+
@request = OpenStruct.new(url: "https://mizerany.com")
|
45
|
+
end
|
46
|
+
|
47
|
+
it "detects search string" do
|
48
|
+
Fuji::Helper.current_site_matches?('mizerany', @request).should == true
|
49
|
+
end
|
50
|
+
|
51
|
+
it "doesn't detect search string" do
|
52
|
+
Fuji::Helper.current_site_matches?('some other blake', @request).should == false
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
56
|
+
|
57
|
+
describe "in any kind of ruby app" do
|
58
|
+
|
59
|
+
before do
|
60
|
+
@request = OpenStruct.new(url: "https://the-rest.com")
|
61
|
+
end
|
62
|
+
|
63
|
+
it "allows a symbol as a search string" do
|
64
|
+
Fuji::Helper.current_site_matches?(:rest, @request).should == true
|
65
|
+
end
|
66
|
+
|
67
|
+
it "matches against domain name when given a full URL" do
|
68
|
+
Fuji::Helper.current_site_matches?("http://the-rest.com/extra/mojo", @request).should == true
|
69
|
+
end
|
70
|
+
|
71
|
+
it "returns false if request object is nil" do
|
72
|
+
Fuji::Helper.current_site_matches?('foo').should == false
|
73
|
+
end
|
74
|
+
|
75
|
+
end
|
76
|
+
|
77
|
+
end
|
78
|
+
|
79
|
+
describe "extract_domain" do
|
80
|
+
|
81
|
+
it "pulls the domain out of a URL string" do
|
82
|
+
Fuji::Helper.extract_domain("https://dweeb-fest.example.com/sho/biz").should == "dweeb-fest.example.com"
|
83
|
+
end
|
84
|
+
|
85
|
+
it "returns the original string if it doesn't contain a domain" do
|
86
|
+
Fuji::Helper.extract_domain("turkey jerky").should == "turkey jerky"
|
87
|
+
end
|
88
|
+
|
89
|
+
end
|
90
|
+
|
91
|
+
end
|
data/spec/spec.opts
ADDED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,69 @@
|
|
1
|
+
// Config
|
2
|
+
$fuji-foreground-color: #FFF !default
|
3
|
+
$fuji-text-color: rgba(#FFF, 1) !default
|
4
|
+
$fuji-highlight-color: #aed582 !default
|
5
|
+
$fuji-max-width: 960px !default
|
6
|
+
$fuji-line-edge-color: rgba($fuji-foreground-color, 0) !default
|
7
|
+
$fuji-line-middle-color: rgba($fuji-foreground-color, 0.1) !default
|
8
|
+
$fuji-line-size: 40% !default
|
9
|
+
|
10
|
+
#fuji
|
11
|
+
+transition(all 0.5s false 0s)
|
12
|
+
float: none
|
13
|
+
overflow: hidden
|
14
|
+
margin-bottom: 20px
|
15
|
+
padding: 14px 0
|
16
|
+
|
17
|
+
.container
|
18
|
+
margin-left: auto
|
19
|
+
margin-right: auto
|
20
|
+
position: relative
|
21
|
+
min-width: 320px
|
22
|
+
max-width: $fuji-max-width
|
23
|
+
|
24
|
+
h1
|
25
|
+
float: left
|
26
|
+
margin: 0
|
27
|
+
padding: 0
|
28
|
+
a
|
29
|
+
+transition(all 0.3s false 0s)
|
30
|
+
max-width: 300px
|
31
|
+
overflow: hidden
|
32
|
+
span
|
33
|
+
display: none
|
34
|
+
|
35
|
+
ul
|
36
|
+
list-style: none
|
37
|
+
margin: 4px 0 0 0
|
38
|
+
padding: 0
|
39
|
+
float: right
|
40
|
+
max-width: 600px
|
41
|
+
> li
|
42
|
+
float: left
|
43
|
+
+background-image(linear-gradient(top, $fuji-line-edge-color, $fuji-line-middle-color $fuji-line-size, $fuji-line-middle-color (100% - $fuji-line-size), $fuji-line-edge-color))
|
44
|
+
background-position: left center
|
45
|
+
background-repeat: no-repeat
|
46
|
+
background-size: 1px 100%
|
47
|
+
font-size: 13px
|
48
|
+
a
|
49
|
+
+transition(all 0.3s false 0s)
|
50
|
+
color: rgba($fuji-text-color, 0.5)
|
51
|
+
display: block
|
52
|
+
padding: 7px 15px
|
53
|
+
text-decoration: none
|
54
|
+
&:hover, &.active
|
55
|
+
text-decoration: underline
|
56
|
+
color: $fuji-highlight-color
|
57
|
+
&.em
|
58
|
+
color: rgba($fuji-text-color, 1)
|
59
|
+
|
60
|
+
&.gravatar
|
61
|
+
padding: 0 0 0 15px
|
62
|
+
img
|
63
|
+
display: block
|
64
|
+
width: 32px
|
65
|
+
height: 32px
|
66
|
+
+border-radius(16px)
|
67
|
+
|
68
|
+
&:first-child
|
69
|
+
background: none
|
data/tmtags
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
|
2
|
+
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
|
3
|
+
!_TAG_PROGRAM_AUTHOR Darren Hiebert /dhiebert@users.sourceforge.net/
|
4
|
+
!_TAG_PROGRAM_NAME Exuberant Ctags //
|
5
|
+
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
|
6
|
+
!_TAG_PROGRAM_VERSION Development //
|
7
|
+
"Fuji /Users/zeke/Projects/hero/fuji/spec/fuji_spec.rb /^ describe "Fuji::Helper.current_site_matches?" do$/;" describe line:24
|
8
|
+
"fuji" do /Users/zeke/Projects/hero/fuji/spec/fuji_spec.rb /^ describe "fuji" do$/;" describe line:6
|
9
|
+
"extract_domain" do /Users/zeke/Projects/hero/fuji/spec/fuji_spec.rb /^ describe "extract_domain" do$/;" describe line:79
|
10
|
+
"in any kind of ruby app" do /Users/zeke/Projects/hero/fuji/spec/fuji_spec.rb /^ describe "in any kind of ruby app" do$/;" describe line:57
|
11
|
+
"inside a rails app" do /Users/zeke/Projects/hero/fuji/spec/fuji_spec.rb /^ describe "inside a rails app" do$/;" describe line:26
|
12
|
+
"inside a sinatra app" do /Users/zeke/Projects/hero/fuji/spec/fuji_spec.rb /^ describe "inside a sinatra app" do$/;" describe line:41
|
13
|
+
Fuji /Users/zeke/Projects/hero/fuji/lib/fuji.rb /^module Fuji$/;" module line:17
|
14
|
+
Fuji /Users/zeke/Projects/hero/fuji/lib/fuji/version.rb /^module Fuji$/;" module line:1
|
15
|
+
Fuji /Users/zeke/Projects/hero/fuji/spec/fuji_spec.rb /^describe Fuji::Header do$/;" describe line:4
|
16
|
+
Header /Users/zeke/Projects/hero/fuji/lib/fuji.rb /^ class Header$/;" class line:29
|
17
|
+
Helper /Users/zeke/Projects/hero/fuji/lib/fuji.rb /^ class Helper$/;" class line:102
|
18
|
+
Style /Users/zeke/Projects/hero/fuji/lib/fuji.rb /^ class Style$/;" class line:24
|
19
|
+
current_site_matches /Users/zeke/Projects/hero/fuji/lib/fuji.rb /^ def self.current_site_matches?(search_string_or_url, request_object=nil)$/;" singleton method line:104
|
20
|
+
extract_domain /Users/zeke/Projects/hero/fuji/lib/fuji.rb /^ def self.extract_domain(string)$/;" singleton method line:117
|
21
|
+
image_tag /Users/zeke/Projects/hero/fuji/lib/fuji.rb /^ def self.image_tag(url)$/;" singleton method line:126
|
22
|
+
link_to /Users/zeke/Projects/hero/fuji/lib/fuji.rb /^ def self.link_to(name, url, css="")$/;" singleton method line:121
|
23
|
+
render /Users/zeke/Projects/hero/fuji/lib/fuji.rb /^ def self.render(options={})$/;" singleton method line:30
|
24
|
+
render /Users/zeke/Projects/hero/fuji/lib/fuji.rb /^ def self.render$/;" singleton method line:19
|
data/tmtagsHistory
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
<dt><span class="filename"><a href="txmt://open?url=file:///Users/zeke/Projects/hero/fuji/lib/fuji.rb&line=98">fuji.rb:98 -- /Users/zeke/Projects/hero/fuji/lib</a></span><br><div class="code"> # end</div></dt>
|
metadata
ADDED
@@ -0,0 +1,134 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: fuji
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Zeke Sikelianos
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2012-12-11 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rspec
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :development
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: rake
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
type: :development
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: compass
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :runtime
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: sass
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :runtime
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
description: heroku's site header
|
79
|
+
email:
|
80
|
+
- zeke@sikelianos.com
|
81
|
+
executables: []
|
82
|
+
extensions: []
|
83
|
+
extra_rdoc_files: []
|
84
|
+
files:
|
85
|
+
- .gitignore
|
86
|
+
- CONTRIBUTING.md
|
87
|
+
- Gemfile
|
88
|
+
- Gemfile.lock
|
89
|
+
- LICENSE
|
90
|
+
- README.md
|
91
|
+
- Rakefile
|
92
|
+
- fuji.gemspec
|
93
|
+
- lib/fuji.rb
|
94
|
+
- lib/fuji/version.rb
|
95
|
+
- spec/fuji_spec.rb
|
96
|
+
- spec/spec.opts
|
97
|
+
- spec/spec_helper.rb
|
98
|
+
- stylesheets/_fuji.sass
|
99
|
+
- tmtags
|
100
|
+
- tmtagsHistory
|
101
|
+
homepage: https://github.com/heroku/fuji
|
102
|
+
licenses: []
|
103
|
+
post_install_message:
|
104
|
+
rdoc_options: []
|
105
|
+
require_paths:
|
106
|
+
- lib
|
107
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
108
|
+
none: false
|
109
|
+
requirements:
|
110
|
+
- - ! '>='
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: '0'
|
113
|
+
segments:
|
114
|
+
- 0
|
115
|
+
hash: -2441385227944830096
|
116
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
117
|
+
none: false
|
118
|
+
requirements:
|
119
|
+
- - ! '>='
|
120
|
+
- !ruby/object:Gem::Version
|
121
|
+
version: '0'
|
122
|
+
segments:
|
123
|
+
- 0
|
124
|
+
hash: -2441385227944830096
|
125
|
+
requirements: []
|
126
|
+
rubyforge_project:
|
127
|
+
rubygems_version: 1.8.24
|
128
|
+
signing_key:
|
129
|
+
specification_version: 3
|
130
|
+
summary: heroku's site header
|
131
|
+
test_files:
|
132
|
+
- spec/fuji_spec.rb
|
133
|
+
- spec/spec.opts
|
134
|
+
- spec/spec_helper.rb
|