psique 0.1.0

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.
Files changed (89) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +14 -0
  3. data/Gemfile +5 -0
  4. data/LICENSE +22 -0
  5. data/README.md +2 -0
  6. data/Rakefile +34 -0
  7. data/assets/fonts/psique/roboto-bold.eot +0 -0
  8. data/assets/fonts/psique/roboto-bold.svg +593 -0
  9. data/assets/fonts/psique/roboto-bold.ttf +0 -0
  10. data/assets/fonts/psique/roboto-bold.woff +0 -0
  11. data/assets/fonts/psique/roboto-regular.eot +0 -0
  12. data/assets/fonts/psique/roboto-regular.svg +621 -0
  13. data/assets/fonts/psique/roboto-regular.ttf +0 -0
  14. data/assets/fonts/psique/roboto-regular.woff +0 -0
  15. data/assets/fonts/psique/sourcesanspro-bold.eot +0 -0
  16. data/assets/fonts/psique/sourcesanspro-bold.svg +954 -0
  17. data/assets/fonts/psique/sourcesanspro-bold.ttf +0 -0
  18. data/assets/fonts/psique/sourcesanspro-bold.woff +0 -0
  19. data/assets/fonts/psique/sourcesanspro-regular.eot +0 -0
  20. data/assets/fonts/psique/sourcesanspro-regular.svg +977 -0
  21. data/assets/fonts/psique/sourcesanspro-regular.ttf +0 -0
  22. data/assets/fonts/psique/sourcesanspro-regular.woff +0 -0
  23. data/assets/images/psique/.keep +0 -0
  24. data/assets/javascripts/psique.js.coffee +2 -0
  25. data/assets/javascripts/psique/panels.js.coffee +7 -0
  26. data/assets/stylesheets/psique.scss +19 -0
  27. data/assets/stylesheets/psique/_buttons.scss +222 -0
  28. data/assets/stylesheets/psique/_forms.scss +92 -0
  29. data/assets/stylesheets/psique/_grid.scss +20 -0
  30. data/assets/stylesheets/psique/_lists.scss +160 -0
  31. data/assets/stylesheets/psique/_mixins.scss +69 -0
  32. data/assets/stylesheets/psique/_panels.scss +148 -0
  33. data/assets/stylesheets/psique/_settings.scss +127 -0
  34. data/assets/stylesheets/psique/_summaries.scss +188 -0
  35. data/assets/stylesheets/psique/_typography.scss +70 -0
  36. data/doc/assets/_footer.html +7 -0
  37. data/doc/assets/_header.html +66 -0
  38. data/doc/assets/brick.png +0 -0
  39. data/doc/assets/css/doc.css +132 -0
  40. data/doc/assets/css/github.css +61 -0
  41. data/doc/assets/css/screen.css +16 -0
  42. data/doc/assets/script/components.js +89 -0
  43. data/doc/public/styleguide/brick.png +0 -0
  44. data/doc/public/styleguide/components.html +593 -0
  45. data/doc/public/styleguide/core.html +105 -0
  46. data/doc/public/styleguide/css/doc.css +132 -0
  47. data/doc/public/styleguide/css/github.css +61 -0
  48. data/doc/public/styleguide/css/screen.css +16 -0
  49. data/doc/public/styleguide/index.html +105 -0
  50. data/doc/public/styleguide/script/components.js +89 -0
  51. data/hologram_config.yml +28 -0
  52. data/lib/psique.rb +8 -0
  53. data/lib/psique/engine.rb +17 -0
  54. data/lib/psique/version.rb +3 -0
  55. data/psique.gemspec +33 -0
  56. data/test/dummy/README.rdoc +3 -0
  57. data/test/dummy/Rakefile +6 -0
  58. data/test/dummy/app/assets/images/.keep +0 -0
  59. data/test/dummy/app/assets/javascripts/application.js +2 -0
  60. data/test/dummy/app/assets/stylesheets/application.css.scss +1 -0
  61. data/test/dummy/app/controllers/application_controller.rb +5 -0
  62. data/test/dummy/app/controllers/styleguide_controller.rb +4 -0
  63. data/test/dummy/app/views/layouts/application.html.haml +15 -0
  64. data/test/dummy/app/views/styleguide/index.html.haml +17 -0
  65. data/test/dummy/bin/bundle +3 -0
  66. data/test/dummy/bin/rails +4 -0
  67. data/test/dummy/bin/rake +4 -0
  68. data/test/dummy/config.ru +4 -0
  69. data/test/dummy/config/application.rb +10 -0
  70. data/test/dummy/config/boot.rb +5 -0
  71. data/test/dummy/config/database.yml +25 -0
  72. data/test/dummy/config/environment.rb +5 -0
  73. data/test/dummy/config/environments/development.rb +37 -0
  74. data/test/dummy/config/environments/production.rb +78 -0
  75. data/test/dummy/config/environments/test.rb +39 -0
  76. data/test/dummy/config/initializers/assets.rb +8 -0
  77. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  78. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  79. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  80. data/test/dummy/config/initializers/inflections.rb +16 -0
  81. data/test/dummy/config/initializers/mime_types.rb +4 -0
  82. data/test/dummy/config/initializers/session_store.rb +3 -0
  83. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  84. data/test/dummy/config/locales/en.yml +23 -0
  85. data/test/dummy/config/routes.rb +3 -0
  86. data/test/dummy/config/secrets.yml +22 -0
  87. data/test/psique_test.rb +7 -0
  88. data/test/test_helper.rb +15 -0
  89. metadata +1185 -0
