themepile-abstractio 1.0.4 → 4.1.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (130) hide show
  1. checksums.yaml +8 -8
  2. data/.gitignore +1 -0
  3. data/CONTRIBUTING.md +7 -7
  4. data/Gemfile.lock +19 -0
  5. data/Gruntfile.js +27 -0
  6. data/README.md +38 -38
  7. data/abstractio.gemspec +20 -18
  8. data/docs/CHANGELOG.md +275 -0
  9. data/docs/Capfile +4 -0
  10. data/docs/Gemfile +13 -0
  11. data/docs/Gemfile.lock +45 -0
  12. data/docs/Procfile +2 -0
  13. data/docs/README.md +1 -0
  14. data/docs/_sidebar-components.html.erb +115 -0
  15. data/docs/_sidebar.html.erb +115 -0
  16. data/docs/changelog.html.erb +33 -0
  17. data/docs/compile.rb +34 -0
  18. data/docs/components/alert-boxes.html.erb +204 -0
  19. data/docs/components/block-grid.html.erb +132 -0
  20. data/docs/components/breadcrumbs.html.erb +156 -0
  21. data/docs/components/button-groups.html.erb +230 -0
  22. data/docs/components/buttons.html.erb +222 -0
  23. data/docs/components/clearing.html.erb +152 -0
  24. data/docs/components/custom-forms.html.erb +309 -0
  25. data/docs/components/dropdown-buttons.html.erb +235 -0
  26. data/docs/components/dropdown.html.erb +188 -0
  27. data/docs/components/flex-video.html.erb +95 -0
  28. data/docs/components/forms.html.erb +477 -0
  29. data/docs/components/global.html.erb +92 -0
  30. data/docs/components/grid.html.erb +366 -0
  31. data/docs/components/inline-lists.html.erb +91 -0
  32. data/docs/components/joyride.html.erb +183 -0
  33. data/docs/components/keystrokes.html.erb +76 -0
  34. data/docs/components/kitchen-sink.html.erb +870 -0
  35. data/docs/components/labels.html.erb +102 -0
  36. data/docs/components/magellan.html.erb +86 -0
  37. data/docs/components/orbit.html.erb +276 -0
  38. data/docs/components/pagination.html.erb +183 -0
  39. data/docs/components/panels.html.erb +123 -0
  40. data/docs/components/pricing-tables.html.erb +156 -0
  41. data/docs/components/progress-bars.html.erb +123 -0
  42. data/docs/components/reveal.html.erb +162 -0
  43. data/docs/components/section.html.erb +1023 -0
  44. data/docs/components/side-nav.html.erb +124 -0
  45. data/docs/components/split-buttons.html.erb +220 -0
  46. data/docs/components/sub-nav.html.erb +122 -0
  47. data/docs/components/switch.html.erb +290 -0
  48. data/docs/components/tables.html.erb +125 -0
  49. data/docs/components/thumbnails.html.erb +89 -0
  50. data/docs/components/tooltips.html.erb +76 -0
  51. data/docs/components/top-bar.html.erb +300 -0
  52. data/docs/components/type.html.erb +396 -0
  53. data/docs/components/visibility.html.erb +110 -0
  54. data/docs/config.ru +12 -0
  55. data/docs/config/deploy.rb +36 -0
  56. data/docs/controller.rb +49 -0
  57. data/docs/css/_coderay.scss +116 -0
  58. data/docs/css/_settings.scss +1 -0
  59. data/docs/css/docs.scss +239 -0
  60. data/docs/css/normalize.scss +396 -0
  61. data/docs/css/qunit-composite.css +13 -0
  62. data/docs/css/qunit.css +235 -0
  63. data/docs/faq.html.erb +63 -0
  64. data/docs/img/demos/demo1-th.jpg +0 -0
  65. data/docs/img/demos/demo1.jpg +0 -0
  66. data/docs/img/demos/demo2-th.jpg +0 -0
  67. data/docs/img/demos/demo2.jpg +0 -0
  68. data/docs/img/demos/demo3-th.jpg +0 -0
  69. data/docs/img/demos/demo3.jpg +0 -0
  70. data/docs/img/demos/demo4-th.jpg +0 -0
  71. data/docs/img/demos/demo4.jpg +0 -0
  72. data/docs/img/demos/demo5-th.jpg +0 -0
  73. data/docs/img/demos/demo5.jpg +0 -0
  74. data/docs/index.html.erb +298 -0
  75. data/docs/javascript.html.erb +138 -0
  76. data/docs/js/docs.js +3 -0
  77. data/docs/js/qunit-composite.js +105 -0
  78. data/docs/js/qunit.js +1977 -0
  79. data/docs/js/tests/tabs/simple_tabs.html +57 -0
  80. data/docs/js/tests/tabs/simple_tabs.js +54 -0
  81. data/docs/js/tests/tooltips/tooltips.html +39 -0
  82. data/docs/js/tests/tooltips/tooltips.js +11 -0
  83. data/docs/layout.html.erb +128 -0
  84. data/docs/media-queries.html.erb +96 -0
  85. data/docs/rails.html.erb +76 -0
  86. data/docs/rtl.html.erb +53 -0
  87. data/docs/sass.html.erb +1297 -0
  88. data/docs/support.html.erb +143 -0
  89. data/js/{foundation/foundation.alerts.js → abstractio/abstractio.alerts.js} +2 -2
  90. data/js/{foundation/foundation.clearing.js → abstractio/abstractio.clearing.js} +6 -6
  91. data/js/{foundation/foundation.cookie.js → abstractio/abstractio.cookie.js} +1 -1
  92. data/js/{foundation/foundation.dropdown.js → abstractio/abstractio.dropdown.js} +5 -5
  93. data/js/{foundation/foundation.forms.js → abstractio/abstractio.forms.js} +7 -7
  94. data/js/{foundation/foundation.joyride.js → abstractio/abstractio.joyride.js} +5 -5
  95. data/js/{foundation/foundation.js → abstractio/abstractio.js} +13 -13
  96. data/js/{foundation/foundation.magellan.js → abstractio/abstractio.magellan.js} +3 -3
  97. data/js/{foundation/foundation.orbit.js → abstractio/abstractio.orbit.js} +6 -6
  98. data/js/{foundation/foundation.placeholder.js → abstractio/abstractio.placeholder.js} +1 -1
  99. data/js/{foundation/foundation.reveal.js → abstractio/abstractio.reveal.js} +3 -3
  100. data/js/{foundation/foundation.section.js → abstractio/abstractio.section.js} +5 -5
  101. data/js/{foundation/foundation.tooltips.js → abstractio/abstractio.tooltips.js} +6 -6
  102. data/js/{foundation/foundation.topbar.js → abstractio/abstractio.topbar.js} +3 -3
  103. data/js/abstractio/index.js +16 -0
  104. data/js/vendor/jquery.js +3 -3
  105. data/lib/abstractio/generators/USAGE +1 -1
  106. data/lib/abstractio/version.rb +1 -1
  107. data/package.json +15 -0
  108. data/scss/abstractio.scss +37 -37
  109. data/scss/abstractio/_variables.scss +1 -1
  110. data/scss/abstractio/components/_alert-boxes.scss +1 -1
  111. data/scss/abstractio/components/_block-grid.scss +2 -2
  112. data/scss/abstractio/components/_dropdown.scss +1 -1
  113. data/scss/abstractio/components/_global.scss +2 -2
  114. data/scss/abstractio/components/_joyride.scss +1 -1
  115. data/scss/abstractio/components/_pagination.scss +1 -1
  116. data/scss/abstractio/components/_switch.scss +1 -1
  117. data/scss/abstractio/components/_visibility.scss +2 -2
  118. data/templates/project/.gitignore +1 -1
  119. data/templates/project/MIT-LICENSE.txt +1 -1
  120. data/templates/project/config.rb +1 -1
  121. data/templates/project/humans.txt +2 -2
  122. data/templates/project/index.html +11 -11
  123. data/templates/project/manifest.rb +1 -1
  124. data/templates/project/scss/app.scss +38 -38
  125. data/templates/upgrade/manifest.rb +2 -2
  126. metadata +104 -22
  127. data/Gemfile +0 -4
  128. data/Rakefile +0 -2
  129. data/js/foundation/index.js +0 -16
  130. data/lib/abstractio.rb +0 -17
