framous 0.3 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.mkdn CHANGED
@@ -1,6 +1,10 @@
1
1
  Framous Changelog
2
2
  =================
3
3
 
4
+ v0.3.1 [Jul 23, 2013]
5
+ ---------------------
6
+ * fixe typo
7
+
4
8
  v0.3 [Jul 23, 2013]
5
9
  ---------------------
6
10
  * major updates : grid system, typography & javascript plugins
data/README.md CHANGED
@@ -2,3 +2,23 @@ framous
2
2
  =======
3
3
 
4
4
  Framous is light & powerful front-end toolkit to prototype digital product.
5
+
6
+ Installation
7
+ ============
8
+
9
+ From the Terminal:
10
+
11
+ (sudo) gem install framous
12
+
13
+ Adding Framous to existing Compass projects
14
+
15
+ // Add framous to your config.rb file
16
+ require 'framous'
17
+
18
+ // Then run
19
+ compass install framous
20
+
21
+ Or create a new project:
22
+
23
+ compass create <your-project-name> -r framous --using framous
24
+
@@ -0,0 +1,21 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Global Framous File
3
+
4
+ @charset "UTF-8";
5
+
6
+ // compass/
7
+ @import "compass";
8
+
9
+ // utility/
10
+ @import "framous/utility/framous-settings";
11
+ @import "framous/utility/functions";
12
+ @import "framous/utility/mixins";
13
+
14
+ // layout/
15
+ @import "framous/layout/grid";
16
+
17
+ // base/
18
+ @import "framous/base/reset";
19
+ @import "framous/base/print";
20
+ @import "framous/base/base";
21
+ @import "framous/base/typography";
@@ -0,0 +1,12 @@
1
+ /* ---------------------------------------------------------------------------
2
+ Base
3
+ */
4
+
5
+ body {
6
+ @include pie-clearfix;
7
+ width: 100%;
8
+ }
9
+
10
+ .out-container {
11
+ @include out-container;
12
+ }
@@ -0,0 +1,70 @@
1
+ /* ---------------------------------------------------------------------------
2
+ Global Compass File
3
+ Inlined to avoid required HTTP connection: h5bp.com/r
4
+ https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css
5
+ */
6
+
7
+ @media print {
8
+ * {
9
+ background: transparent !important;
10
+ color: #000 !important; // Black prints faster: h5bp.com/s
11
+ box-shadow: none !important;
12
+ text-shadow: none !important;
13
+ }
14
+
15
+ a,
16
+ a:visited {
17
+ text-decoration: underline;
18
+ }
19
+
20
+ a[href]:after {
21
+ content: " (" attr(href) ")";
22
+ }
23
+
24
+ abbr[title]:after {
25
+ content: " (" attr(title) ")";
26
+ }
27
+
28
+ // Don't show links for images, or javascript/internal links
29
+
30
+ .ir a:after,
31
+ a[href^="javascript:"]:after,
32
+ a[href^="#"]:after {
33
+ content: "";
34
+ }
35
+
36
+ pre,
37
+ blockquote {
38
+ border: 1px solid #999;
39
+ page-break-inside: avoid;
40
+ }
41
+
42
+ thead {
43
+ display: table-header-group; // h5bp.com/t
44
+ }
45
+
46
+ tr,
47
+ img {
48
+ page-break-inside: avoid;
49
+ }
50
+
51
+ img {
52
+ max-width: 100% !important;
53
+ }
54
+
55
+ @page {
56
+ margin: 0.5cm;
57
+ }
58
+
59
+ p,
60
+ h2,
61
+ h3 {
62
+ orphans: 3;
63
+ widows: 3;
64
+ }
65
+
66
+ h2,
67
+ h3 {
68
+ page-break-after: avoid;
69
+ }
70
+ }
@@ -0,0 +1,329 @@
1
+ /* ---------------------------------------------------------------------------
2
+ normalize.css v2.1.1 | MIT License | git.io/normalize
3
+ */
4
+
5
+ // ---------------------------------------------------------------------------
6
+ // HTML5 display definitions
7
+
8
+
9
+ // Correct `block` display not defined in IE 8/9.
10
+
11
+ article,
12
+ aside,
13
+ details,
14
+ figcaption,
15
+ figure,
16
+ footer,
17
+ header,
18
+ hgroup,
19
+ main,
20
+ nav,
21
+ section,
22
+ summary {
23
+ display: block;
24
+ }
25
+
26
+
27
+ // Correct `inline-block` display not defined in IE 8/9.
28
+
29
+ audio,
30
+ canvas,
31
+ video {
32
+ display: inline-block;
33
+ }
34
+
35
+ // Prevent modern browsers from displaying `audio` without controls.
36
+ // Remove excess height in iOS 5 devices.
37
+
38
+ audio:not([controls]) {
39
+ display: none;
40
+ height: 0;
41
+ }
42
+
43
+ // Address styling not present in IE 8/9.
44
+
45
+ [hidden] {
46
+ display: none;
47
+ }
48
+
49
+ // ---------------------------------------------------------------------------
50
+ // Base
51
+
52
+ // 1. Prevent system color scheme's background color being used in Firefox, IE,
53
+ // and Opera.
54
+ // 2. Prevent system color scheme's text color being used in Firefox, IE, and
55
+ // Opera.
56
+ // 3. Set default font family to sans-serif.
57
+ // 4. Prevent iOS text size adjust after orientation change, without disabling
58
+ // user zoom.
59
+
60
+ html {
61
+ background: #fff; // 1
62
+ color: #000; // 2
63
+ font-family: sans-serif; // 3
64
+ -ms-text-size-adjust: 100%; // 4
65
+ -webkit-text-size-adjust: 100%; // 4
66
+ }
67
+
68
+ // Remove default margin.
69
+
70
+ body {
71
+ margin: 0;
72
+ }
73
+
74
+ // ---------------------------------------------------------------------------
75
+ // Links
76
+
77
+ // Address `outline` inconsistency between Chrome and other browsers.
78
+
79
+ a:focus {
80
+ outline: thin dotted;
81
+ }
82
+
83
+
84
+ // Improve readability when focused and also mouse hovered in all browsers.
85
+
86
+ a:active,
87
+ a:hover {
88
+ outline: 0;
89
+ }
90
+
91
+ // ---------------------------------------------------------------------------
92
+ // Typography
93
+
94
+ // Address variable `h1` font-size and margin within `section` and `article`
95
+ // contexts in Firefox 4+, Safari 5, and Chrome.
96
+
97
+ h1 {
98
+ font-size: 2em;
99
+ margin: 0.67em 0;
100
+ }
101
+
102
+ // Address styling not present in IE 8/9, Safari 5, and Chrome.
103
+
104
+ abbr[title] {
105
+ border-bottom: 1px dotted;
106
+ }
107
+
108
+ // Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
109
+
110
+ b,
111
+ strong {
112
+ font-weight: bold;
113
+ }
114
+
115
+ // Address styling not present in Safari 5 and Chrome.
116
+
117
+ dfn {
118
+ font-style: italic;
119
+ }
120
+
121
+ // Address differences between Firefox and other browsers.
122
+
123
+ hr {
124
+ -moz-box-sizing: content-box;
125
+ box-sizing: content-box;
126
+ height: 0;
127
+ }
128
+
129
+ // Address styling not present in IE 8/9.
130
+
131
+ mark {
132
+ background: #ff0;
133
+ color: #000;
134
+ }
135
+
136
+ // Correct font family set oddly in Safari 5 and Chrome.
137
+
138
+ code,
139
+ kbd,
140
+ pre,
141
+ samp {
142
+ font-family: monospace, serif;
143
+ font-size: 1em;
144
+ }
145
+
146
+ // Improve readability of pre-formatted text in all browsers.
147
+
148
+ pre {
149
+ white-space: pre-wrap;
150
+ }
151
+
152
+ // Set consistent quote types.
153
+
154
+ q {
155
+ quotes: "\201C" "\201D" "\2018" "\2019";
156
+ }
157
+
158
+ // Address inconsistent and variable font size in all browsers.
159
+
160
+ small {
161
+ font-size: 80%;
162
+ }
163
+
164
+ // Prevent `sub` and `sup` affecting `line-height` in all browsers.
165
+
166
+ sub,
167
+ sup {
168
+ font-size: 75%;
169
+ line-height: 0;
170
+ position: relative;
171
+ vertical-align: baseline;
172
+ }
173
+
174
+ sup {
175
+ top: -0.5em;
176
+ }
177
+
178
+ sub {
179
+ bottom: -0.25em;
180
+ }
181
+
182
+ // ---------------------------------------------------------------------------
183
+ // Embedded content
184
+
185
+ // Remove border when inside `a` element in IE 8/9.
186
+
187
+ img {
188
+ border: 0;
189
+ }
190
+
191
+ // Correct overflow displayed oddly in IE 9.
192
+
193
+ svg:not(:root) {
194
+ overflow: hidden;
195
+ }
196
+
197
+ // ---------------------------------------------------------------------------
198
+ // Figures
199
+
200
+ // Address margin not present in IE 8/9 and Safari 5.
201
+
202
+ figure {
203
+ margin: 0;
204
+ }
205
+
206
+ // ---------------------------------------------------------------------------
207
+ // Forms
208
+
209
+ // Define consistent border, margin, and padding.
210
+
211
+ fieldset {
212
+ border: 1px solid #c0c0c0;
213
+ margin: 0 2px;
214
+ padding: 0.35em 0.625em 0.75em;
215
+ }
216
+
217
+ // 1. Correct `color` not being inherited in IE 8/9.
218
+ // 2. Remove padding so people aren't caught out if they zero out fieldsets.
219
+
220
+ legend {
221
+ border: 0; // 1
222
+ padding: 0; // 2
223
+ }
224
+
225
+ // 1. Correct font family not being inherited in all browsers.
226
+ // 2. Correct font size not being inherited in all browsers.
227
+ // 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
228
+
229
+ button,
230
+ input,
231
+ select,
232
+ textarea {
233
+ font-family: inherit; // 1
234
+ font-size: 100%; // 2
235
+ margin: 0; // 3
236
+ }
237
+
238
+ // Address Firefox 4+ setting `line-height` on `input` using `!important` in
239
+ // the UA stylesheet.
240
+
241
+ button,
242
+ input {
243
+ line-height: normal;
244
+ }
245
+
246
+ // Address inconsistent `text-transform` inheritance for `button` and `select`.
247
+ // All other form control elements do not inherit `text-transform` values.
248
+ // Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
249
+ // Correct `select` style inheritance in Firefox 4+ and Opera.
250
+
251
+ button,
252
+ select {
253
+ text-transform: none;
254
+ }
255
+
256
+ // 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
257
+ // and `video` controls.
258
+ // 2. Correct inability to style clickable `input` types in iOS.
259
+ // 3. Improve usability and consistency of cursor style between image-type
260
+ // `input` and others.
261
+
262
+ button,
263
+ html input[type="button"], // 1
264
+ input[type="reset"],
265
+ input[type="submit"] {
266
+ -webkit-appearance: button; // 2
267
+ cursor: pointer; // 3
268
+ }
269
+
270
+ // Re-set default cursor for disabled elements.
271
+
272
+ button[disabled],
273
+ html input[disabled] {
274
+ cursor: default;
275
+ }
276
+
277
+ // 1. Address box sizing set to `content-box` in IE 8/9.
278
+ // 2. Remove excess padding in IE 8/9.
279
+
280
+ input[type="checkbox"],
281
+ input[type="radio"] {
282
+ box-sizing: border-box; // 1
283
+ padding: 0; // 2
284
+ }
285
+
286
+ // 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
287
+ // 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
288
+ // (include `-moz` to future-proof).
289
+
290
+ input[type="search"] {
291
+ -webkit-appearance: textfield; // 1
292
+ -moz-box-sizing: content-box;
293
+ -webkit-box-sizing: content-box; // 2
294
+ box-sizing: content-box;
295
+ }
296
+
297
+ // Remove inner padding and search cancel button in Safari 5 and Chrome
298
+ // on OS X.
299
+
300
+ input[type="search"]::-webkit-search-cancel-button,
301
+ input[type="search"]::-webkit-search-decoration {
302
+ -webkit-appearance: none;
303
+ }
304
+
305
+ // Remove inner padding and border in Firefox 4+.
306
+
307
+ button::-moz-focus-inner,
308
+ input::-moz-focus-inner {
309
+ border: 0;
310
+ padding: 0;
311
+ }
312
+
313
+ // 1. Remove default vertical scrollbar in IE 8/9.
314
+ // 2. Improve readability and alignment in all browsers.
315
+
316
+ textarea {
317
+ overflow: auto; // 1
318
+ vertical-align: top; // 2
319
+ }
320
+
321
+ // ---------------------------------------------------------------------------
322
+ // Tables
323
+
324
+ // Remove most spacing between table cells.
325
+
326
+ table {
327
+ border-collapse: collapse;
328
+ border-spacing: 0;
329
+ }
@@ -0,0 +1,217 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Typography
3
+ // http://drewish.com/tools/vertical-rhythm
4
+
5
+ body,div,dl,dt,dd,ul,ol,li,
6
+ h1,h2,h3,h4,h5,h6,
7
+ pre,form,p,blockquote,th,td {
8
+ margin: 0;
9
+ padding: 0;
10
+ direction: $text-direction;
11
+ vertical-align: baseline;
12
+ }
13
+
14
+ body {
15
+ @include establish-baseline;
16
+ position: relative;
17
+ background: $background-body-color;
18
+ color: $body-font-color;
19
+ font-family: $body-font-family;
20
+ font-weight: $font-weight-normal;
21
+ -webkit-text-rendering: optimizeLegibility;
22
+ -moz-text-rendering: optimizeLegibility;
23
+ -ms-text-rendering: optimizeLegibility;
24
+ -o-text-rendering: optimizeLegibility;
25
+ text-rendering: optimizeLegibility;
26
+ -webkit-font-smoothing: antialiased;
27
+ -moz-font-smoothing: antialiased;
28
+ -ms-font-smoothing: antialiased;
29
+ -o-font-smoothing: antialiased;
30
+ font-smoothing: antialiased;
31
+ }
32
+
33
+ // Links : link, visited, hover, active
34
+ a {
35
+ color: $link-color;
36
+ text-decoration: none;
37
+ line-height: inherit;
38
+ word-wrap: break-word;
39
+
40
+ &:visited {
41
+ color: $link-color-hover;
42
+ }
43
+
44
+ &:hover {
45
+ color: $link-color-hover;
46
+ }
47
+
48
+ &:active {
49
+ color: $link-color-hover;
50
+ }
51
+
52
+ &:focus {
53
+ outline: none;
54
+ color: $link-color-hover;
55
+ }
56
+ }
57
+
58
+ p a,
59
+ p a:visited {
60
+ line-height: inherit;
61
+ }
62
+
63
+ p {
64
+ @include adjust-font-size-to($p);
65
+ margin: 0 0 rhythm(1, $p) 0;
66
+ font-weight: $font-weight-normal;
67
+ font-family: $body-font-family;
68
+ }
69
+
70
+ h1, h2, h3, h4, h5, h6 {
71
+ color: $header-font-color;
72
+ font-weight: $font-weight-bold;
73
+ font-family: $header-font-family;
74
+ text-rendering: optimizeLegibility;
75
+
76
+ small {
77
+ color: lighten($header-font-color, 30);
78
+ font-size: 75%;
79
+ line-height: 0;
80
+ }
81
+ }
82
+
83
+ h1 {
84
+ @include adjust-font-size-to($h1);
85
+ margin: rhythm(1, $h1) 0;
86
+ }
87
+
88
+ h2 {
89
+ @include adjust-font-size-to($h2);
90
+ margin: rhythm(1, $h2) 0;
91
+ }
92
+
93
+ h3 {
94
+ @include adjust-font-size-to($h3);
95
+ margin: rhythm(1, $h3) 0;
96
+ }
97
+
98
+ h4 {
99
+ @include adjust-font-size-to($h4);
100
+ margin: rhythm(1, $h4) 0;
101
+ }
102
+
103
+ h5 {
104
+ @include adjust-font-size-to($h5);
105
+ margin: rhythm(1, $h5) 0;
106
+ }
107
+
108
+ h6 {
109
+ @include adjust-font-size-to($p);
110
+ margin: rhythm(1, $p) 0;
111
+ }
112
+
113
+ hr {
114
+ clear: both;
115
+ margin: 0 0 rhythm(1, $p) 0;
116
+ height: 0;
117
+ border: solid $border-color;
118
+ border-width: 1px 0 0;
119
+ }
120
+
121
+ em, i, q {
122
+ font-style: italic;
123
+ line-height: inherit;
124
+ }
125
+
126
+ strong, b {
127
+ font-weight: $font-weight-bold;
128
+ line-height: inherit;
129
+ }
130
+
131
+ small {
132
+ font-size: 75%;
133
+ line-height: inherit;
134
+ }
135
+
136
+ code {
137
+ background: $highlight-color;
138
+ }
139
+
140
+ // Lists
141
+ ul, ol {
142
+ @include adjust-font-size-to($p);
143
+ margin: 0 0 rhythm(1, $p) 0;
144
+ }
145
+
146
+ ul {
147
+ list-style-position: outside;
148
+ list-style-type: disc;
149
+ li {
150
+ ul, ol {
151
+ margin-#{$default-float}: rhythm(1, $p);
152
+ }
153
+ }
154
+ }
155
+
156
+ ol {
157
+ list-style-position: outside;
158
+ list-style-type: decimal;
159
+ li {
160
+ ul, ol {
161
+ margin-#{$default-float}: rhythm(1, $p);
162
+ }
163
+ }
164
+ }
165
+
166
+ nav ul,
167
+ nav ol {
168
+ @include reset-list-style;
169
+ margin: 0;
170
+ padding: 0;
171
+ }
172
+
173
+ // Text Marking
174
+ ins, mark {
175
+ background-color: $highlight-color;
176
+ color: invert($highlight-color);
177
+ }
178
+
179
+ ins {
180
+ text-decoration: none;
181
+ }
182
+
183
+ del {
184
+ text-decoration: line-through;
185
+ }
186
+
187
+ // Blockquote
188
+ blockquote, blockquote p {
189
+ @include adjust-font-size-to($p);
190
+ font-style: italic;
191
+ }
192
+
193
+ blockquote {
194
+ margin: 0 0 rhythm(1, $p) rhythm(1, $p);
195
+ padding: 0px rhythm(1, $p) 0 rhythm(1, $p);
196
+
197
+ cite {
198
+ display: block;
199
+ font-size: $p;
200
+
201
+ &:before {
202
+ content: "\2014 \0020";
203
+ }
204
+ }
205
+ }
206
+
207
+ abbr, acronym {
208
+ border-bottom: 1px solid $grey-set;
209
+ color: $header-font-color;
210
+ text-transform: uppercase !important;
211
+ font-size: 90%;
212
+ cursor: help;
213
+ }
214
+
215
+ abbr {
216
+ text-transform: none;
217
+ }
@@ -0,0 +1,117 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Responsive / Adaptive grid supports both fixed and fluid layouts.
3
+ // The default grid uses 12 columns.
4
+
5
+ // ---------------------------------------------------------------------------
6
+ // Base
7
+
8
+ // $border-box-sizing: true !default;
9
+ // Makes all elements have a border-box layout
10
+
11
+ @if $border-box-sizing == true {
12
+ * {
13
+ @include box-sizing(border-box);
14
+ }
15
+ }
16
+
17
+ // Utility function — you should never need to modify this
18
+
19
+ @function gridsystem-width(
20
+ $columns : $nb-columns
21
+ ) {
22
+ @return ($column-width * $columns) + ($gutter-width * ($columns - 1));
23
+ }
24
+
25
+ // Set $total-width to 100% for a fluid system layout
26
+
27
+ $total-width: null;
28
+
29
+ @if $grid-system-style == 'fluid' {
30
+ $total-width : 100%;
31
+ } @else {
32
+ $total-width : gridsystem-width($nb-columns);
33
+ }
34
+
35
+ // ---------------------------------------------------------------------------
36
+ // Grid
37
+
38
+ // Out wrapper center container
39
+
40
+ @mixin out-container() {
41
+ @include pie-clearfix;
42
+ margin: {
43
+ left: auto;
44
+ right: auto;
45
+ }
46
+
47
+ @if $grid-system-style == 'fluid' {
48
+ max-width: $max-width;
49
+ } @else {
50
+ width: $total-width * ((gridsystem-width($nb-columns)) / gridsystem-width($nb-columns));
51
+ }
52
+ }
53
+
54
+ @mixin column(
55
+ $x,
56
+ $columns : null
57
+ ) {
58
+
59
+ @if $columns == null or $grid-system-style == 'fixed' {
60
+ $columns : $nb-columns;
61
+ }
62
+
63
+ float: left;
64
+ display: inline;
65
+ margin-right: $total-width * ($gutter-width / gridsystem-width($columns));
66
+ width: $total-width * (((($gutter-width + $column-width) * $x) - $gutter-width) / gridsystem-width($columns));
67
+
68
+ &:last-child {
69
+ margin-right: 0;
70
+ }
71
+ }
72
+
73
+ @mixin fill-column(
74
+ $x,
75
+ $columns : $nb-columns
76
+ ) {
77
+ width: $total-width * (((($gutter-width + $column-width) * $x) - $gutter-width) / gridsystem-width($columns));
78
+ }
79
+
80
+ @mixin push-column(
81
+ $offset : 1
82
+ ) {
83
+ margin-left: $total-width * ((($gutter-width + $column-width) * $offset) / gridsystem-width($nb-columns));
84
+ }
85
+
86
+ @mixin pull-column(
87
+ $offset : 1
88
+ ) {
89
+ margin-right: $total-width * ((($gutter-width + $column-width) * $offset) / gridsystem-width($nb-columns));
90
+ }
91
+
92
+ @mixin fill-parent() {
93
+ width: 100%;
94
+
95
+ @if $border-box-sizing == false {
96
+ @include box-sizing(border-box);
97
+ }
98
+ }
99
+
100
+ // ---------------------------------------------------------------------------
101
+ // Responsive
102
+
103
+ // @credits : http://codepen.io/imathis/pen/BDzcI
104
+ // @include at-least($phone-wide) {}
105
+ // @include until($phone-wide) {}
106
+
107
+ @mixin at-least($device-width) {
108
+ @media screen and (min-width: $device-width) {
109
+ @content;
110
+ }
111
+ }
112
+
113
+ @mixin until($device-width) {
114
+ @media screen and (max-width: $device-width - 1) {
115
+ @content;
116
+ }
117
+ }
@@ -0,0 +1,92 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Grid Settings
3
+
4
+ $grid-system-style: 'fluid';
5
+ $nb-columns: 12;
6
+ $column-width: 60px;
7
+ $gutter-width: 20px;
8
+ $max-width: 1200px;
9
+
10
+ $border-box-sizing: true;
11
+
12
+ // Breakpoints
13
+
14
+ $phone: 320px;
15
+ $phone-wide: 480px;
16
+ $tablet: 768px;
17
+ $large-screen: 980px;
18
+
19
+ // ---------------------------------------------------------------------------
20
+ // Colors Settings
21
+
22
+ // Branding Set
23
+
24
+ $blue-set: #465aff;
25
+ $blue-dark-set: #143255;
26
+ $blue-light-set: #afe1fa;
27
+ $yellow-set: #ffc814;
28
+ $yellow-light-set: #fff0c8;
29
+ $green-set: #78c700;
30
+
31
+ // Colors Set
32
+
33
+ $white-set: #fff;
34
+ $grey-set: #808080;
35
+ $black-set: #000;
36
+
37
+ $background-body-color: transparent;
38
+ $txt-color: $blue-dark-set;
39
+ $body-color: $blue-dark-set;
40
+ $highlight-color: $yellow-light-set;
41
+
42
+ $background-color: lighten($grey-set,45);
43
+ $border-color: lighten($grey-set,30);
44
+
45
+ $link-color: $blue-set;
46
+ $link-color-hover: $blue-dark-set;
47
+
48
+ // ---------------------------------------------------------------------------
49
+ // Type Settings
50
+
51
+ // Text Direction Settings
52
+
53
+ $text-direction: ltr;
54
+ $default-float: left;
55
+ $default-opposite: right;
56
+
57
+ @if $text-direction == ltr {
58
+ $default-float: left;
59
+ $default-opposite: right;
60
+ } @else {
61
+ $default-float: right;
62
+ $default-opposite: left;
63
+ }
64
+
65
+ // Font Settings
66
+
67
+ $adelle-sans: "adelle-sans", sans-serif;
68
+
69
+ $header-font-family: $adelle-sans;
70
+ $font-weight-bold: 700;
71
+ $header-font-color: $txt-color;
72
+ $body-font-family: $adelle-sans;
73
+ $font-weight-normal: 400;
74
+ $font-weight-light: 300;
75
+ $body-font-color: $body-color;
76
+
77
+ // Modular Scale Values
78
+ // http://typecast.com/blog/contrast-through-scale
79
+
80
+ $tera: 72px;
81
+ $giga: 60px;
82
+ $mega: 48px;
83
+ $h1: 36px; // h1
84
+ $h2: 24px; // h2
85
+ $h3: 21px; // h3
86
+ $h4: 18px; // h4
87
+ $h5: 16px; // h5
88
+ $p: 14px; // h6, p
89
+
90
+ // Vertical Rythm
91
+ $base-font-size: $p;
92
+ $base-line-height: 20px;
@@ -0,0 +1,20 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Functions
3
+ // Vertical Rhythm
4
+
5
+ @function rhythm(
6
+ $lines : 1,
7
+ $font-size : 1em
8
+ ) {
9
+ @if $lines == auto {
10
+ $lines : ceil($font-size / $base-line-height);
11
+ }
12
+ @return $base-line-height / $font-size * $lines * 1em;
13
+ }
14
+
15
+ @function px-to-em(
16
+ $px,
17
+ $base : $base-font-size
18
+ ) {
19
+ @return ($px / $base) * 1em;
20
+ }
@@ -0,0 +1,35 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Mixins
3
+ // Vertical Rhythm
4
+
5
+ @mixin establish-baseline() {
6
+ font-size: $base-font-size;
7
+ line-height: $base-line-height;
8
+ }
9
+
10
+ @mixin adjust-font-size-to(
11
+ $font-size,
12
+ $lines : ceil($font-size / $base-line-height)
13
+ ) {
14
+ font-size: px-to-em($font-size);
15
+ line-height: rhythm($lines, $font-size);
16
+ }
17
+
18
+ @mixin debug-vertical-alignment($background-color : white) {
19
+ position: relative;
20
+
21
+ &:before {
22
+ position: absolute;
23
+ top: 0;
24
+ right: 0;
25
+ bottom: 0;
26
+ left: 0;
27
+ display: block;
28
+ content: "";
29
+ background-image: -webkit-linear-gradient(
30
+ rgba($background-color, 0.1) 1px, transparent 1px
31
+ );
32
+ @include background-size(100% ($base-line-height));
33
+ pointer-events: none;
34
+ }
35
+ }
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: framous
3
3
  version: !ruby/object:Gem::Version