@@ -0,0 +1,69 @@
1
+ // Generate the grid for a particular size
2
+ @mixin make-cols($size) {
3
+
4
+ @for $i from 1 through susy-get(columns) {
5
+ .col-#{$size}-#{$i} {
6
+ @include span($i);
7
+ @include trailer(susy-get(gutters));
8
+
9
+ > .row {
10
+ margin: 0 (- gutter()) (- gutter());
11
+ }
12
+ }
13
+ }
14
+ }
15
+
16
+ // Generate bottom arrow to header panels
17
+ @mixin arrow($size, $color, $offset) {
18
+ position: relative;
19
+
20
+ &:after {
21
+ @include output-rhythm(border-width, $size);
22
+ @include output-rhythm(bottom, -1.8 * $size);
23
+ @include translateX(-$offset);
24
+ border: {
25
+ color: transparent;
26
+ style: solid;
27
+ top-color: $color;
28
+ }
29
+ content: '';
30
+ height: 0;
31
+ left: $offset;
32
+ pointer-events: none;
33
+ position: absolute;
34
+ visibility: visible;
35
+ width: 0;
36
+ }
37
+ }
38
+
39
+ // Generate panel
40
+ @mixin panel($header-bg-color, $header-text-color, $content-bg-color: transparent, $content-border-color: transparent, $padding: .4rem) {
41
+ @include trailer(1);
42
+
43
+ .panel-header {
44
+ @include output-rhythm(padding, $padding);
45
+ background-color: $header-bg-color;
46
+ color: $header-text-color;
47
+ font-size: 1.2em;
48
+ font-weight: bold;
49
+
50
+ &.arrow {
51
+ @include arrow(rhythm(.4), $header-bg-color, 20%);
52
+ }
53
+
54
+ &.border-bottom {
55
+ @include output-rhythm(border-bottom, rhythm(.4));
56
+ border-bottom: {
57
+ color: adjust-color($header-bg-color, $hue: -2, $saturation: 48%, $lightness: -38%);
58
+ style: solid;
59
+ }
60
+ }
61
+ }
62
+
63
+ .panel-content {
64
+ @include output-rhythm(padding, $padding);
65
+ background-color: $content-bg-color;
66
+ border: 1px solid $content-border-color;
67
+ border-top: 0;
68
+ }
69
+ }
@@ -0,0 +1,148 @@
1
+ /*doc
2
+ ---
3
+ title: Panels
4
+ name: panel
5
+ category: Components
6
+ ---
7
+
8
+ Example usage of basic panels.
9
+
10
+ ```haml_example
11
+ %aside.panel
12
+ %header.panel-header
13
+ Panel title
14
+ %section.panel-content
15
+ Panel content
16
+ ```
17
+
18
+ Panel with header decorations. You can use the classes `arrow` and `border-bottom`.
19
+
20
+ ```haml_example
21
+ %aside.panel
22
+ %header.panel-header.arrow
23
+ Panel title
24
+ %section.panel-content
25
+ Panel content
26
+
27
+ %aside.panel
28
+ %header.panel-header.border-bottom
29
+ Panel title
30
+ %section.panel-content
31
+ Panel content
32
+ ```
33
+
34
+ Panel colors.
35
+
36
+ ```haml_example
37
+ %aside.panel.red
38
+ %header.panel-header
39
+ Panel title
40
+ %section.panel-content
41
+ Panel content
42
+
43
+ %aside.panel.green
44
+ %header.panel-header
45
+ Panel title
46
+ %section.panel-content
47
+ Panel content
48
+
49
+ %aside.panel.pink
50
+ %header.panel-header
51
+ Panel title
52
+ %section.panel-content
53
+ Panel content
54
+
55
+ %aside.panel.orange
56
+ %header.panel-header
57
+ Panel title
58
+ %section.panel-content
59
+ Panel content
60
+ ```
61
+
62
+ Panel with tabs.
63
+
64
+ ```haml_example
65
+ %aside.panel
66
+ %ul.tablist{role: 'tablist'}
67
+ %li.tab.active{'aria-controls' => 'panel1', :role => 'tab', :tabindex => '0'} First tab
68
+ %li.tab{'aria-controls' => 'panel2', :role => 'tab', :tabindex => '0'} Second tab
69
+ %li.tab{'aria-controls' => 'panel3', :role => 'tab', :tabindex => '0'} Third tab
70
+ %section.panel-content
71
+ #panel1.tabpanel.active{role: 'tabpanel'}
72
+ First panel
73
+ #panel2.tabpanel{role: 'tabpanel'}
74
+ Second panel
75
+ #panel3.tabpanel{role: 'tabpanel'}
76
+ Third panel
77
+ ```
78
+ */
79
+
80
+ .panel {
81
+ @include panel(map-get($panel-colors, 'light-blue'), $black, $content-border-color: #ccc);
82
+
83
+ @each $panel-type, $panel-color in map-remove($panel-colors, 'light-blue') {
84
+ &.#{$panel-type} { @include panel($panel-color, $white, #f4f4f6); }
85
+ }
86
+ }
87
+
88
+ .tablist {
89
+ border-bottom: {
90
+ color: $primary-color;
91
+ style: solid;
92
+ width: 4px; }
93
+ display: table;
94
+ margin: 0;
95
+ padding: 0;
96
+ position: relative;
97
+ width: 100%;
98
+
99
+ &.narrow {
100
+ @include display-flex;
101
+
102
+ > .tab {
103
+ display: inline-block;
104
+ padding-left: 2em;
105
+ padding-right: 2em;
106
+ }
107
+ }
108
+ }
109
+
110
+ .tab {
111
+ @include reset-focus;
112
+ background-color: $azul-ceruleo;
113
+ border-left: 1px solid $white;
114
+ cursor: pointer;
115
+ display: table-cell;
116
+ font-weight: bold;
117
+ margin: 0;
118
+ padding: .4rem 0;
119
+ text-align: center;
120
+
121
+ &:first-child { border-left: 0; }
122
+ &.active {
123
+ @include arrow(rhythm(.4), $well-read, 50%);
124
+ background-color: $well-read;
125
+ color: $white;
126
+ cursor: auto;
127
+ }
128
+
129
+ a { @include unstyled-link; }
130
+ }
131
+
132
+ .tabpanel {
133
+ display: none;
134
+ &.active { display: block; }
135
+ }
136
+
137
+ .tab-menu {
138
+ bottom: 5px;
139
+ display: inline-block;
140
+ position: absolute;
141
+ right: 0;
142
+
143
+ > * {
144
+ @include delimited-list(' |');
145
+ margin: 0;
146
+ padding: 0;
147
+ }
148
+ }
@@ -0,0 +1,127 @@
1
+ // Media queries screens and layouts
2
+ // -------------------------------------------------
3
+
4
+ $screen-desktop: 1000px !default;
5
+ $screen-mobile: 768px !default;
6
+ $layout-desktop: $screen-desktop static !default;
7
+
8
+
9
+ // Susy grid global defaults
10
+ // -------------------------------------------------
11
+
12
+ $susy: (
13
+ flow: ltr,
14
+ math: fluid,
15
+ output: isolation,
16
+ gutter-position: split,
17
+ container: auto,
18
+ container-position: center,
19
+ columns: 12,
20
+ gutters: .25,
21
+ column-width: false,
22
+ global-box-sizing: content-box,
23
+ last-flow: to,
24
+ debug: (
25
+ image: hide,
26
+ color: rgba(#66f, .25),
27
+ output: background,
28
+ toggle: top right,
29
+ ),
30
+ use-custom: (
31
+ background-image: true,
32
+ background-options: false,
33
+ box-sizing: true,
34
+ clearfix: false,
35
+ rem: true,
36
+ )
37
+ );
38
+
39
+
40
+ // Compass Vertical Rhythm Settings
41
+ // -------------------------------------------------
42
+
43
+ $round-to-nearest-half-line: true;
44
+ $rhythm-unit: 'rem';
45
+
46
+
47
+ // Colors
48
+ // -------------------------------------------------
49
+
50
+ $astronaut: #034665 !default;
51
+ $black: #000 !default;
52
+ $casper: #afc6d4 !default;
53
+ $hollywood-cerise: #c000a6 !default;
54
+ $trinidad: #e85900 !default;
55
+ $verdun-green: #426e00 !default;
56
+ $well-read: #ab3132 !default;
57
+ $white: #fff !default;
58
+
59
+ $aux-grey: #d5d5d5;
60
+ $azul-capota: #21689d;
61
+ $azul-ceruleo: #a2baca;
62
+
63
+ $highlight-color: #00bd00;
64
+ $primary-color: $azul-capota;
65
+
66
+
67
+ // Typography
68
+ // -------------------------------------------------
69
+
70
+ $font-size-h1: 36px;
71
+ $font-size-h2: 30px;
72
+ $font-size-h3: 18px;
73
+ $font-size-h4: 14px;
74
+ $font-size-h5: 12px;
75
+ $font-size-h6: 10px;
76
+
77
+ $texts-font-family: 'Source Sans Pro' !default;
78
+ $headings-font-family: 'Roboto' !default;
79
+ $headings-font-weight: bold;
80
+
81
+
82
+ // Panels
83
+ // -------------------------------------------------
84
+
85
+ $panel-colors: (
86
+ 'red': $well-read,
87
+ 'green': #00bd00,
88
+ 'pink': $hollywood-cerise,
89
+ 'orange': $trinidad,
90
+ 'light-blue': $casper
91
+ );
92
+
93
+
94
+ // Forms
95
+ // -------------------------------------------------
96
+
97
+ $input-border-radius: 4px;
98
+
99
+
100
+ /*Rankia Colores*/
101
+ /*Principales*/
102
+ $capota:#21689D;
103
+ $capota-light:lighten(#21689D,20);
104
+ $capota-dark:darken(#21689D,10);
105
+
106
+ $navyblue:#019875;
107
+ $navyblue-light:lighten(#019875,15);
108
+ $navyblue-dark:darken(#019875,10);
109
+
110
+ $ceruleo:#A2BACA;
111
+ $ceruleo-light:lighten(#A2BACA,15);
112
+ $ceruleo-dark:darken(#A2BACA,10);
113
+
114
+ /*Greyscale*/
115
+ $lightgrey:#F4F4F4;
116
+ $midgrey:#888888;
117
+ $darkgrey:#1E1E1E;
118
+ $auxgrey:#D5D5D5;
119
+
120
+ /*Section colors*/
121
+ $darkorange:#FA640F;
122
+ $darkorange-light:lighten(#FA640F,15);
123
+ $darkorange-dark:darken(#FA640F,8);
124
+
125
+ $darkmagenta:#AA2098;
126
+ $seagreen:#188960;
127
+ $granate:#951E25;
@@ -0,0 +1,188 @@
1
+ /*doc
2
+ ---
3
+ title: Summaries
4
+ name: summary
5
+ category: Components
6
+ ---
7
+
8
+ A summary is a representative of a complete news extract, to place it in some
9
+ prominent and visible place in the website. The different formats summary,
10
+ allow give more importance to some elements or others, according to their
11
+ position on the page.
12
+
13
+ ```haml_example
14
+ %article.summary.featured
15
+ .summary-left
16
+ %img{:src => "http://www.fillmurray.com/400/305/"}
17
+ .summary-right
18
+ %header.summary-header
19
+ %h2.summary-title
20
+ %a{href: '#'} Lorem ipsum dolor sit amet consectetur adipisicing
21
+ .summary-meta
22
+ .author john doe
23
+ .comments
24
+ %i.fa.fa-comment 7
25
+ %section.summary-content
26
+ %p
27
+ %a.topic{href: '#'} officia consectetur.
28
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco.
29
+ ```
30
+ ```haml_example
31
+ %article.summary.medium
32
+ .summary-left
33
+ %img{:src => "http://www.fillmurray.com/g/400/300/"}
34
+ .summary-right
35
+ %header.summary-header
36
+ %h3.summary-title
37
+ %a{href: '#'} Lorem ipsum dolor sit amet consectetur adipisicing
38
+ %span.author john doe
39
+
40
+ %section.summary-content
41
+ %p
42
+ %a.topic{href: '#'} officia consectetur.
43
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco.
44
+ ```
45
+ ```haml_example
46
+ %article.summary.new
47
+ %header.summary-header
48
+ %h3.summary-title
49
+ %a{href: '#'} Lorem ipsum dolor sit amet consectetur adipisicing
50
+ %section.summary-content
51
+ .thumbnail
52
+ %img{:src => "http://www.fillmurray.com/g/375/250/"}
53
+ .summary-meta
54
+ .author john doe
55
+ .comments
56
+ %i.fa.fa-comment 7
57
+ %p
58
+ %a.topic{href: '#'} officia consectetur.
59
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco.
60
+ ```
61
+ ```haml_example
62
+ %article.summary.default
63
+ %header.summary-header
64
+ %h2.summary-title
65
+ %a{href: '#'} Lorem ipsum dolor sit amet consectetur adipisicing
66
+ .summary-meta
67
+ .author john doe
68
+ .comments
69
+ %i.fa.fa-comment 7
70
+ %section.summary-content
71
+ .thumbnail
72
+ %img{:src => "http://www.fillmurray.com/g/800/250/"}
73
+ %p
74
+ %a.topic{href: '#'} officia consectetur.
75
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco.
76
+ ```
77
+ ```haml_example
78
+ %article.summary.small
79
+ .summary-left
80
+ %img{:src => "http://www.fillmurray.com/g/400/150/"}
81
+ .summary-right
82
+ %header.summary-header
83
+ %h4.category reprehenderit
84
+ %h4.summary-title
85
+ %a{href: '#'} Lorem ipsum dolor sit amet consectetur adipisicing
86
+ %section.summary-content
87
+ %p
88
+ %a.topic{href: '#'} officia consectetur.
89
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco.
90
+ ```
91
+ */
92
+
93
+
94
+ %summary {
95
+ @extend .row;
96
+ padding: .2em;
97
+
98
+ .summary-title {
99
+ color: $primary-color;
100
+ font-weight: bold;
101
+ margin-bottom: 0;
102
+
103
+ a { color: $primary-color; }
104
+ }
105
+
106
+ .author {
107
+ color: #666;
108
+ display: inline-block;
109
+ font-size: 11px !important;
110
+ font-weight: normal;
111
+ text-transform: uppercase;
112
+ white-space: nowrap;
113
+ }
114
+
115
+ .comments {
116
+ color: $primary-color;
117
+ display: inline-block;
118
+ margin-left: 1em;
119
+ font-size: 14px;
120
+ }
121
+
122
+ .summary-content {
123
+ p {
124
+ color: #323131;
125
+ font-size: 13px;
126
+ line-height: 1.2em;
127
+ margin: 0;
128
+ }
129
+ }
130
+
131
+ .category {
132
+ color: $primary-color;
133
+ font-size: 12px;
134
+ font-weight: bold;
135
+ margin-bottom: 0;
136
+ text-transform: uppercase;
137
+ }
138
+
139
+ .topic {
140
+ color: $primary-color;
141
+ font-size: 12px;
142
+ text-transform: uppercase;
143
+ }
144
+
145
+ .thumbnail {
146
+ margin-bottom: .5em;
147
+ }
148
+
149
+ img {
150
+ max-width: 100%;
151
+ width: 100%;
152
+ }
153
+ }
154
+
155
+ .summary {
156
+ @extend %summary;
157
+
158
+ &.small {
159
+ .summary-left { @extend .col-sm-3; }
160
+ .summary-right { @extend .col-sm-9; }
161
+ }
162
+
163
+ &.medium {
164
+ .summary-left { @extend .col-sm-5; }
165
+ .summary-right { @extend .col-sm-7; }
166
+ }
167
+
168
+ &.new {
169
+ .summary-header { @extend .col-sm-12; }
170
+ .summary-content {
171
+ .thumbnail { @extend .col-sm-5; }
172
+ p { @extend .col-sm-7;}
173
+ }
174
+ .summary-meta { @extend .col-sm-7; }
175
+ }
176
+
177
+ &.default {
178
+ .summary-header { @extend .col-sm-12; }
179
+ .summary-content { @extend .col-sm-12; }
180
+ }
181
+
182
+ &.featured {
183
+ .summary-left { @extend .col-sm-5; }
184
+ .summary-right { @extend .col-sm-7; }
185
+ .summary-meta { margin: .25em 0; }
186
+ background-color: #F4F3F5;
187
+ }
188
+ }