bamboo 0.2.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/bamboo/constants.rb +1 -1
- data/lib/bamboo/grid.rb +41 -8
- data/lib/bamboo/version.rb +1 -1
- data/server/Gemfile +3 -0
- data/server/Gemfile.lock +20 -0
- data/server/assets/reset.css +48 -0
- data/server/assets/scripts.js +0 -0
- data/server/assets/style.css +43 -0
- data/server/server.rb +17 -0
- data/server/views/application.erb +13 -0
- data/server/views/modular.erb +7 -0
- data/server/views/uniform.erb +47 -0
- metadata +11 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e877f0f54c95715aa58e27061d0ae4bfb1d783b9
|
4
|
+
data.tar.gz: 56104e9b8cba9b1002bc1f82b14f7d60e3cfb061
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d1e0c335fea7124a4fb1ceab52b5864caf9c21a9cb0e8f7b63febaf39e7c40b0fa86fd1a050280b7659d40af0bebd86d0498694bfa58e5ef3ddba49b2a53ff10
|
7
|
+
data.tar.gz: 16b0270d7d0520b08e98c0db5323a4d2133562512e0c66910a1ebd7747bdd63655a0fecec31f854e7896d9dd8c7cfb2b69d8044264c36153f11956b8e88344bf
|
data/lib/bamboo/constants.rb
CHANGED
data/lib/bamboo/grid.rb
CHANGED
@@ -1,11 +1,40 @@
|
|
1
1
|
module Bamboo
|
2
|
-
class Grid
|
2
|
+
class Grid
|
3
|
+
def self.scaffold_css(max_width = "100%")
|
4
|
+
css = %{
|
5
|
+
*,
|
6
|
+
*::before,
|
7
|
+
*::after {
|
8
|
+
box-sizing: border-box;
|
9
|
+
}
|
10
|
+
|
11
|
+
.container {
|
12
|
+
max-width: #{max_width}
|
13
|
+
}
|
14
|
+
|
15
|
+
.row::after {
|
16
|
+
content: ".";
|
17
|
+
visibility: hidden;
|
18
|
+
display: block;
|
19
|
+
height: 0;
|
20
|
+
clear: both;
|
21
|
+
}
|
22
|
+
|
23
|
+
[class^=col-] {
|
24
|
+
display: inline-block;
|
25
|
+
float: left;
|
26
|
+
}
|
27
|
+
}
|
28
|
+
|
29
|
+
css.gsub(/[\s]/,"")
|
30
|
+
end
|
31
|
+
|
3
32
|
def self.uniform(columns = 12)
|
4
33
|
column_widths = []
|
5
34
|
single_width = Bamboo::TOTAL_WIDTH / Float(columns)
|
6
35
|
columns.times { |index| column_widths.push single_width * (index + 1) }
|
7
36
|
|
8
|
-
{ column_widths: column_widths, css:
|
37
|
+
{ column_widths: column_widths, css: column_css(column_widths) }
|
9
38
|
end
|
10
39
|
|
11
40
|
def self.modular(columns = 2, scale = Bamboo::GOLDEN_RATIO)
|
@@ -14,7 +43,7 @@ module Bamboo
|
|
14
43
|
available_width = Bamboo::TOTAL_WIDTH
|
15
44
|
|
16
45
|
columns.times do |index|
|
17
|
-
if index == columns - 1
|
46
|
+
if index == columns - 1 # last column should use all remaining width
|
18
47
|
column_widths.push available_width
|
19
48
|
else
|
20
49
|
width = available_width / scale
|
@@ -24,13 +53,17 @@ module Bamboo
|
|
24
53
|
end
|
25
54
|
end
|
26
55
|
|
27
|
-
{ column_widths: column_widths, css:
|
56
|
+
{ column_widths: column_widths, css: column_css(column_widths) }
|
28
57
|
end
|
29
58
|
|
30
|
-
def self.
|
31
|
-
|
32
|
-
|
59
|
+
def self.column_css(columns)
|
60
|
+
template = %{
|
61
|
+
<% columns.map.with_index do |width, index| %>
|
62
|
+
.col-<%= index + 1 %> { width: <%= width %>% }
|
63
|
+
<% end %>
|
64
|
+
}
|
65
|
+
ERB.new(template).result(binding).gsub(/[\s]/,"")
|
33
66
|
end
|
34
|
-
private_class_method :
|
67
|
+
private_class_method :column_css
|
35
68
|
end
|
36
69
|
end
|
data/lib/bamboo/version.rb
CHANGED
data/server/Gemfile
ADDED
data/server/Gemfile.lock
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
GEM
|
2
|
+
remote: https://rubygems.org/
|
3
|
+
specs:
|
4
|
+
rack (1.6.4)
|
5
|
+
rack-protection (1.5.3)
|
6
|
+
rack
|
7
|
+
sinatra (1.4.7)
|
8
|
+
rack (~> 1.5)
|
9
|
+
rack-protection (~> 1.4)
|
10
|
+
tilt (>= 1.3, < 3)
|
11
|
+
tilt (2.0.2)
|
12
|
+
|
13
|
+
PLATFORMS
|
14
|
+
ruby
|
15
|
+
|
16
|
+
DEPENDENCIES
|
17
|
+
sinatra
|
18
|
+
|
19
|
+
BUNDLED WITH
|
20
|
+
1.11.2
|
@@ -0,0 +1,48 @@
|
|
1
|
+
/* http://meyerweb.com/eric/tools/css/reset/
|
2
|
+
v2.0 | 20110126
|
3
|
+
License: none (public domain)
|
4
|
+
*/
|
5
|
+
|
6
|
+
html, body, div, span, applet, object, iframe,
|
7
|
+
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
8
|
+
a, abbr, acronym, address, big, cite, code,
|
9
|
+
del, dfn, em, img, ins, kbd, q, s, samp,
|
10
|
+
small, strike, strong, sub, sup, tt, var,
|
11
|
+
b, u, i, center,
|
12
|
+
dl, dt, dd, ol, ul, li,
|
13
|
+
fieldset, form, label, legend,
|
14
|
+
table, caption, tbody, tfoot, thead, tr, th, td,
|
15
|
+
article, aside, canvas, details, embed,
|
16
|
+
figure, figcaption, footer, header, hgroup,
|
17
|
+
menu, nav, output, ruby, section, summary,
|
18
|
+
time, mark, audio, video {
|
19
|
+
margin: 0;
|
20
|
+
padding: 0;
|
21
|
+
border: 0;
|
22
|
+
font-size: 100%;
|
23
|
+
font: inherit;
|
24
|
+
vertical-align: baseline;
|
25
|
+
}
|
26
|
+
/* HTML5 display-role reset for older browsers */
|
27
|
+
article, aside, details, figcaption, figure,
|
28
|
+
footer, header, hgroup, menu, nav, section {
|
29
|
+
display: block;
|
30
|
+
}
|
31
|
+
body {
|
32
|
+
line-height: 1;
|
33
|
+
}
|
34
|
+
ol, ul {
|
35
|
+
list-style: none;
|
36
|
+
}
|
37
|
+
blockquote, q {
|
38
|
+
quotes: none;
|
39
|
+
}
|
40
|
+
blockquote:before, blockquote:after,
|
41
|
+
q:before, q:after {
|
42
|
+
content: '';
|
43
|
+
content: none;
|
44
|
+
}
|
45
|
+
table {
|
46
|
+
border-collapse: collapse;
|
47
|
+
border-spacing: 0;
|
48
|
+
}
|
File without changes
|
@@ -0,0 +1,43 @@
|
|
1
|
+
*,
|
2
|
+
*::before,
|
3
|
+
*::after {
|
4
|
+
box-sizing: border-box;
|
5
|
+
}
|
6
|
+
|
7
|
+
body {
|
8
|
+
font-family: Menlo, monospace;
|
9
|
+
}
|
10
|
+
|
11
|
+
.container {
|
12
|
+
max-width: 960px;
|
13
|
+
margin: 0 auto;
|
14
|
+
background-color: #F7DFFF;
|
15
|
+
}
|
16
|
+
|
17
|
+
.row {
|
18
|
+
background-color: #FFF7DF;
|
19
|
+
margin-bottom: 1rem;
|
20
|
+
}
|
21
|
+
|
22
|
+
.row::after {
|
23
|
+
content: ".";
|
24
|
+
visibility: hidden;
|
25
|
+
display: block;
|
26
|
+
height: 0;
|
27
|
+
clear: both;
|
28
|
+
}
|
29
|
+
|
30
|
+
[class^=col-] {
|
31
|
+
background-color: #DFFFF7;
|
32
|
+
display: inline-block;
|
33
|
+
float: left;
|
34
|
+
text-align: center;
|
35
|
+
line-height: 3rem;
|
36
|
+
height: 3rem;
|
37
|
+
box-shadow: inset 0 0 0 10px #B3FFEC;
|
38
|
+
border-right: 1px solid #00FFBF;
|
39
|
+
}
|
40
|
+
|
41
|
+
[class^=col-]:last-child {
|
42
|
+
border-right: none;
|
43
|
+
}
|
data/server/server.rb
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
require "sinatra"
|
2
|
+
require "../lib/bamboo"
|
3
|
+
|
4
|
+
set :public_folder, File.dirname(__FILE__) + "/assets/"
|
5
|
+
|
6
|
+
get "/uniform" do
|
7
|
+
grid = Bamboo::Grid.uniform 12
|
8
|
+
css = Bamboo::Grid.scaffold_css
|
9
|
+
erb :uniform, layout: :application, locals: { grid: grid, css: css }
|
10
|
+
end
|
11
|
+
|
12
|
+
get "/modular" do
|
13
|
+
columns = params[:columns].to_i || 2
|
14
|
+
grid = Bamboo::Grid.modular columns
|
15
|
+
css = Bamboo::Grid.scaffold_css
|
16
|
+
erb :modular, layout: :application, locals: { grid: grid, css: css }
|
17
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<meta charset="utf-8">
|
3
|
+
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
|
4
|
+
<meta name=viewport content="width=device-width, initial-scale=1.0">
|
5
|
+
<title>Bamboo</title>
|
6
|
+
<link rel="stylesheet" href="reset.css">
|
7
|
+
<link rel="stylesheet" href="style.css">
|
8
|
+
<style>
|
9
|
+
<%= css %>
|
10
|
+
<%= grid[:css] %>
|
11
|
+
</style>
|
12
|
+
|
13
|
+
<%= yield %>
|
@@ -0,0 +1,47 @@
|
|
1
|
+
<div class="container">
|
2
|
+
<div class="row">
|
3
|
+
<% 12.times do %>
|
4
|
+
<div class="col-1">.col-1</div>
|
5
|
+
<% end %>
|
6
|
+
</div>
|
7
|
+
|
8
|
+
<div class="row">
|
9
|
+
<% 6.times do %>
|
10
|
+
<div class="col-2">.col-2</div>
|
11
|
+
<% end %>
|
12
|
+
</div>
|
13
|
+
|
14
|
+
<div class="row">
|
15
|
+
<% 4.times do %>
|
16
|
+
<div class="col-3">.col-3</div>
|
17
|
+
<% end %>
|
18
|
+
</div>
|
19
|
+
|
20
|
+
<div class="row">
|
21
|
+
<% 3.times do %>
|
22
|
+
<div class="col-4">.col-4</div>
|
23
|
+
<% end %>
|
24
|
+
</div>
|
25
|
+
|
26
|
+
<div class="row">
|
27
|
+
<div class="col-5">.col-5</div>
|
28
|
+
<div class="col-2">.col-2</div>
|
29
|
+
<div class="col-5">.col-5</div>
|
30
|
+
</div>
|
31
|
+
|
32
|
+
<div class="row">
|
33
|
+
<div class="col-6">.col-6</div>
|
34
|
+
<div class="col-6">.col-6</div>
|
35
|
+
</div>
|
36
|
+
|
37
|
+
<div class="row">
|
38
|
+
<div class="col-7">.col-7</div>
|
39
|
+
<div class="col-5">.col-5</div>
|
40
|
+
</div>
|
41
|
+
|
42
|
+
<div class="row">
|
43
|
+
<div class="col-2">.col-2</div>
|
44
|
+
<div class="col-8">.col-8</div>
|
45
|
+
<div class="col-2">.col-2</div>
|
46
|
+
</div>
|
47
|
+
</div>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bamboo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ashish Kumar
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-02-
|
11
|
+
date: 2016-02-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -73,6 +73,15 @@ files:
|
|
73
73
|
- lib/bamboo/constants.rb
|
74
74
|
- lib/bamboo/grid.rb
|
75
75
|
- lib/bamboo/version.rb
|
76
|
+
- server/Gemfile
|
77
|
+
- server/Gemfile.lock
|
78
|
+
- server/assets/reset.css
|
79
|
+
- server/assets/scripts.js
|
80
|
+
- server/assets/style.css
|
81
|
+
- server/server.rb
|
82
|
+
- server/views/application.erb
|
83
|
+
- server/views/modular.erb
|
84
|
+
- server/views/uniform.erb
|
76
85
|
homepage: https://github.com/ashishkumar/bamboo
|
77
86
|
licenses:
|
78
87
|
- MIT
|