octodmin 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (153) hide show
  1. checksums.yaml +7 -0
  2. data/.bowerrc +3 -0
  3. data/.gitignore +24 -0
  4. data/.rspec +2 -0
  5. data/.travis.yml +9 -0
  6. data/CHANGELOG.md +4 -0
  7. data/Gemfile +17 -0
  8. data/LICENSE.md +22 -0
  9. data/README.md +117 -0
  10. data/Rakefile +38 -0
  11. data/_config.yml +27 -0
  12. data/_deploy.yml +13 -0
  13. data/app/.DS_Store +0 -0
  14. data/app/assets/.DS_Store +0 -0
  15. data/app/assets/javascripts/.DS_Store +0 -0
  16. data/app/assets/javascripts/app.js.coffee +13 -0
  17. data/app/assets/javascripts/components/header.js.cjsx +69 -0
  18. data/app/assets/javascripts/components/posts.js.cjsx +309 -0
  19. data/app/assets/javascripts/components/router.js.cjsx +56 -0
  20. data/app/assets/stylesheets/.DS_Store +0 -0
  21. data/app/assets/stylesheets/app.scss +75 -0
  22. data/app/config/environment.rb +7 -0
  23. data/app/config/routes.rb +19 -0
  24. data/app/config/sprockets.rb +36 -0
  25. data/app/controllers/deploys/create.rb +20 -0
  26. data/app/controllers/frontend/index.rb +8 -0
  27. data/app/controllers/posts/create.rb +18 -0
  28. data/app/controllers/posts/destroy.rb +14 -0
  29. data/app/controllers/posts/index.rb +13 -0
  30. data/app/controllers/posts/restore.rb +14 -0
  31. data/app/controllers/posts/revert.rb +14 -0
  32. data/app/controllers/posts/show.rb +13 -0
  33. data/app/controllers/posts/update.rb +23 -0
  34. data/app/controllers/site/show.rb +12 -0
  35. data/app/controllers/syncs/create.rb +62 -0
  36. data/app/controllers/version/show.rb +12 -0
  37. data/app/octodmin.rb +56 -0
  38. data/app/public/.DS_Store +0 -0
  39. data/app/public/assets/app.css +7960 -0
  40. data/app/public/assets/app.css.gz +7960 -0
  41. data/app/public/assets/app.js +39181 -0
  42. data/app/public/assets/app.js.gz +39181 -0
  43. data/app/public/assets/bootstrap/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  44. data/app/public/assets/bootstrap/dist/fonts/glyphicons-halflings-regular.eot.gz +0 -0
  45. data/app/public/assets/bootstrap/dist/fonts/glyphicons-halflings-regular.svg +288 -0
  46. data/app/public/assets/bootstrap/dist/fonts/glyphicons-halflings-regular.svg.gz +288 -0
  47. data/app/public/assets/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  48. data/app/public/assets/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf.gz +0 -0
  49. data/app/public/assets/bootstrap/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  50. data/app/public/assets/bootstrap/dist/fonts/glyphicons-halflings-regular.woff.gz +0 -0
  51. data/app/public/assets/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
  52. data/app/public/assets/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2.gz +0 -0
  53. data/app/public/assets/bootstrap/fonts/glyphicons-halflings-regular.eot +0 -0
  54. data/app/public/assets/bootstrap/fonts/glyphicons-halflings-regular.eot.gz +0 -0
  55. data/app/public/assets/bootstrap/fonts/glyphicons-halflings-regular.svg +288 -0
  56. data/app/public/assets/bootstrap/fonts/glyphicons-halflings-regular.svg.gz +288 -0
  57. data/app/public/assets/bootstrap/fonts/glyphicons-halflings-regular.ttf +0 -0
  58. data/app/public/assets/bootstrap/fonts/glyphicons-halflings-regular.ttf.gz +0 -0
  59. data/app/public/assets/bootstrap/fonts/glyphicons-halflings-regular.woff +0 -0
  60. data/app/public/assets/bootstrap/fonts/glyphicons-halflings-regular.woff.gz +0 -0
  61. data/app/public/assets/bootstrap/fonts/glyphicons-halflings-regular.woff2 +0 -0
  62. data/app/public/assets/bootstrap/fonts/glyphicons-halflings-regular.woff2.gz +0 -0
  63. data/app/public/assets/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.eot +0 -0
  64. data/app/public/assets/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.eot.gz +0 -0
  65. data/app/public/assets/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.svg +288 -0
  66. data/app/public/assets/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.svg.gz +288 -0
  67. data/app/public/assets/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf +0 -0
  68. data/app/public/assets/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf.gz +0 -0
  69. data/app/public/assets/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.woff +0 -0
  70. data/app/public/assets/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.woff.gz +0 -0
  71. data/app/public/assets/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2 +0 -0
  72. data/app/public/assets/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2.gz +0 -0
  73. data/app/public/assets/bootswatch/fonts/glyphicons-halflings-regular.eot +0 -0
  74. data/app/public/assets/bootswatch/fonts/glyphicons-halflings-regular.eot.gz +0 -0
  75. data/app/public/assets/bootswatch/fonts/glyphicons-halflings-regular.svg +288 -0
  76. data/app/public/assets/bootswatch/fonts/glyphicons-halflings-regular.svg.gz +288 -0
  77. data/app/public/assets/bootswatch/fonts/glyphicons-halflings-regular.ttf +0 -0
  78. data/app/public/assets/bootswatch/fonts/glyphicons-halflings-regular.ttf.gz +0 -0
  79. data/app/public/assets/bootswatch/fonts/glyphicons-halflings-regular.woff +0 -0
  80. data/app/public/assets/bootswatch/fonts/glyphicons-halflings-regular.woff.gz +0 -0
  81. data/app/public/assets/bootswatch/fonts/glyphicons-halflings-regular.woff2 +0 -0
  82. data/app/public/assets/bootswatch/fonts/glyphicons-halflings-regular.woff2.gz +0 -0
  83. data/app/public/assets/bootswatch-dist/fonts/glyphicons-halflings-regular.eot +0 -0
  84. data/app/public/assets/bootswatch-dist/fonts/glyphicons-halflings-regular.eot.gz +0 -0
  85. data/app/public/assets/bootswatch-dist/fonts/glyphicons-halflings-regular.svg +229 -0
  86. data/app/public/assets/bootswatch-dist/fonts/glyphicons-halflings-regular.svg.gz +229 -0
  87. data/app/public/assets/bootswatch-dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  88. data/app/public/assets/bootswatch-dist/fonts/glyphicons-halflings-regular.ttf.gz +0 -0
  89. data/app/public/assets/bootswatch-dist/fonts/glyphicons-halflings-regular.woff +0 -0
  90. data/app/public/assets/bootswatch-dist/fonts/glyphicons-halflings-regular.woff.gz +0 -0
  91. data/app/public/assets/fontawesome/fonts/fontawesome-webfont.eot +0 -0
  92. data/app/public/assets/fontawesome/fonts/fontawesome-webfont.eot.gz +0 -0
  93. data/app/public/assets/fontawesome/fonts/fontawesome-webfont.svg +565 -0
  94. data/app/public/assets/fontawesome/fonts/fontawesome-webfont.svg.gz +565 -0
  95. data/app/public/assets/fontawesome/fonts/fontawesome-webfont.ttf +0 -0
  96. data/app/public/assets/fontawesome/fonts/fontawesome-webfont.ttf.gz +0 -0
  97. data/app/public/assets/fontawesome/fonts/fontawesome-webfont.woff +0 -0
  98. data/app/public/assets/fontawesome/fonts/fontawesome-webfont.woff.gz +0 -0
  99. data/app/public/assets/fontawesome/fonts/fontawesome-webfont.woff2 +0 -0
  100. data/app/public/assets/fontawesome/fonts/fontawesome-webfont.woff2.gz +0 -0
  101. data/app/public/assets/manifest.json +1 -0
  102. data/app/templates/application.html.erb +13 -0
  103. data/app/templates/frontend/index.html.erb +1 -0
  104. data/app/views/application_layout.rb +5 -0
  105. data/app/views/deploys/create.rb +10 -0
  106. data/app/views/frontend/index.rb +5 -0
  107. data/app/views/posts/create.rb +10 -0
  108. data/app/views/posts/destroy.rb +10 -0
  109. data/app/views/posts/index.rb +10 -0
  110. data/app/views/posts/restore.rb +10 -0
  111. data/app/views/posts/revert.rb +10 -0
  112. data/app/views/posts/show.rb +10 -0
  113. data/app/views/posts/update.rb +10 -0
  114. data/app/views/site/show.rb +10 -0
  115. data/app/views/syncs/create.rb +10 -0
  116. data/app/views/version/show.rb +10 -0
  117. data/bower.json +16 -0
  118. data/config.ru +5 -0
  119. data/lib/octodmin/app.rb +2 -0
  120. data/lib/octodmin/post.rb +161 -0
  121. data/lib/octodmin/site.rb +61 -0
  122. data/lib/octodmin/version.rb +3 -0
  123. data/lib/octodmin.rb +7 -0
  124. data/octodmin.gemspec +24 -0
  125. data/sample/.gitignore +2 -0
  126. data/sample/_includes/footer.html +55 -0
  127. data/sample/_includes/head.html +12 -0
  128. data/sample/_includes/header.html +27 -0
  129. data/sample/_layouts/default.html +20 -0
  130. data/sample/_layouts/page.html +14 -0
  131. data/sample/_layouts/post.html +15 -0
  132. data/sample/_posts/2015-01-29-welcome-to-jekyll.markdown +25 -0
  133. data/sample/_posts/2015-01-30-test.markdown +10 -0
  134. data/sample/_sass/_base.scss +204 -0
  135. data/sample/_sass/_layout.scss +236 -0
  136. data/sample/_sass/_syntax-highlighting.scss +67 -0
  137. data/sample/_templates/draft +4 -0
  138. data/sample/_templates/page +4 -0
  139. data/sample/_templates/post +8 -0
  140. data/sample/about.md +11 -0
  141. data/sample/css/main.scss +52 -0
  142. data/sample/feed.xml +30 -0
  143. data/sample/index.html +23 -0
  144. data/spec/api/deploys_spec.rb +36 -0
  145. data/spec/api/posts_spec.rb +411 -0
  146. data/spec/api/site_spec.rb +18 -0
  147. data/spec/api/syncs_spec.rb +81 -0
  148. data/spec/api/version_spec.rb +14 -0
  149. data/spec/frontend/assets_spec.rb +23 -0
  150. data/spec/frontend/home_spec.rb +16 -0
  151. data/spec/spec_helper.rb +31 -0
  152. data/tmp/.keep +0 -0
  153. metadata +259 -0
