startmeup 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +6 -0
- data/Gemfile +4 -0
- data/LICENSE.md +19 -0
- data/README.md +105 -0
- data/Rakefile +8 -0
- data/app/assets/stylesheets/_base.sass +17 -0
- data/app/assets/stylesheets/_buttons.sass +40 -0
- data/app/assets/stylesheets/_flash.sass +36 -0
- data/app/assets/stylesheets/_forms.sass +56 -0
- data/app/assets/stylesheets/_grid-settings.sass +26 -0
- data/app/assets/stylesheets/_lists.sass +23 -0
- data/app/assets/stylesheets/_panel.sass +7 -0
- data/app/assets/stylesheets/_styleguide.sass +40 -0
- data/app/assets/stylesheets/_tables.sass +19 -0
- data/app/assets/stylesheets/_typography.sass +57 -0
- data/app/assets/stylesheets/_variables.sass +55 -0
- data/bin/startmeup +5 -0
- data/lib/startmeup.rb +6 -0
- data/lib/startmeup/generator.rb +80 -0
- data/lib/startmeup/version.rb +3 -0
- data/sache.json +5 -0
- data/spec/fixtures/application.sass +2 -0
- data/spec/spec_helper.rb +3 -0
- data/spec/startmeup_spec.rb +17 -0
- data/startmeup.gemspec +33 -0
- metadata +162 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 0b5fa567acf315a1b0d65e583949ed9bdf3aad56
|
4
|
+
data.tar.gz: df2a55651b9bc18ee487e60d7af43d7eef4dd411
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: c79482ff8dde18799be5c28ee0f065b281d206b79975a0c870a679816483eb13e3047ea9aadd6a0bce7142321249fdf68340fcdccc35c017f22ef91b47adc6e8
|
7
|
+
data.tar.gz: f24fbca6e6b98b83fe78c1e1a5e8e44cd0786dc7131a1bb59b2116710333553e19776c1530d99fee056504f89c38520181da6f37cdafd53156e40cd2cb307fb4
|
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE.md
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
4
|
+
of this software and associated documentation files (the “Software”), to deal
|
5
|
+
in the Software without restriction, including without limitation the rights
|
6
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
7
|
+
copies of the Software, and to permit persons to whom the Software is
|
8
|
+
furnished to do so, subject to the following conditions:
|
9
|
+
|
10
|
+
The above copyright notice and this permission notice shall be included in all
|
11
|
+
copies or substantial portions of the Software.
|
12
|
+
|
13
|
+
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
14
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
15
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
16
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
17
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
18
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
19
|
+
SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,105 @@
|
|
1
|
+
## Scaffold styles, variables and structure for Bourbon/Neat projects.
|
2
|
+
|
3
|
+
StartMeUp is made to work alongside a CSS reset; not replace one. The suggested reset is [Normalize](http://necolas.github.io/normalize.css).
|
4
|
+
|
5
|
+
|
6
|
+
## Requirements
|
7
|
+
|
8
|
+
- [Sass](https://github.com/sass/sass) 3.0+
|
9
|
+
- [Bourbon](https://github.com/thoughtbot/bourbon) 2.0+
|
10
|
+
- [Neat](https://github.com/thoughtbot/neat)
|
11
|
+
- Ruby 1.9.3+ (required to install StartMeUp from the command line)
|
12
|
+
|
13
|
+
## Installation
|
14
|
+
|
15
|
+
1. Install the StartMeUp gem using the [RubyGems](https://rubygems.org) package manager:
|
16
|
+
|
17
|
+
```bash
|
18
|
+
gem install startmeup
|
19
|
+
```
|
20
|
+
|
21
|
+
2. Install [Bourbon](https://github.com/thoughtbot/bourbon#installation) (required) and [Neat](https://github.com/thoughtbot/neat#installation) (optional).
|
22
|
+
|
23
|
+
3. Install the StartMeUp library into the current directory by running the following command at the command-line. If you’re using Ruby on Rails, run the command in `app/assets/stylesheets`:
|
24
|
+
|
25
|
+
```bash
|
26
|
+
startmeup install
|
27
|
+
```
|
28
|
+
|
29
|
+
A `base` directory will be generated which contains all of the StartMeUp files.
|
30
|
+
|
31
|
+
4. Import StartMeUp after Bourbon in your `application.css.sass` or main manifest file. All additional stylesheets should be imported below StartMeUp.
|
32
|
+
|
33
|
+
```bash
|
34
|
+
@import bourbon
|
35
|
+
@import base/base
|
36
|
+
```
|
37
|
+
|
38
|
+
5. When using Neat, uncomment the following line in `_base.sass`:
|
39
|
+
|
40
|
+
```sass
|
41
|
+
@import grid-settings
|
42
|
+
```
|
43
|
+
|
44
|
+
And import Neat after StartMeUp in your `application.css.sass` or main manifest file:
|
45
|
+
|
46
|
+
```sass
|
47
|
+
@import bourbon
|
48
|
+
@import base/base
|
49
|
+
@import neat
|
50
|
+
|
51
|
+
// All other imports
|
52
|
+
```
|
53
|
+
|
54
|
+
|
55
|
+
If you want to use Neat functions in StartMeUp, you can `@import grid-settings` before Neat, remove `@import grid-settings` from `_base.sass` and import the rest of StartMeUp after. For example:
|
56
|
+
|
57
|
+
```sass
|
58
|
+
@import bourbon
|
59
|
+
@import base/grid-settings
|
60
|
+
@import neat
|
61
|
+
@import base/base
|
62
|
+
|
63
|
+
// All other imports
|
64
|
+
```
|
65
|
+
|
66
|
+
## Using StartMeUp
|
67
|
+
|
68
|
+
### Sass structure & default style
|
69
|
+
The StartMeUp directory should contain styles for all the basic elements used throughout the project. Customise StartMeUp for your site as you see fit.
|
70
|
+
|
71
|
+
### Variables
|
72
|
+
This houses all variables that are used, or will be used, in more than one file in your site. Variable names in StartMeUp that are used outside of the variables file start with `$base` to indicate that they are the most basic variables.
|
73
|
+
|
74
|
+
### Grid settings
|
75
|
+
Variables specifically created for [Neat](http://neat.bourbon.io) resets and breakpoints. To be used, these need to be imported separately from the rest of your base file above Neat in your main stylesheet. Otherwise just remove the file.
|
76
|
+
|
77
|
+
Extra media query mixins, and Omega Reset mixin are included.
|
78
|
+
|
79
|
+
### Typography
|
80
|
+
All type is based on `$base-font-size` which is set to 1em (16px) by default. The spacing around type is based on `$base-line-height` so as to keep a semi-baseline grid. All sizes are scaled up or down by a factor of `0.25`. Modular Scale is used throughout for harmonious sizes.
|
81
|
+
|
82
|
+
### Lists
|
83
|
+
All lists have stripped out styles. No bullets, no left padding. To add back the expected browser default styles add `@extend %default-ul;` or `@extend %default-ol;` to the `<ul>` or `<ol>` respectively. A utility class `.bulleted` will add bullets back in to lists.
|
84
|
+
|
85
|
+
### Forms
|
86
|
+
Adds basic styles all form elements. The variables at the top of the file all inherit from the variables file but make it really easy to be overridden.
|
87
|
+
|
88
|
+
### Buttons
|
89
|
+
Basic style for `button` and `input[type="submit"]`. Base button styles can be changed by modifying the `%button` extend in `base/extends/_button.sass`. Some utilty classes such as `.small`, `.large`, `.destructive` and `.wide` are included.
|
90
|
+
|
91
|
+
### Panel
|
92
|
+
A simple pullout box style can be added with `.panel`.
|
93
|
+
|
94
|
+
### Styleguide
|
95
|
+
Helper declarations for a styleguide page (seperate gem to be developed).
|
96
|
+
|
97
|
+
### Flash
|
98
|
+
Basic Rails flash styles.
|
99
|
+
|
100
|
+
## Credits
|
101
|
+
|
102
|
+
StartMeUp is a wholesale ripoff of Bitters by Thoughtbot. I made it to learn how to make a gem.
|
103
|
+
|
104
|
+
Bitters is maintained and funded by [thoughtbot, inc](http://thoughtbot.com).
|
105
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
// Startmeup 0.0.1
|
2
|
+
// Totally stolen from http://bitters.bourbon.io
|
3
|
+
// MIT License
|
4
|
+
|
5
|
+
@import variables
|
6
|
+
|
7
|
+
// Neat Settings -- uncomment if using Neat -- must be imported before Neat
|
8
|
+
// @import grid-settings
|
9
|
+
|
10
|
+
@import buttons
|
11
|
+
@import forms
|
12
|
+
@import lists
|
13
|
+
@import tables
|
14
|
+
@import typography
|
15
|
+
@import flash
|
16
|
+
@import panel
|
17
|
+
@import styleguide
|
@@ -0,0 +1,40 @@
|
|
1
|
+
#{$all-button-inputs}, button, .button
|
2
|
+
+appearance(none)
|
3
|
+
-webkit-font-smoothing: antialiased
|
4
|
+
+transition (all, 0.2s)
|
5
|
+
background-color: $action-color
|
6
|
+
border-radius: $base-border-radius
|
7
|
+
border: none
|
8
|
+
color: #fff
|
9
|
+
cursor: pointer
|
10
|
+
display: inline-block
|
11
|
+
font-family: $base-font-family
|
12
|
+
font-size: $base-font-size
|
13
|
+
font-weight: 600
|
14
|
+
line-height: 1
|
15
|
+
padding: 0.75em 1em
|
16
|
+
text-decoration: none
|
17
|
+
user-select: none
|
18
|
+
vertical-align: middle
|
19
|
+
white-space: nowrap
|
20
|
+
&:hover, &:focus
|
21
|
+
background-color: darken($action-color, 15%)
|
22
|
+
color: #fff
|
23
|
+
&:disabled
|
24
|
+
cursor: not-allowed
|
25
|
+
opacity: 0.5
|
26
|
+
|
27
|
+
&.large
|
28
|
+
font-size: modular-scale(1)
|
29
|
+
|
30
|
+
&.small
|
31
|
+
font-size: modular-scale(-1)
|
32
|
+
|
33
|
+
&.destructive
|
34
|
+
background-color: $destructive
|
35
|
+
&:hover
|
36
|
+
background-color: darken(saturate($destructive, 18), 18)
|
37
|
+
color: #fff
|
38
|
+
|
39
|
+
&.wide
|
40
|
+
width: 100%
|
@@ -0,0 +1,36 @@
|
|
1
|
+
$base-spacing: 1.5em !default
|
2
|
+
$alert-color: #fff6bf !default
|
3
|
+
$error-color: #fbe3e4 !default
|
4
|
+
$notice-color: #e5edf8 !default
|
5
|
+
$success-color: #e6efc2 !default
|
6
|
+
|
7
|
+
@mixin flash($color)
|
8
|
+
background-color: $color
|
9
|
+
color: darken($color, 60%)
|
10
|
+
display: block
|
11
|
+
font-weight: 600
|
12
|
+
margin-bottom: $base-spacing / 2
|
13
|
+
padding: $base-spacing / 2
|
14
|
+
text-align: center
|
15
|
+
|
16
|
+
a
|
17
|
+
color: darken($color, 70%)
|
18
|
+
&:focus,
|
19
|
+
&:hover
|
20
|
+
color: darken($color, 90%)
|
21
|
+
|
22
|
+
.flash-alert
|
23
|
+
@include flash($alert-color)
|
24
|
+
|
25
|
+
|
26
|
+
.flash-error
|
27
|
+
@include flash($error-color)
|
28
|
+
|
29
|
+
|
30
|
+
.flash-notice
|
31
|
+
@include flash($notice-color)
|
32
|
+
|
33
|
+
|
34
|
+
.flash-success
|
35
|
+
@include flash($success-color)
|
36
|
+
|
@@ -0,0 +1,56 @@
|
|
1
|
+
fieldset
|
2
|
+
background-color: lighten($base-border-color, 10%)
|
3
|
+
border: $base-border
|
4
|
+
margin: 0 0 $small-spacing
|
5
|
+
padding: $base-spacing
|
6
|
+
|
7
|
+
input, label, select
|
8
|
+
display: block
|
9
|
+
font-family: $base-font-family
|
10
|
+
font-size: $base-font-size
|
11
|
+
|
12
|
+
label
|
13
|
+
font-weight: 600
|
14
|
+
margin-bottom: $small-spacing / 2
|
15
|
+
&.required::after
|
16
|
+
content: "*"
|
17
|
+
abbr
|
18
|
+
display: none
|
19
|
+
|
20
|
+
#{$all-text-inputs}, select[multiple=multiple], textarea
|
21
|
+
background-color: $base-background-color
|
22
|
+
border: $base-border
|
23
|
+
border-radius: $base-border-radius
|
24
|
+
box-shadow: $form-box-shadow
|
25
|
+
box-sizing: border-box
|
26
|
+
font-family: $base-font-family
|
27
|
+
font-size: $base-font-size
|
28
|
+
margin-bottom: $base-spacing / 2
|
29
|
+
padding: $base-spacing / 3
|
30
|
+
transition: border-color
|
31
|
+
width: 100%
|
32
|
+
&:hover
|
33
|
+
border-color: darken($base-border-color, 10%)
|
34
|
+
&:focus
|
35
|
+
border-color: $action-color
|
36
|
+
box-shadow: $form-box-shadow-focus
|
37
|
+
outline: none
|
38
|
+
|
39
|
+
textarea
|
40
|
+
resize: vertical
|
41
|
+
|
42
|
+
input[type="search"]
|
43
|
+
+appearance(none)
|
44
|
+
|
45
|
+
input[type="checkbox"], input[type="radio"]
|
46
|
+
display: inline
|
47
|
+
margin-right: $small-spacing / 2
|
48
|
+
|
49
|
+
input[type="file"]
|
50
|
+
padding-bottom: $small-spacing
|
51
|
+
width: 100%
|
52
|
+
|
53
|
+
select
|
54
|
+
margin-bottom: $base-spacing
|
55
|
+
max-width: 100%
|
56
|
+
width: auto
|
@@ -0,0 +1,26 @@
|
|
1
|
+
@import neat-helpers
|
2
|
+
|
3
|
+
// or ../neat/neat-helpers when not in Rails
|
4
|
+
|
5
|
+
// Neat Overrides
|
6
|
+
// $column: 90px
|
7
|
+
// $gutter: 30px
|
8
|
+
$grid-columns: 12
|
9
|
+
$max-width: em(1000)
|
10
|
+
|
11
|
+
// Neat Breakpoints
|
12
|
+
$small-screen: new-breakpoint(min-width em(540) 12)
|
13
|
+
$small-medium-screen: new-breakpoint(min-width em(600) 12)
|
14
|
+
$medium-screen: new-breakpoint(min-width em(760) 12)
|
15
|
+
$medium-large-screen: new-breakpoint(min-width em(840) 12)
|
16
|
+
$large-screen: new-breakpoint(min-width em(1000) 12)
|
17
|
+
$huge-screen: new-breakpoint(min-width em(1200) 12)
|
18
|
+
|
19
|
+
$medium-screen-up: new-breakpoint(min-width $medium-screen 4)
|
20
|
+
$large-screen-up: new-breakpoint(min-width $large-screen 8)
|
21
|
+
|
22
|
+
=omega-reset($nth)
|
23
|
+
&:nth-child(#{$nth})
|
24
|
+
margin-right: flex-gutter()
|
25
|
+
&:nth-child(#{$nth}+1)
|
26
|
+
clear: none
|
@@ -0,0 +1,23 @@
|
|
1
|
+
ul, ol
|
2
|
+
list-style-type: none
|
3
|
+
margin: 0 0 2em 0
|
4
|
+
padding: 0
|
5
|
+
&%default-ul
|
6
|
+
list-style-type: disc
|
7
|
+
margin-bottom: $small-spacing
|
8
|
+
padding-left: $base-spacing
|
9
|
+
&%default-ol
|
10
|
+
list-style-type: decimal
|
11
|
+
margin-bottom: $small-spacing
|
12
|
+
padding-left: $base-spacing
|
13
|
+
&.bulleted
|
14
|
+
list-style-type: disc
|
15
|
+
padding-left: 1.2em
|
16
|
+
|
17
|
+
dl
|
18
|
+
margin-bottom: $small-spacing
|
19
|
+
dt
|
20
|
+
font-weight: bold
|
21
|
+
margin-top: $small-spacing
|
22
|
+
dd
|
23
|
+
margin: 0
|
@@ -0,0 +1,40 @@
|
|
1
|
+
// Styleguide helpers
|
2
|
+
|
3
|
+
.palette
|
4
|
+
+clearfix
|
5
|
+
margin-bottom: 1em
|
6
|
+
.color
|
7
|
+
width: 120px
|
8
|
+
height: 60px
|
9
|
+
margin-right: 1em
|
10
|
+
float: left
|
11
|
+
padding: 0.5em
|
12
|
+
text-align: center
|
13
|
+
&.base-accent-color
|
14
|
+
background-color: $base-accent-color
|
15
|
+
&.tint-half
|
16
|
+
background-color: tint($base-accent-color,50)
|
17
|
+
&.tint-quarter
|
18
|
+
background-color: tint($base-accent-color,75)
|
19
|
+
&.tint-tenth
|
20
|
+
background-color: tint($base-accent-color,90)
|
21
|
+
&.shade-half
|
22
|
+
background-color: shade($base-accent-color,50)
|
23
|
+
color: #fff
|
24
|
+
&.shade-quarter
|
25
|
+
background-color: shade($base-accent-color,75)
|
26
|
+
color: #fff
|
27
|
+
&.shade-tenth
|
28
|
+
background-color: shade($base-accent-color,90)
|
29
|
+
color: #fff
|
30
|
+
|
31
|
+
&.color-1
|
32
|
+
background-color: $color-1
|
33
|
+
&.color-2
|
34
|
+
background-color: $color-2
|
35
|
+
&.color-3
|
36
|
+
background-color: $color-3
|
37
|
+
&.color-4
|
38
|
+
background-color: $color-4
|
39
|
+
&.color-5
|
40
|
+
background-color: $color-5
|
@@ -0,0 +1,19 @@
|
|
1
|
+
table
|
2
|
+
+font-feature-settings("kern", "liga", "tnum")
|
3
|
+
border-collapse: collapse
|
4
|
+
margin: $small-spacing 0
|
5
|
+
table-layout: fixed
|
6
|
+
width: 100%
|
7
|
+
|
8
|
+
th
|
9
|
+
border-bottom: 1px solid darken($base-border-color, 15%)
|
10
|
+
font-weight: 600
|
11
|
+
padding: $small-spacing 0
|
12
|
+
text-align: left
|
13
|
+
|
14
|
+
td
|
15
|
+
border-bottom: $base-border
|
16
|
+
padding: $small-spacing 0
|
17
|
+
|
18
|
+
tr, td, th
|
19
|
+
vertical-align: middle
|
@@ -0,0 +1,57 @@
|
|
1
|
+
body
|
2
|
+
+font-feature-settings("kern", "liga", "pnum")
|
3
|
+
-webkit-font-smoothing: antialiased
|
4
|
+
color: $base-font-color
|
5
|
+
font-family: $base-font-family
|
6
|
+
font-size: $base-font-size
|
7
|
+
line-height: $base-line-height
|
8
|
+
|
9
|
+
h1, h2, h3, h4, h5, h6
|
10
|
+
font-family: $heading-font-family
|
11
|
+
font-size: $base-font-size
|
12
|
+
line-height: $heading-line-height
|
13
|
+
margin: 0 0 $small-spacing
|
14
|
+
|
15
|
+
h1
|
16
|
+
font-size: modular-scale(4)
|
17
|
+
|
18
|
+
h2
|
19
|
+
font-size: modular-scale(3)
|
20
|
+
|
21
|
+
h3
|
22
|
+
font-size: modular-scale(2)
|
23
|
+
|
24
|
+
h4
|
25
|
+
font-size: modular-scale(1)
|
26
|
+
|
27
|
+
h5
|
28
|
+
font-size: modular-scale(0)
|
29
|
+
|
30
|
+
h6
|
31
|
+
font-size: modular-scale(0)
|
32
|
+
|
33
|
+
p
|
34
|
+
margin: 0 0 $small-spacing
|
35
|
+
|
36
|
+
a
|
37
|
+
color: $action-color
|
38
|
+
text-decoration: none
|
39
|
+
transition: color 0.1s linear
|
40
|
+
&:active,
|
41
|
+
&:focus,
|
42
|
+
&:hover
|
43
|
+
color: darken($action-color, 15%)
|
44
|
+
&:active,
|
45
|
+
&:focus
|
46
|
+
outline: none
|
47
|
+
|
48
|
+
hr
|
49
|
+
border-bottom: $base-border
|
50
|
+
border-left: none
|
51
|
+
border-right: none
|
52
|
+
border-top: none
|
53
|
+
margin: $base-spacing 0
|
54
|
+
|
55
|
+
img, picture
|
56
|
+
margin: 0
|
57
|
+
max-width: 100%
|
@@ -0,0 +1,55 @@
|
|
1
|
+
// Typography
|
2
|
+
$base-font-family: $helvetica
|
3
|
+
$heading-font-family: $base-font-family
|
4
|
+
|
5
|
+
// Font Sizes
|
6
|
+
$base-font-size: em(16)
|
7
|
+
$modular-scale-ratio: 1.333
|
8
|
+
$modular-scale-base: $base-font-size
|
9
|
+
|
10
|
+
// Line height
|
11
|
+
$base-line-height: 1.5
|
12
|
+
$heading-line-height: 1.2
|
13
|
+
|
14
|
+
// Other Sizes
|
15
|
+
$base-border-radius: 3px
|
16
|
+
$base-spacing: $base-line-height * 1em
|
17
|
+
$small-spacing: $base-spacing / 2
|
18
|
+
$base-z-index: 0
|
19
|
+
|
20
|
+
// Colors
|
21
|
+
$blue: #0277BD
|
22
|
+
$dark-gray: #333
|
23
|
+
$medium-gray: #999
|
24
|
+
$light-gray: #ddd
|
25
|
+
$red: #EE605D
|
26
|
+
|
27
|
+
// Palette
|
28
|
+
|
29
|
+
$number-of-colors: 5
|
30
|
+
$palette-span: 360deg // portion of color wheel taken into consideration
|
31
|
+
$saturation-increment: 10% // between 1 and 25
|
32
|
+
|
33
|
+
$base-accent-color: $blue
|
34
|
+
|
35
|
+
$color-1: $base-accent-color
|
36
|
+
$color-2: desaturate( adjust-hue($base-accent-color, ($palette-span / $number-of-colors) * 1), $saturation-increment * 1 )
|
37
|
+
$color-3: desaturate( adjust-hue($base-accent-color, ($palette-span / $number-of-colors) * 2), $saturation-increment * 2 )
|
38
|
+
$color-4: desaturate( adjust-hue($base-accent-color, ($palette-span / $number-of-colors) * 3), $saturation-increment * 3 )
|
39
|
+
$color-5: desaturate( adjust-hue($base-accent-color, ($palette-span / $number-of-colors) * 4), $saturation-increment * 4 )
|
40
|
+
|
41
|
+
// Font Colors
|
42
|
+
$base-background-color: #fff
|
43
|
+
$base-font-color: $dark-gray
|
44
|
+
$action-color: $base-accent-color
|
45
|
+
|
46
|
+
// Actions/Semantics
|
47
|
+
$destructive: $red
|
48
|
+
|
49
|
+
// Border
|
50
|
+
$base-border-color: $light-gray
|
51
|
+
$base-border: 1px solid $base-border-color
|
52
|
+
|
53
|
+
// Forms
|
54
|
+
$form-box-shadow: inset 0 1px 3px rgba(#000, 0.06)
|
55
|
+
$form-box-shadow-focus: $form-box-shadow, 0 0 5px adjust-color($action-color, $lightness: -5%, $alpha: -0.3)
|
data/bin/startmeup
ADDED
data/lib/startmeup.rb
ADDED
@@ -0,0 +1,80 @@
|
|
1
|
+
require 'startmeup/version'
|
2
|
+
require 'fileutils'
|
3
|
+
require 'pathname'
|
4
|
+
require 'thor'
|
5
|
+
|
6
|
+
module StartMeUp
|
7
|
+
class Generator < Thor
|
8
|
+
map ['-v', '--version'] => :version
|
9
|
+
map ['scaffold'] => :install
|
10
|
+
map ['delete'] => :remove
|
11
|
+
|
12
|
+
desc 'install', 'Install StartMeUp into your project'
|
13
|
+
method_options path: :string
|
14
|
+
def install
|
15
|
+
if startmeup_files_already_exist?
|
16
|
+
puts "StartMeUp files already installed, doing nothing."
|
17
|
+
else
|
18
|
+
install_files
|
19
|
+
puts "StartMeUp files installed to #{install_path}/base"
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
desc 'reset', 'Reset StartMeUp'
|
24
|
+
def reset
|
25
|
+
if startmeup_files_already_exist?
|
26
|
+
remove_startmeup_directory
|
27
|
+
install_files
|
28
|
+
puts "StartMeUp files updated."
|
29
|
+
else
|
30
|
+
puts "No existing StartMeUp installation. Doing nothing."
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
desc 'remove', 'Remove StartMeUp'
|
35
|
+
def remove
|
36
|
+
if startmeup_files_already_exist?
|
37
|
+
remove_startmeup_directory
|
38
|
+
puts "StartMeUp was successfully removed."
|
39
|
+
else
|
40
|
+
puts "No existing StartMeUp installation. Doing nothing."
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
desc 'version', 'Show StartMeUp version'
|
45
|
+
def version
|
46
|
+
say "StartMeUp #{StartMeUp::VERSION}"
|
47
|
+
end
|
48
|
+
|
49
|
+
private
|
50
|
+
|
51
|
+
def startmeup_files_already_exist?
|
52
|
+
File.directory?(install_path)
|
53
|
+
end
|
54
|
+
|
55
|
+
def install_path
|
56
|
+
Pathname.new(options[:path].to_s).join('base')
|
57
|
+
end
|
58
|
+
|
59
|
+
def install_files
|
60
|
+
FileUtils.mkdir_p(install_path)
|
61
|
+
FileUtils.cp_r(all_stylesheets, install_path)
|
62
|
+
end
|
63
|
+
|
64
|
+
def remove_startmeup_directory
|
65
|
+
FileUtils.rm_rf("base")
|
66
|
+
end
|
67
|
+
|
68
|
+
def all_stylesheets
|
69
|
+
Dir["#{stylesheets_directory}/*"]
|
70
|
+
end
|
71
|
+
|
72
|
+
def stylesheets_directory
|
73
|
+
File.join(top_level_directory, "app", "assets", "stylesheets")
|
74
|
+
end
|
75
|
+
|
76
|
+
def top_level_directory
|
77
|
+
File.dirname(File.dirname(File.dirname(__FILE__)))
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
data/sache.json
ADDED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'sass'
|
3
|
+
require 'bourbon'
|
4
|
+
|
5
|
+
describe StartMeUp do
|
6
|
+
after do
|
7
|
+
`rm -rf spec/fixtures/base`
|
8
|
+
end
|
9
|
+
|
10
|
+
it 'compiles to valid css' do
|
11
|
+
`startmeup install --path spec/fixtures`
|
12
|
+
|
13
|
+
Sass.compile_file('spec/fixtures/application.sass', '/tmp/output.css')
|
14
|
+
|
15
|
+
expect(Pathname('/tmp/output.css')).to exist
|
16
|
+
end
|
17
|
+
end
|
data/startmeup.gemspec
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'startmeup/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = 'startmeup'
|
8
|
+
s.version = StartMeUp::VERSION
|
9
|
+
s.authors = ['Gaz Aston']
|
10
|
+
s.email = 'gaz@gaz.is'
|
11
|
+
s.homepage = 'http://gaz.is'
|
12
|
+
s.license = 'MIT'
|
13
|
+
s.summary = 'Scaffold styles, variables and structure for Bourbon projects, pretty much stolen verbatim from Thoughtbot Bitters'
|
14
|
+
s.description = <<-DESC
|
15
|
+
StartMeUp helps designers start projects faster by defining a basic set of Sass
|
16
|
+
variables, default element style and project structure. It’s been specifically
|
17
|
+
designed for use within web applications. StartMeUp should live in your project’s
|
18
|
+
root Sass directory and we encourage you to modify and extend it to meet your
|
19
|
+
design and brand requirements.
|
20
|
+
DESC
|
21
|
+
s.files = `git ls-files`.split($/)
|
22
|
+
s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
23
|
+
s.test_files = s.files.grep(%r{^(test|spec|features)/})
|
24
|
+
s.require_paths = ['lib']
|
25
|
+
|
26
|
+
s.add_development_dependency 'bundler', '~> 1.3'
|
27
|
+
s.add_development_dependency 'rake'
|
28
|
+
s.add_development_dependency 'rspec'
|
29
|
+
|
30
|
+
s.add_dependency 'bourbon', '>= 3.2'
|
31
|
+
s.add_dependency 'sass', '>= 3.2'
|
32
|
+
s.add_dependency 'thor'
|
33
|
+
end
|
metadata
ADDED
@@ -0,0 +1,162 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: startmeup
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.2
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Gaz Aston
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-02-05 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.3'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: bourbon
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '3.2'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '3.2'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: sass
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '3.2'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '3.2'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: thor
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
description: |
|
98
|
+
StartMeUp helps designers start projects faster by defining a basic set of Sass
|
99
|
+
variables, default element style and project structure. It’s been specifically
|
100
|
+
designed for use within web applications. StartMeUp should live in your project’s
|
101
|
+
root Sass directory and we encourage you to modify and extend it to meet your
|
102
|
+
design and brand requirements.
|
103
|
+
email: gaz@gaz.is
|
104
|
+
executables:
|
105
|
+
- startmeup
|
106
|
+
extensions: []
|
107
|
+
extra_rdoc_files: []
|
108
|
+
files:
|
109
|
+
- ".gitignore"
|
110
|
+
- Gemfile
|
111
|
+
- LICENSE.md
|
112
|
+
- README.md
|
113
|
+
- Rakefile
|
114
|
+
- app/assets/stylesheets/_base.sass
|
115
|
+
- app/assets/stylesheets/_buttons.sass
|
116
|
+
- app/assets/stylesheets/_flash.sass
|
117
|
+
- app/assets/stylesheets/_forms.sass
|
118
|
+
- app/assets/stylesheets/_grid-settings.sass
|
119
|
+
- app/assets/stylesheets/_lists.sass
|
120
|
+
- app/assets/stylesheets/_panel.sass
|
121
|
+
- app/assets/stylesheets/_styleguide.sass
|
122
|
+
- app/assets/stylesheets/_tables.sass
|
123
|
+
- app/assets/stylesheets/_typography.sass
|
124
|
+
- app/assets/stylesheets/_variables.sass
|
125
|
+
- bin/startmeup
|
126
|
+
- lib/startmeup.rb
|
127
|
+
- lib/startmeup/generator.rb
|
128
|
+
- lib/startmeup/version.rb
|
129
|
+
- sache.json
|
130
|
+
- spec/fixtures/application.sass
|
131
|
+
- spec/spec_helper.rb
|
132
|
+
- spec/startmeup_spec.rb
|
133
|
+
- startmeup.gemspec
|
134
|
+
homepage: http://gaz.is
|
135
|
+
licenses:
|
136
|
+
- MIT
|
137
|
+
metadata: {}
|
138
|
+
post_install_message:
|
139
|
+
rdoc_options: []
|
140
|
+
require_paths:
|
141
|
+
- lib
|
142
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - ">="
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: '0'
|
147
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
148
|
+
requirements:
|
149
|
+
- - ">="
|
150
|
+
- !ruby/object:Gem::Version
|
151
|
+
version: '0'
|
152
|
+
requirements: []
|
153
|
+
rubyforge_project:
|
154
|
+
rubygems_version: 2.2.2
|
155
|
+
signing_key:
|
156
|
+
specification_version: 4
|
157
|
+
summary: Scaffold styles, variables and structure for Bourbon projects, pretty much
|
158
|
+
stolen verbatim from Thoughtbot Bitters
|
159
|
+
test_files:
|
160
|
+
- spec/fixtures/application.sass
|
161
|
+
- spec/spec_helper.rb
|
162
|
+
- spec/startmeup_spec.rb
|