@@ -0,0 +1,63 @@
1
+ <% @page_title = "faq" %>
2
+
3
+ <div class="row">
4
+
5
+ <div class="large-9 push-3 columns">
6
+
7
+ <% @page_title = "FAQ" %>
8
+ <h2><%= @page_title %></h2>
9
+
10
+ <h4 class="subheader">We hear a lot of questions from people using Abstractio and realized that a lot of the same ones were being asked. We put together this list of FAQs to help you find answers to common questions.</h4>
11
+
12
+ <h4>Why doesn't Abstractio 4 support IE7 or IE8?</h4>
13
+ <p>Abstractio 4 is mobile-first, meaning it relies on media queries to layer in more complex layouts and components. Browsers or devices that don't support media queries will be restricted to a simple, single-column layout. In some ways, Abstractio 4 better supports IE6-7 inasmuch as it provides a mobile but not broken experience. In IE8 Abstractio 4 will provide less than Abstractio 3, but with IE8's market share in such steep decline we thought this was the right time.</p>
14
+
15
+ <p>If IE8 support is important for your users / customers, you can use <a href="../files/abstractio-3.2.5.zip">Abstractio 3.2</a>, which supports IE8. It's not mobile first but it's pretty good stuff.</p>
16
+
17
+ <h4>Can I use Abstractio for something I'm going to sell?</h4>
18
+ <p>Yes! Abstractio is licensed under the MIT open source license, meaning you can do almost anything with it. The only thing you can't do is imply that Abstractio itself is what you're selling.</p>
19
+
20
+ <h4>Is Abstractio tested on [some other device or browser]?</h4>
21
+ <p>We try and be comprehensive in our testing, but there are thousands of devices so it's often just not feasible. We'd love to hear about Abstractio's behaviour on other devices, but the list above is what we test each release on. If your browser or device is not listed your results may vary.</p>
22
+
23
+ <h4>Where can I find the Abstractio 3 docs?</h4>
24
+ <p>For those of you still working on Abstractio 3 sites, or who need to continue supporting IE8 with Abstractio, we keep the Abstractio 3 docs available. <a href="../old-docs/f3">View the Abstractio 3 Docs &rarr;</a></p>
25
+
26
+ <hr>
27
+
28
+ <h2>Getting Help</h2>
29
+ <h5 class="subheader">If the documentation and questions above aren't enough, there are several avenues of support available for you to pursue.</h5>
30
+
31
+ <h5><a href="https://groups.google.com/forum/?fromgroups#!forum/abstractio-framework-">Abstractio Framework Google Group</a></h5>
32
+ <p>This is an active group of Abstractio users who can answer questions about implementation or approach. If you aren't sure how to do something, or something isn't working like you'd expect, reach out here.</p>
33
+
34
+ <h5><a href="http://github.com/themepile/abstractio/issues">Github Issues</a></h5>
35
+ <p>If you've found a bug in the framework (or think you have) you can file it here. We try and address these as part of ongoing development. Please use this only for bugs or things that seem incorrect, support requests will not be addressed quickly here.</p>
36
+
37
+ <h5><a href="http://twitter.com/abstractiothemepile">@abstractiothemepile</a></h5>
38
+ <p><a href="http://twitter.com/abstractiothemepile">Follow us on Twitter</a> to hear about new sites using Abstractio, code examples, playground pieces from ZURB and more. You can also ping us with quick questions or other support issues, we're usually pretty speedy.</p>
39
+
40
+ <h5><a href="mailto:abstractio@themepile.co.uk">Get in Touch</a></h5>
41
+ <p>If you're totally stuck and need some help, shoot us <a href="mailto:abstractio@themepile.co.uk">an email</a> and we'll typically get back within a day or two.</p>
42
+
43
+ <hr>
44
+
45
+ <div class="panel">
46
+ <h3>What's Changed Recently?</h3>
47
+ <h5 class="subheader">Abstractio is the most advanced front-end framework in existence. We've ditched IE7 so that we can do more awesome things and push the web to where it needs to be. Take a look at our changelog to know what's recently been changed or updated.</h5>
48
+ <a class="button" href="support.html">Browser Support &raquo;</a> <a class="secondary button" href="changelog.html">See the Version Changelog &raquo;</a>
49
+ </div>
50
+
51
+ </div>
52
+ <div class="large-3 pull-9 columns">
53
+ <%= render "_sidebar.html.erb" %>
54
+ </div>
55
+ </div>
56
+
57
+
58
+
59
+
60
+
61
+
62
+
63
+
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -0,0 +1,298 @@
1
+ <% @side_nav = "using" %>
2
+ <% @page_title = "Getting Started" %>
3
+ <div class="row">
4
+ <div class="large-9 push-3 columns">
5
+
6
+ <h2>Getting Started</h2>
7
+ <h5 class="subheader">Whether you are using Scss or CSS, we've made it easy to start a project so that you can help take over the world one responsive site at a time.</h5>
8
+ <p>Abstractio is developed in <a href="http://www.sass-lang.com">Sass</a>, which is powerful CSS pre-processor that helps you write cleaner, more organized, CSS that you can more easily maintain over time without the typical headaches of vanilla CSS. On top of our minimal styling, we've written powerful Javascript plugins that will make useful interactions easier to implement across screen sizes.</p>
9
+
10
+ <div class="" style="font-size: 14px;">
11
+ <p><strong>Looking for Abstractio 3?</strong><br>
12
+ We're still supporting Abstractio 3 for those who don't want to take the leap into the future with us. You can view the docs, download a package or visit the Github page.</p>
13
+ <ul class="button-group">
14
+ <li><a class="small button secondary" style="margin-bottom: 0;" href="../download-f3.php">Download</a></li>
15
+ <li><a class="small button secondary" style="margin-bottom: 0;" href="../old-docs/f3">Docs</a></li>
16
+ <li><a class="small button secondary" style="margin-bottom: 0;" href="https://github.com/themepile/abstractio/tree/3-2-stable">Github</a></li>
17
+ </ul>
18
+
19
+ <hr>
20
+
21
+ <p><strong>Ready to Move to 4?</strong><br>
22
+ We've got you covered with a migration guide that explains the differences.</p>
23
+
24
+ <a class="small button secondary" href="../migration.php">Migration Guide</a>
25
+ </div>
26
+
27
+ <hr>
28
+
29
+ <h3>What comes with Abstractio?</h3>
30
+ <h5 class="subheader">We've got you covered when it comes to useful features and we've made it easy to take out what you don't need. Here's what you'll get when you create a project using our Sass version or the default CSS version:</h5>
31
+
32
+ <div class="row">
33
+ <div class="large-4 columns">
34
+ <dl>
35
+ <dt><h5><a href="components/grid.html">The Grid</a></h5></dt>
36
+ <dd>Our grid works on almost any device and has support for nesting, source ordering, offsets and device presentation. It almost makes creating layouts too easy!</dd>
37
+ </dl>
38
+ </div>
39
+ <div class="large-4 columns">
40
+ <dl>
41
+ <dt><h5><a href="components/type.html">Typography</a></h5></dt>
42
+ <dd>Our type is based on a golden ratio modular scale that creates meaningful relationships for the copy on the page. It's easily updated using Scss or our CSS customizer.</dd>
43
+ </dl>
44
+ </div>
45
+ <div class="large-4 columns">
46
+ <dl>
47
+ <dt><h5><a href="components/buttons.html">Buttons</a></h5></dt>
48
+ <dd>Buttons are a core interactive element of the Web. We've included styles for creating simple marketing CTAs to complex application toolbars.</dd>
49
+ </dl>
50
+ </div>
51
+ </div>
52
+
53
+ <div class="row">
54
+ <div class="large-4 columns">
55
+ <dl>
56
+ <dt><h5><a href="components/top-bar.html">Navigation</a></h5></dt>
57
+ <dd>People have to get around. Navigation styles in Abstractio include a complex top bar that supports 3-level dropdown navigation for simple bars, sidebars and subnav pills.</dd>
58
+ </dl>
59
+ </div>
60
+ <div class="large-4 columns">
61
+ <dl>
62
+ <dt><h5><a href="components/forms.html">Forms</a></h5></dt>
63
+ <dd>Built with the Abstractio Grid, you can create simple or complicated forms quickly and easily&mdash; validation states, custom select, radio buttons and more.</dd>
64
+ </dl>
65
+ </div>
66
+ <div class="large-4 columns">
67
+ <dl>
68
+ <dt><h5><a href="components/panels.html">UI Elements</a></h5></dt>
69
+ <dd>We've also included lots of useful elements like visibility classes (to hide or show things based on screen size or orientation), labels, alerts, tooltips, panels and a lot more.</dd>
70
+ </dl>
71
+ </div>
72
+ </div>
73
+
74
+ <div class="row">
75
+ <div class="large-4 columns">
76
+ <dl>
77
+ <dt><h5><a href="components/section.html">Section</a></h5></dt>
78
+ <dd>Whether it's entire pages or simple tabbed content, Abstractio's tabs get the job done. Not only stylish, but interactive out of the box.</dd>
79
+ </dl>
80
+ </div>
81
+ <div class="large-4 columns">
82
+ <dl>
83
+ <dt><h5><a href="components/orbit.html">Orbit</a></h5></dt>
84
+ <dd>A powerful image or content slider that works responsively and includes tons of useful options, such as timers, paddles, bullet thumbs and more.</dd>
85
+ </dl>
86
+ </div>
87
+ <div class="large-4 columns">
88
+ <dl>
89
+ <dt><h5><a href="components/reveal.html">Reveal</a></h5></dt>
90
+ <dd>You can easily call modals without writing any JS, even spawn subsequent modals cleanly on the same page. Reveal works across devices.</dd>
91
+ </dl>
92
+ </div>
93
+ </div>
94
+
95
+ <div class="row">
96
+ <div class="large-4 columns">
97
+ <dl>
98
+ <dt><h5><a href="components/clearing.html">Clearing</a></h5></dt>
99
+ <dd>Show off your images in style with our easy to use gallery plugin. It's built with simple unordered lists that can be styled to your hearts content.</dd>
100
+ </dl>
101
+ </div>
102
+ <div class="large-4 columns">
103
+ <dl>
104
+ <dt><h5><a href="components/magellan.html">Magellan</a></h5></dt>
105
+ <dd>A flexible sticky navigation that knows where you are on the page. You just tell it what to recognize and set it off.</dd>
106
+ </dl>
107
+ </div>
108
+ <div class="large-4 columns">
109
+ <dl>
110
+ <dt><h5><a href="components/joyride.html">Joyride</a></h5></dt>
111
+ <dd>This plugin lets you give users a tour of your site or app. Joyride is easy to customize using CSS or our Scss variables.</dd>
112
+ </dl>
113
+ </div>
114
+ </div>
115
+
116
+ <div class="row">
117
+ <div class="large-4 columns">
118
+ <dl>
119
+ <dt><h5><a href="components/tooltips.html">Tooltips</a></h5></dt>
120
+ <dd>Tooltips lets you add quick hover or tap tooltips to elements.</dd>
121
+ </dl>
122
+ </div>
123
+ <div class="large-4 columns end">
124
+ <dl>
125
+ <dt><h5><a href="components/dropdown.html">Dropdown</a></h5></dt>
126
+ <dd>We've made a dropdown plugin that makes it easy to attach a popover dropdown to any element on the page.</dd>
127
+ </dl>
128
+ </div>
129
+ </div>
130
+
131
+ <hr>
132
+
133
+ <h3>How is a project structured?</h3>
134
+ <h5 class="subheader">We follow common patterns for directory structure that are logical and easily maintained. Below is an explanation of each file you'll get when you create a project using our gem or download via our <a href="http://abstractio.themepile.co.uk/migration.php">customizer</a>.</h5>
135
+
136
+ <div class="row">
137
+ <div class="large-4 columns">
138
+ <dl>
139
+ <dt><h5>css</h5></dt>
140
+ <dd>Includes <code>abstractio.css</code> and <code>abstractio.min.css</code> so you can choose which to use. You can add <code>app.css</code> or any other stylesheet to use for custom styles that will sit on top of the Abstractio core as overrides.</dd>
141
+ </dl>
142
+ </div>
143
+ <div class="large-4 columns">
144
+ <dl>
145
+ <dt><h5>js</h5></dt>
146
+ <dd>All of our plugins and the necessary JavaScript to make Abstractio work properly. <strong>All JS is initiated by default</strong>.</dd>
147
+ </dl>
148
+ </div>
149
+ <div class="large-4 columns">
150
+ <dl>
151
+ <dt><h5>img</h5></dt>
152
+ <dd>This directory actually comes empty in Abstractio 4! We no longer have any images included in the core of Abstractio.</dd>
153
+ </dl>
154
+ </div>
155
+ </div>
156
+
157
+ <div class="row">
158
+ <div class="large-4 columns">
159
+ <dl>
160
+ <dt><h5>index.html</h5></dt>
161
+ <dd>A sample structure for page content, giving you something to use as a basic structural template for the rest of the pages in your project.</dd>
162
+ </dl>
163
+ </div>
164
+ <div class="large-4 columns">
165
+ <dl>
166
+ <dt><h5>humans.txt</h5></dt>
167
+ <dd>A way to tell the world about the people that worked on the sites you build, giving them kudos they deserve.</dd>
168
+ </dl>
169
+ </div>
170
+ <div class="large-4 columns">
171
+ <dl>
172
+ <dt><h5>robots.txt</h5></dt>
173
+ <dd>Give instructions to web robots so search engines know what to do when they crawl your site for content.</dd>
174
+ </dl>
175
+ </div>
176
+ </div>
177
+ <br>
178
+ <div class="row">
179
+ <div class="large-12 columns">
180
+ <div class="panel">
181
+ <h6 class="subheader"><strong>Using the Gem?</strong> You'll see a couple extra pieces in your project upon creation. These are:</h6>
182
+ <dl>
183
+ <dt>scss/</dt>
184
+ <dd>Your main style folder is named <strong>scss/</strong> and contains <code>app.scss</code> (which has the abstractio gem import and commented portions you can pick and choose). Override the Abstractio styles within your <code>app.scss</code> file. You can see the compiled CSS in your stylesheets directory after you manually <span class="has-tip top" title="$ compass compile <filename>">compile</span> or <span class="has-tip top" title="$ compass watch <directory>">watch</span>. This directory also includes <code>_settings.scss</code>, which is used to control variables that help easily style Abstractio.</dd>
185
+ <dt></i>config.rb</dt>
186
+ <dd>This file is used by <a href="http://compass-style.org">Compass</a> to compile your project. Here you can control the output style of your CSS, the structure of your directories and other useful settings.</dd>
187
+ </dl>
188
+ </div>
189
+ </div>
190
+ </div>
191
+
192
+ <hr>
193
+
194
+ <h3 id="basicHTMLMarkup">HTML Page Markup</h3>
195
+ <h5 class="subheader">Our markup structure is straight forward and gives you the flexibility you need to create to your hearts desires. Here's an example page that includes the basics:</h5>
196
+
197
+ <%= code_example '
198
+ <!DOCTYPE html>
199
+ <!--[if IE 8]> <html class="no-js lt-ie9" lang="en"> <![endif]-->
200
+ <!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
201
+
202
+ <head>
203
+ <meta charset="utf-8" />
204
+ <meta name="viewport" content="width=device-width" />
205
+ <title>Abstractio 4</title>
206
+
207
+ <link rel="stylesheet" href="css/normalize.css" />
208
+ <!-- If you are using CSS version, add this -->
209
+ <link rel="stylesheet" href="css/abstractio.css" />
210
+ <link rel="stylesheet" href="css/app.css" />
211
+
212
+ <script src="js/vendor/custom.modernizr.js"></script>
213
+
214
+ </head>
215
+ <body>
216
+
217
+ <!-- body content here -->
218
+
219
+ <script>
220
+ document.write(\'<script src=\' +
221
+ (\'__proto__\' in {} ? \'js/vendor/zepto\' : \'js/vendor/jquery\') +
222
+ \'.js><\/script>\')
223
+ </script>
224
+ <script src="js/abstractio/abstractio.js"></script>
225
+ <script src="js/abstractio/abstractio.alerts.js"></script>
226
+ <script src="js/abstractio/abstractio.clearing.js"></script>
227
+ <script src="js/abstractio/abstractio.cookie.js"></script>
228
+ <script src="js/abstractio/abstractio.dropdown.js"></script>
229
+ <script src="js/abstractio/abstractio.forms.js"></script>
230
+ <script src="js/abstractio/abstractio.joyride.js"></script>
231
+ <script src="js/abstractio/abstractio.magellan.js"></script>
232
+ <script src="js/abstractio/abstractio.orbit.js"></script>
233
+ <script src="js/abstractio/abstractio.placeholder.js"></script>
234
+ <script src="js/abstractio/abstractio.reveal.js"></script>
235
+ <script src="js/abstractio/abstractio.section.js"></script>
236
+ <script src="js/abstractio/abstractio.tooltips.js"></script>
237
+ <script src="js/abstractio/abstractio.topbar.js"></script>
238
+ <script>
239
+ $(document).abstractio();
240
+ </script>
241
+ </body>
242
+ </html>
243
+
244
+ ', :html %>
245
+
246
+ <div class="row">
247
+ <div class="large-4 columns">
248
+ <dl>
249
+ <dt><h5>Doctype &amp; Head</h5></dt>
250
+ <dd>We use the HTML doctype declaration to tell the browser what to expect. From there we've used a <a href="http://paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/">technique by Paul Irish</a> that attaches classes to the HTML for IE. After that, we set the character set to UTF-8.</dd>
251
+ <dt>Meta Viewport tag</dt>
252
+ <dd>This is used to make sure smaller devices use the device width as the viewport width.</dd>
253
+ <dt>Title Tag</dt>
254
+ <dd>This one is pretty self-explanatory. You're setting the name of the current page with this value.</dd>
255
+ </dl>
256
+ </div>
257
+ <div class="large-4 columns">
258
+ <dl>
259
+ <dt><h5>CSS &amp; Modernizr</h5></dt>
260
+ <dd>The default CSS download includes everything you need to get going, including necessary styles and our custom Modernizr script.</dd>
261
+ <dt>CSS</dt>
262
+ <dd>We include <code>abstractio.min.css</code> and <code>abstractio.css</code>. The difference here is whether or not you want minified code or not (link whichever you want, but not both).</dd>
263
+ </dl>
264
+ </div>
265
+ <div class="large-4 columns">
266
+ <dl>
267
+ <dt>Modernizr</dt>
268
+ <dd>We use this to give us the HTML5 Shiv, touch classes and JS media queries that help us control Abstractio.</dd>
269
+ <dt><h5>Javascripts</h5></dt>
270
+ <dd>Our JS is linked up right before the closing body tag and includes all necessary plugins and initializers to hit the ground running.</dd>
271
+ </dl>
272
+ </div>
273
+ </div>
274
+
275
+ <hr>
276
+
277
+ <div class="panel">
278
+ <h3>Get going!</h3>
279
+ <h5 class="subheader">Now that you understand the gist of what Abstractio is and how it works, it's time to start a project! We've got two different ways for you to build projects with Abstractio, a Compass Gem using Scss or a with plain CSS.</h5>
280
+ <a href="./sass.html" class="button">Using the Gem</a></li>
281
+ <a href="http://abstractio.themepile.co.uk/migration.php" class="button secondary">Quickstart with CSS</a></li>
282
+ </div>
283
+
284
+
285
+
286
+ </div>
287
+ <div class="large-3 pull-9 columns">
288
+ <%= render "_sidebar.html.erb" %>
289
+ </div>
290
+ </div>
291
+
292
+
293
+
294
+
295
+
296
+
297
+
298
+
@@ -0,0 +1,138 @@
1
+ <% @side_nav = "using" %>
2
+
3
+ <div class="row">
4
+ <div class="large-9 push-3 columns">
5
+ <% @page_title = "Javascript" %>
6
+ <div class="row">
7
+ <div class="large-12 columns">
8
+ <h2><%= @page_title %></h2>
9
+ <h4 class="subheader">Abstractio 4 streamlines the implementation of the Abstractio plugins by combining them all into a single plugin under the <code>$.fn.abstractio()</code> Zepto/jQuery namespace.</h4>
10
+ <hr>
11
+
12
+ <h2>Installation</h2>
13
+ <p>Abstractio JavaScript was designed to work with <a href="http://zeptojs.com/" title="Zepto Docs">Zepto</a> and <a href="http://jquery.com/" title="jQuery Docs">jQuery</a> right out of the gate. Zepto is not supported by all browsers, so as suggested in the Zepto documentation, you should test for compatibility and load Zepto or jQuery as necessary.</p>
14
+
15
+ <h5>Include Libraries</h5>
16
+ <p>In the <code>head</code> section of your page add Modernizr. Modernizr acts as a shim for HTML5 elements for older browsers as well as detection for mobile devices.</p>
17
+
18
+ <%= code_example '
19
+ <script src="/js/custom.modernizr.js"></script>
20
+ ', :html %>
21
+
22
+ <p>Before the closing <code>body</code> tag, insert the following JavaScript.</p>
23
+
24
+ <%= code_example "
25
+ <!-- Check for Zepto support, load jQuery if necessary -->
26
+ <script>
27
+ document.write('<script src=/js/vendor/'
28
+ + ('__proto__' in {} ? 'zepto' : 'jquery')
29
+ + '.js><\\\/script>');
30
+ </script>
31
+ ", :html %>
32
+
33
+ <p>Then include either <code>abstractio.min.js</code>, which includes Abstractio Core and all JavaScript plugins or you can load them individually. The minified version is not available in the Compass version.</p>
34
+
35
+ <%= code_example '
36
+ <script src="/js/abstractio.min.js"></script>
37
+
38
+ <!-- or individually -->
39
+
40
+ <script src="/js/abstractio.js"></script>
41
+ <script src="/js/abstractio.alerts.js"></script>
42
+ <!-- ... -->
43
+ <script src="/js/abstractio.dropdown.js"></script>
44
+ <script src="/js/abstractio.section.js"></script>
45
+ ', :html %>
46
+
47
+ <h5>Initialize Abstractio</h5>
48
+ <p>After you have included the Abstractio JavaScript, just add a simple call to initialize all plugins on your page.</p>
49
+ <p>It is recommended that you initialize on document ready</p>
50
+
51
+ <%= code_example '
52
+ <script>
53
+ $(function(){
54
+ $(document).abstractio();
55
+ })
56
+ </script>
57
+ ', :html %>
58
+
59
+ <p><strong>Note:</strong> We include tested versions of jQuery and Zepto in the Abstractio repo to get you started quickly. If you want to build your own version of Zepto, Abstractio employs the <i>event</i>, <i>fx_methods</i>, <i>assets</i>, <i>data</i>, <i>selector</i>, and <i>stack</i> modules.</p>
60
+
61
+ <hr>
62
+
63
+ <h2>Configuration</h2>
64
+
65
+ <p>Abstractio accepts a myriad of options for initialization. By default, calling <code>$('#scope').abstractio();</code> will initialize all available plugins on the page. Alternatively, you can pass individual plugins along with configuration options and a callback. This will allow you to select specific plugins to start on your page, even if their source is included. You can take a look at the call here:</p>
66
+
67
+ <%= code_example "
68
+ $(document).abstractio('section', {deep_linking: true}, function (response) {
69
+ console.log(response.errors);
70
+ });
71
+ ", :js %>
72
+
73
+ <p>The call will initialize the Section plugin on the page with deep linking enabled and pass back a response object with any errors that may have occurred.</p>
74
+
75
+ <p>You can initialize multiple libraries within the same call as well. Here are a few ways this can be done:</p>
76
+
77
+ <%= code_example "
78
+ $(document).abstractio('section dropdown alerts', {callback: myCallbackFunction}, function (response) {
79
+ console.log(response.errors);
80
+ });
81
+
82
+ // alternative, no configuration
83
+
84
+ $(document).abstractio('section dropdown alerts', function (response) {
85
+ console.log(response.errors);
86
+ });
87
+
88
+ // alternative, all plugins, only callback
89
+
90
+ $(document).abstractio(function (response) {
91
+ console.log(response.errors);
92
+ });
93
+
94
+ // alternative, only plugin, no config or callback
95
+
96
+ $(document).abstractio('section');
97
+ ", :js %>
98
+
99
+ <p>Keep in mind, if you initialize multiple plugins at one time and pass a configuration object that object will get passed to all plugins that were initialized. So in the first example: section, dropdown, and alerts will all get passed the <code>myCallbackFunction</code> on initialization.</p>
100
+
101
+ <p>What if you wanted to pass the <code>myCallbackFunction</code> only to Section and still initialize the other plugins as well? You could do the following.</p>
102
+
103
+ <%= code_example "
104
+ $(document)
105
+ .abstractio('dropdown alerts')
106
+ .abstractio('section', {callback: myCallbackFunction});
107
+ ", :js %>
108
+
109
+ <hr>
110
+
111
+ <h2>Calling Internal Methods</h2>
112
+
113
+ <p>Abstractio 4 JavaScript allows you call call internal plugin methods by passing the method name as the second argument. This is necessary for plugins like Joyride, since they are not initialized on page load by default.</p>
114
+
115
+ <p>This will fire the <code>start</code> method on Joyride:</p>
116
+
117
+ <%= code_example "
118
+ $(document).abstractio('joyride', 'start');
119
+ ", :js %>
120
+
121
+ <h5>Unbind Events</h5>
122
+
123
+ <p>All plugins can be unbound from the DOM by firing the <code>off</code> event either on that plugin or globally to unbind all Abstractio events.</p>
124
+
125
+ <%= code_example "
126
+ $(document).abstractio('tooltips', 'off');
127
+
128
+ // or globally
129
+
130
+ $(document).abstractio('off');
131
+ ", :js %>
132
+ </div>
133
+ </div>
134
+ </div>
135
+ <div class="large-3 pull-9 columns">
136
+ <%= render "_sidebar.html.erb" %>
137
+ </div>
138
+ </div>