@@ -0,0 +1,15 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ <div class="post">
5
+
6
+ <header class="post-header">
7
+ <h1 class="post-title">{{ page.title }}</h1>
8
+ <p class="post-meta">{{ page.date | date: "%b %-d, %Y" }}{% if page.author %} • {{ page.author }}{% endif %}{% if page.meta %} • {{ page.meta }}{% endif %}</p>
9
+ </header>
10
+
11
+ <article class="post-content">
12
+ {{ content }}
13
+ </article>
14
+
15
+ </div>
@@ -0,0 +1,25 @@
1
+ ---
2
+ layout: post
3
+ title: "Welcome to Jekyll!"
4
+ date: 2015-01-29 18:00:17
5
+ categories: jekyll update
6
+ ---
7
+ You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated.
8
+
9
+ To add new posts, simply add a file in the `_posts` directory that follows the convention `YYYY-MM-DD-name-of-post.ext` and includes the necessary front matter. Take a look at the source for this post to get an idea about how it works.
10
+
11
+ Jekyll also offers powerful support for code snippets:
12
+
13
+ {% highlight ruby %}
14
+ def print_hi(name)
15
+ puts "Hi, #{name}"
16
+ end
17
+ print_hi('Tom')
18
+ #=> prints 'Hi, Tom' to STDOUT.
19
+ {% endhighlight %}
20
+
21
+ Check out the [Jekyll docs][jekyll] for more info on how to get the most out of Jekyll. File all bugs/feature requests at [Jekyll’s GitHub repo][jekyll-gh]. If you have questions, you can ask them on [Jekyll’s dedicated Help repository][jekyll-help].
22
+
23
+ [jekyll]: http://jekyllrb.com
24
+ [jekyll-gh]: https://github.com/jekyll/jekyll
25
+ [jekyll-help]: https://github.com/jekyll/jekyll-help
@@ -0,0 +1,10 @@
1
+ ---
2
+ layout: post
3
+ title: "Test"
4
+ date: 2015-01-30 18:10:00
5
+ custom: data
6
+ ---
7
+
8
+ # OMG
9
+
10
+ This is a *post*!
@@ -0,0 +1,204 @@
1
+ /**
2
+ * Reset some basic elements
3
+ */
4
+ body, h1, h2, h3, h4, h5, h6,
5
+ p, blockquote, pre, hr,
6
+ dl, dd, ol, ul, figure {
7
+ margin: 0;
8
+ padding: 0;
9
+ }
10
+
11
+
12
+
13
+ /**
14
+ * Basic styling
15
+ */
16
+ body {
17
+ font-family: $base-font-family;
18
+ font-size: $base-font-size;
19
+ line-height: $base-line-height;
20
+ font-weight: 300;
21
+ color: $text-color;
22
+ background-color: $background-color;
23
+ -webkit-text-size-adjust: 100%;
24
+ }
25
+
26
+
27
+
28
+ /**
29
+ * Set `margin-bottom` to maintain vertical rhythm
30
+ */
31
+ h1, h2, h3, h4, h5, h6,
32
+ p, blockquote, pre,
33
+ ul, ol, dl, figure,
34
+ %vertical-rhythm {
35
+ margin-bottom: $spacing-unit / 2;
36
+ }
37
+
38
+
39
+
40
+ /**
41
+ * Images
42
+ */
43
+ img {
44
+ max-width: 100%;
45
+ vertical-align: middle;
46
+ }
47
+
48
+
49
+
50
+ /**
51
+ * Figures
52
+ */
53
+ figure > img {
54
+ display: block;
55
+ }
56
+
57
+ figcaption {
58
+ font-size: $small-font-size;
59
+ }
60
+
61
+
62
+
63
+ /**
64
+ * Lists
65
+ */
66
+ ul, ol {
67
+ margin-left: $spacing-unit;
68
+ }
69
+
70
+ li {
71
+ > ul,
72
+ > ol {
73
+ margin-bottom: 0;
74
+ }
75
+ }
76
+
77
+
78
+
79
+ /**
80
+ * Headings
81
+ */
82
+ h1, h2, h3, h4, h5, h6 {
83
+ font-weight: 300;
84
+ }
85
+
86
+
87
+
88
+ /**
89
+ * Links
90
+ */
91
+ a {
92
+ color: $brand-color;
93
+ text-decoration: none;
94
+
95
+ &:visited {
96
+ color: darken($brand-color, 15%);
97
+ }
98
+
99
+ &:hover {
100
+ color: $text-color;
101
+ text-decoration: underline;
102
+ }
103
+ }
104
+
105
+
106
+
107
+ /**
108
+ * Blockquotes
109
+ */
110
+ blockquote {
111
+ color: $grey-color;
112
+ border-left: 4px solid $grey-color-light;
113
+ padding-left: $spacing-unit / 2;
114
+ font-size: 18px;
115
+ letter-spacing: -1px;
116
+ font-style: italic;
117
+
118
+ > :last-child {
119
+ margin-bottom: 0;
120
+ }
121
+ }
122
+
123
+
124
+
125
+ /**
126
+ * Code formatting
127
+ */
128
+ pre,
129
+ code {
130
+ font-size: 15px;
131
+ border: 1px solid $grey-color-light;
132
+ border-radius: 3px;
133
+ background-color: #eef;
134
+ }
135
+
136
+ code {
137
+ padding: 1px 5px;
138
+ }
139
+
140
+ pre {
141
+ padding: 8px 12px;
142
+ overflow-x: scroll;
143
+
144
+ > code {
145
+ border: 0;
146
+ padding-right: 0;
147
+ padding-left: 0;
148
+ }
149
+ }
150
+
151
+
152
+
153
+ /**
154
+ * Wrapper
155
+ */
156
+ .wrapper {
157
+ max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit} * 2));
158
+ max-width: calc(#{$content-width} - (#{$spacing-unit} * 2));
159
+ margin-right: auto;
160
+ margin-left: auto;
161
+ padding-right: $spacing-unit;
162
+ padding-left: $spacing-unit;
163
+ @extend %clearfix;
164
+
165
+ @include media-query($on-laptop) {
166
+ max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit}));
167
+ max-width: calc(#{$content-width} - (#{$spacing-unit}));
168
+ padding-right: $spacing-unit / 2;
169
+ padding-left: $spacing-unit / 2;
170
+ }
171
+ }
172
+
173
+
174
+
175
+ /**
176
+ * Clearfix
177
+ */
178
+ %clearfix {
179
+
180
+ &:after {
181
+ content: "";
182
+ display: table;
183
+ clear: both;
184
+ }
185
+ }
186
+
187
+
188
+
189
+ /**
190
+ * Icons
191
+ */
192
+ .icon {
193
+
194
+ > svg {
195
+ display: inline-block;
196
+ width: 16px;
197
+ height: 16px;
198
+ vertical-align: middle;
199
+
200
+ path {
201
+ fill: $grey-color;
202
+ }
203
+ }
204
+ }
@@ -0,0 +1,236 @@
1
+ /**
2
+ * Site header
3
+ */
4
+ .site-header {
5
+ border-top: 5px solid $grey-color-dark;
6
+ border-bottom: 1px solid $grey-color-light;
7
+ min-height: 56px;
8
+
9
+ // Positioning context for the mobile navigation icon
10
+ position: relative;
11
+ }
12
+
13
+ .site-title {
14
+ font-size: 26px;
15
+ line-height: 56px;
16
+ letter-spacing: -1px;
17
+ margin-bottom: 0;
18
+ float: left;
19
+
20
+ &,
21
+ &:visited {
22
+ color: $grey-color-dark;
23
+ }
24
+ }
25
+
26
+ .site-nav {
27
+ float: right;
28
+ line-height: 56px;
29
+
30
+ .menu-icon {
31
+ display: none;
32
+ }
33
+
34
+ .page-link {
35
+ color: $text-color;
36
+ line-height: $base-line-height;
37
+
38
+ // Gaps between nav items, but not on the first one
39
+ &:not(:first-child) {
40
+ margin-left: 20px;
41
+ }
42
+ }
43
+
44
+ @include media-query($on-palm) {
45
+ position: absolute;
46
+ top: 9px;
47
+ right: 30px;
48
+ background-color: $background-color;
49
+ border: 1px solid $grey-color-light;
50
+ border-radius: 5px;
51
+ text-align: right;
52
+
53
+ .menu-icon {
54
+ display: block;
55
+ float: right;
56
+ width: 36px;
57
+ height: 26px;
58
+ line-height: 0;
59
+ padding-top: 10px;
60
+ text-align: center;
61
+
62
+ > svg {
63
+ width: 18px;
64
+ height: 15px;
65
+
66
+ path {
67
+ fill: $grey-color-dark;
68
+ }
69
+ }
70
+ }
71
+
72
+ .trigger {
73
+ clear: both;
74
+ display: none;
75
+ }
76
+
77
+ &:hover .trigger {
78
+ display: block;
79
+ padding-bottom: 5px;
80
+ }
81
+
82
+ .page-link {
83
+ display: block;
84
+ padding: 5px 10px;
85
+ }
86
+ }
87
+ }
88
+
89
+
90
+
91
+ /**
92
+ * Site footer
93
+ */
94
+ .site-footer {
95
+ border-top: 1px solid $grey-color-light;
96
+ padding: $spacing-unit 0;
97
+ }
98
+
99
+ .footer-heading {
100
+ font-size: 18px;
101
+ margin-bottom: $spacing-unit / 2;
102
+ }
103
+
104
+ .contact-list,
105
+ .social-media-list {
106
+ list-style: none;
107
+ margin-left: 0;
108
+ }
109
+
110
+ .footer-col-wrapper {
111
+ font-size: 15px;
112
+ color: $grey-color;
113
+ margin-left: -$spacing-unit / 2;
114
+ @extend %clearfix;
115
+ }
116
+
117
+ .footer-col {
118
+ float: left;
119
+ margin-bottom: $spacing-unit / 2;
120
+ padding-left: $spacing-unit / 2;
121
+ }
122
+
123
+ .footer-col-1 {
124
+ width: -webkit-calc(35% - (#{$spacing-unit} / 2));
125
+ width: calc(35% - (#{$spacing-unit} / 2));
126
+ }
127
+
128
+ .footer-col-2 {
129
+ width: -webkit-calc(20% - (#{$spacing-unit} / 2));
130
+ width: calc(20% - (#{$spacing-unit} / 2));
131
+ }
132
+
133
+ .footer-col-3 {
134
+ width: -webkit-calc(45% - (#{$spacing-unit} / 2));
135
+ width: calc(45% - (#{$spacing-unit} / 2));
136
+ }
137
+
138
+ @include media-query($on-laptop) {
139
+ .footer-col-1,
140
+ .footer-col-2 {
141
+ width: -webkit-calc(50% - (#{$spacing-unit} / 2));
142
+ width: calc(50% - (#{$spacing-unit} / 2));
143
+ }
144
+
145
+ .footer-col-3 {
146
+ width: -webkit-calc(100% - (#{$spacing-unit} / 2));
147
+ width: calc(100% - (#{$spacing-unit} / 2));
148
+ }
149
+ }
150
+
151
+ @include media-query($on-palm) {
152
+ .footer-col {
153
+ float: none;
154
+ width: -webkit-calc(100% - (#{$spacing-unit} / 2));
155
+ width: calc(100% - (#{$spacing-unit} / 2));
156
+ }
157
+ }
158
+
159
+
160
+
161
+ /**
162
+ * Page content
163
+ */
164
+ .page-content {
165
+ padding: $spacing-unit 0;
166
+ }
167
+
168
+ .page-heading {
169
+ font-size: 20px;
170
+ }
171
+
172
+ .post-list {
173
+ margin-left: 0;
174
+ list-style: none;
175
+
176
+ > li {
177
+ margin-bottom: $spacing-unit;
178
+ }
179
+ }
180
+
181
+ .post-meta {
182
+ font-size: $small-font-size;
183
+ color: $grey-color;
184
+ }
185
+
186
+ .post-link {
187
+ display: block;
188
+ font-size: 24px;
189
+ }
190
+
191
+
192
+
193
+ /**
194
+ * Posts
195
+ */
196
+ .post-header {
197
+ margin-bottom: $spacing-unit;
198
+ }
199
+
200
+ .post-title {
201
+ font-size: 42px;
202
+ letter-spacing: -1px;
203
+ line-height: 1;
204
+
205
+ @include media-query($on-laptop) {
206
+ font-size: 36px;
207
+ }
208
+ }
209
+
210
+ .post-content {
211
+ margin-bottom: $spacing-unit;
212
+
213
+ h2 {
214
+ font-size: 32px;
215
+
216
+ @include media-query($on-laptop) {
217
+ font-size: 28px;
218
+ }
219
+ }
220
+
221
+ h3 {
222
+ font-size: 26px;
223
+
224
+ @include media-query($on-laptop) {
225
+ font-size: 22px;
226
+ }
227
+ }
228
+
229
+ h4 {
230
+ font-size: 20px;
231
+
232
+ @include media-query($on-laptop) {
233
+ font-size: 18px;
234
+ }
235
+ }
236
+ }
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Syntax highlighting styles
3
+ */
4
+ .highlight {
5
+ background: #fff;
6
+ @extend %vertical-rhythm;
7
+
8
+ .c { color: #998; font-style: italic } // Comment
9
+ .err { color: #a61717; background-color: #e3d2d2 } // Error
10
+ .k { font-weight: bold } // Keyword
11
+ .o { font-weight: bold } // Operator
12
+ .cm { color: #998; font-style: italic } // Comment.Multiline
13
+ .cp { color: #999; font-weight: bold } // Comment.Preproc
14
+ .c1 { color: #998; font-style: italic } // Comment.Single
15
+ .cs { color: #999; font-weight: bold; font-style: italic } // Comment.Special
16
+ .gd { color: #000; background-color: #fdd } // Generic.Deleted
17
+ .gd .x { color: #000; background-color: #faa } // Generic.Deleted.Specific
18
+ .ge { font-style: italic } // Generic.Emph
19
+ .gr { color: #a00 } // Generic.Error
20
+ .gh { color: #999 } // Generic.Heading
21
+ .gi { color: #000; background-color: #dfd } // Generic.Inserted
22
+ .gi .x { color: #000; background-color: #afa } // Generic.Inserted.Specific
23
+ .go { color: #888 } // Generic.Output
24
+ .gp { color: #555 } // Generic.Prompt
25
+ .gs { font-weight: bold } // Generic.Strong
26
+ .gu { color: #aaa } // Generic.Subheading
27
+ .gt { color: #a00 } // Generic.Traceback
28
+ .kc { font-weight: bold } // Keyword.Constant
29
+ .kd { font-weight: bold } // Keyword.Declaration
30
+ .kp { font-weight: bold } // Keyword.Pseudo
31
+ .kr { font-weight: bold } // Keyword.Reserved
32
+ .kt { color: #458; font-weight: bold } // Keyword.Type
33
+ .m { color: #099 } // Literal.Number
34
+ .s { color: #d14 } // Literal.String
35
+ .na { color: #008080 } // Name.Attribute
36
+ .nb { color: #0086B3 } // Name.Builtin
37
+ .nc { color: #458; font-weight: bold } // Name.Class
38
+ .no { color: #008080 } // Name.Constant
39
+ .ni { color: #800080 } // Name.Entity
40
+ .ne { color: #900; font-weight: bold } // Name.Exception
41
+ .nf { color: #900; font-weight: bold } // Name.Function
42
+ .nn { color: #555 } // Name.Namespace
43
+ .nt { color: #000080 } // Name.Tag
44
+ .nv { color: #008080 } // Name.Variable
45
+ .ow { font-weight: bold } // Operator.Word
46
+ .w { color: #bbb } // Text.Whitespace
47
+ .mf { color: #099 } // Literal.Number.Float
48
+ .mh { color: #099 } // Literal.Number.Hex
49
+ .mi { color: #099 } // Literal.Number.Integer
50
+ .mo { color: #099 } // Literal.Number.Oct
51
+ .sb { color: #d14 } // Literal.String.Backtick
52
+ .sc { color: #d14 } // Literal.String.Char
53
+ .sd { color: #d14 } // Literal.String.Doc
54
+ .s2 { color: #d14 } // Literal.String.Double
55
+ .se { color: #d14 } // Literal.String.Escape
56
+ .sh { color: #d14 } // Literal.String.Heredoc
57
+ .si { color: #d14 } // Literal.String.Interpol
58
+ .sx { color: #d14 } // Literal.String.Other
59
+ .sr { color: #009926 } // Literal.String.Regex
60
+ .s1 { color: #d14 } // Literal.String.Single
61
+ .ss { color: #990073 } // Literal.String.Symbol
62
+ .bp { color: #999 } // Name.Builtin.Pseudo
63
+ .vc { color: #008080 } // Name.Variable.Class
64
+ .vg { color: #008080 } // Name.Variable.Global
65
+ .vi { color: #008080 } // Name.Variable.Instance
66
+ .il { color: #099 } // Literal.Number.Integer.Long
67
+ }
@@ -0,0 +1,4 @@
1
+ ---
2
+ layout: {{ layout }}
3
+ title: {{ title }}
4
+ ---
@@ -0,0 +1,4 @@
1
+ ---
2
+ layout: {{ layout }}
3
+ title: {{ title }}
4
+ ---
@@ -0,0 +1,8 @@
1
+ ---
2
+ layout: {{ layout }}
3
+ title: {{ title }}
4
+ date: {{ date }}
5
+ custom: default
6
+ ---
7
+
8
+ New post from **template**
data/sample/about.md ADDED
@@ -0,0 +1,11 @@
1
+ ---
2
+ layout: page
3
+ title: About
4
+ permalink: /about/
5
+ ---
6
+
7
+ This is the base Jekyll theme. You can find out more info about customizing your Jekyll theme, as well as basic Jekyll usage documentation at [jekyllrb.com](http://jekyllrb.com/)
8
+
9
+ You can find the source code for the Jekyll new theme at: [github.com/jglovier/jekyll-new](https://github.com/jglovier/jekyll-new)
10
+
11
+ You can find the source code for Jekyll at [github.com/jekyll/jekyll](https://github.com/jekyll/jekyll)
@@ -0,0 +1,52 @@
1
+ ---
2
+ # Only the main Sass file needs front matter (the dashes are enough)
3
+ ---
4
+ @charset "utf-8";
5
+
6
+
7
+
8
+ // Our variables
9
+ $base-font-family: Helvetica, Arial, sans-serif;
10
+ $base-font-size: 16px;
11
+ $small-font-size: $base-font-size * 0.875;
12
+ $base-line-height: 1.5;
13
+
14
+ $spacing-unit: 30px;
15
+
16
+ $text-color: #111;
17
+ $background-color: #fdfdfd;
18
+ $brand-color: #2a7ae2;
19
+
20
+ $grey-color: #828282;
21
+ $grey-color-light: lighten($grey-color, 40%);
22
+ $grey-color-dark: darken($grey-color, 25%);
23
+
24
+ // Width of the content area
25
+ $content-width: 800px;
26
+
27
+ $on-palm: 600px;
28
+ $on-laptop: 800px;
29
+
30
+
31
+
32
+ // Using media queries with like this:
33
+ // @include media-query($on-palm) {
34
+ // .wrapper {
35
+ // padding-right: $spacing-unit / 2;
36
+ // padding-left: $spacing-unit / 2;
37
+ // }
38
+ // }
39
+ @mixin media-query($device) {
40
+ @media screen and (max-width: $device) {
41
+ @content;
42
+ }
43
+ }
44
+
45
+
46
+
47
+ // Import partials from `sass_dir` (defaults to `_sass`)
48
+ @import
49
+ "base",
50
+ "layout",
51
+ "syntax-highlighting"
52
+ ;
data/sample/feed.xml ADDED
@@ -0,0 +1,30 @@
1
+ ---
2
+ layout: null
3
+ ---
4
+ <?xml version="1.0" encoding="UTF-8"?>
5
+ <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
6
+ <channel>
7
+ <title>{{ site.title | xml_escape }}</title>
8
+ <description>{{ site.description | xml_escape }}</description>
9
+ <link>{{ site.url }}{{ site.baseurl }}/</link>
10
+ <atom:link href="{{ "/feed.xml" | prepend: site.baseurl | prepend: site.url }}" rel="self" type="application/rss+xml"/>
11
+ <pubDate>{{ site.time | date_to_rfc822 }}</pubDate>
12
+ <lastBuildDate>{{ site.time | date_to_rfc822 }}</lastBuildDate>
13
+ <generator>Jekyll v{{ jekyll.version }}</generator>
14
+ {% for post in site.posts limit:10 %}
15
+ <item>
16
+ <title>{{ post.title | xml_escape }}</title>
17
+ <description>{{ post.content | xml_escape }}</description>
18
+ <pubDate>{{ post.date | date_to_rfc822 }}</pubDate>
19
+ <link>{{ post.url | prepend: site.baseurl | prepend: site.url }}</link>
20
+ <guid isPermaLink="true">{{ post.url | prepend: site.baseurl | prepend: site.url }}</guid>
21
+ {% for tag in post.tags %}
22
+ <category>{{ tag | xml_escape }}</category>
23
+ {% endfor %}
24
+ {% for cat in post.categories %}
25
+ <category>{{ cat | xml_escape }}</category>
26
+ {% endfor %}
27
+ </item>
28
+ {% endfor %}
29
+ </channel>
30
+ </rss>
data/sample/index.html ADDED
@@ -0,0 +1,23 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <div class="home">
6
+
7
+ <h1 class="page-heading">Posts</h1>
8
+
9
+ <ul class="post-list">
10
+ {% for post in site.posts %}
11
+ <li>
12
+ <span class="post-meta">{{ post.date | date: "%b %-d, %Y" }}</span>
13
+
14
+ <h2>
15
+ <a class="post-link" href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a>
16
+ </h2>
17
+ </li>
18
+ {% endfor %}
19
+ </ul>
20
+
21
+ <p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | prepend: site.baseurl }}">via RSS</a></p>
22
+
23
+ </div>