4
- hash: 13
4
+ hash: 17
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 3
9
- version: "0.3"
9
+ - 1
10
+ version: 0.3.1
10
11
  platform: ruby
11
12
  authors:
12
13
  - Alec Hance
@@ -15,7 +16,7 @@ autorequire:
15
16
  bindir: bin
16
17
  cert_chain: []
17
18
 
18
- date: 2013-06-11 00:00:00 Z
19
+ date: 2013-07-23 00:00:00 Z
19
20
  dependencies:
20
21
  - !ruby/object:Gem::Dependency
21
22
  name: sass
@@ -49,7 +50,7 @@ dependencies:
49
50
  version: 0.12.2
50
51
  type: :runtime
51
52
  version_requirements: *id002
52
- description: A light rapid prototyping toolkit for designers
53
+ description: Framous is light & powerful front-end toolkit to prototype digital product
53
54
  email: hello@borderlab.com
54
55
  executables: []
55
56
 
@@ -62,6 +63,15 @@ files:
62
63
  - LICENSE.txt
63
64
  - README.md
64
65
  - lib/framous.rb
66
+ - stylesheets/_framous.scss
67
+ - stylesheets/framous/base/_base.scss
68
+ - stylesheets/framous/base/_print.scss
69
+ - stylesheets/framous/base/_reset.scss
70
+ - stylesheets/framous/base/_typography.scss
71
+ - stylesheets/framous/layout/_grid.scss
72
+ - stylesheets/framous/utility/_framous-settings.scss
73
+ - stylesheets/framous/utility/_functions.scss
74
+ - stylesheets/framous/utility/_mixins.scss
65
75
  - templates/project/_settings.scss
66
76
  - templates/project/index.html
67
77
  - templates/project/manifest.rb