jekflix 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +22 -0
  3. data/README.md +125 -0
  4. data/_includes/author.html +87 -0
  5. data/_includes/comments.html +30 -0
  6. data/_includes/date.html +4 -0
  7. data/_includes/extra-css.html +0 -0
  8. data/_includes/extra-js.html +0 -0
  9. data/_includes/footer.html +91 -0
  10. data/_includes/head.html +97 -0
  11. data/_includes/header.html +27 -0
  12. data/_includes/links.html +9 -0
  13. data/_includes/loader.html +31 -0
  14. data/_includes/logo.html +3 -0
  15. data/_includes/menu.html +6 -0
  16. data/_includes/minutes-to-read.html +9 -0
  17. data/_includes/modal.html +35 -0
  18. data/_includes/new-post-tag.html +6 -0
  19. data/_includes/pagination-home.html +14 -0
  20. data/_includes/pagination-post.html +21 -0
  21. data/_includes/progress-bar.html +8 -0
  22. data/_includes/read-icon.html +3 -0
  23. data/_includes/recommendation.html +30 -0
  24. data/_includes/search.html +7 -0
  25. data/_includes/share.html +11 -0
  26. data/_includes/stats.html +12 -0
  27. data/_includes/subscription.html +1 -0
  28. data/_includes/svg-icons.html +1 -0
  29. data/_includes/time-bar.html +8 -0
  30. data/_includes/toc.html +1 -0
  31. data/_layouts/404.html +18 -0
  32. data/_layouts/author.html +68 -0
  33. data/_layouts/category.html +71 -0
  34. data/_layouts/compress.html +8 -0
  35. data/_layouts/contact.html +94 -0
  36. data/_layouts/default.html +17 -0
  37. data/_layouts/home.html +187 -0
  38. data/_layouts/main.html +28 -0
  39. data/_layouts/message-sent.html +18 -0
  40. data/_layouts/minimal.html +18 -0
  41. data/_layouts/page.html +11 -0
  42. data/_layouts/post.html +154 -0
  43. data/_layouts/search.html +15 -0
  44. data/_layouts/tags.html +38 -0
  45. data/_sass/_animations.scss +65 -0
  46. data/_sass/_author.scss +91 -0
  47. data/_sass/_elements.scss +3 -0
  48. data/_sass/_footer.scss +98 -0
  49. data/_sass/_form.scss +69 -0
  50. data/_sass/_functions.scss +3 -0
  51. data/_sass/_header.scss +150 -0
  52. data/_sass/_hero.scss +108 -0
  53. data/_sass/_highlight.scss +140 -0
  54. data/_sass/_home.scss +218 -0
  55. data/_sass/_icons.scss +45 -0
  56. data/_sass/_include-media.scss +569 -0
  57. data/_sass/_menu.scss +90 -0
  58. data/_sass/_mixins.scss +51 -0
  59. data/_sass/_modal.scss +154 -0
  60. data/_sass/_no-js.scss +9 -0
  61. data/_sass/_normalize.scss +238 -0
  62. data/_sass/_pagination.scss +90 -0
  63. data/_sass/_post.scss +722 -0
  64. data/_sass/_search.scss +138 -0
  65. data/_sass/_share.scss +37 -0
  66. data/_sass/_staff.scss +38 -0
  67. data/_sass/_theme.scss +7 -0
  68. data/_sass/_typo.scss +7 -0
  69. data/_sass/_variables.scss +24 -0
  70. data/_sass/jekflix.scss +1 -0
  71. data/_sass/main.scss +25 -0
  72. data/_sass/preview.scss +310 -0
  73. metadata +199 -0
@@ -0,0 +1,150 @@
1
+ html,
2
+ body {
3
+ height: 100%;
4
+ }
5
+
6
+ .bar-header {
7
+ background-color: $primaryDark;
8
+ padding: rem(10px) rem(15px);
9
+ position: fixed;
10
+ left: 0;
11
+ width: 100%;
12
+ z-index: 10;
13
+ transition: top 0.5s, left 0.3s ease, background-color 0.5s, box-shadow 0.5s;
14
+
15
+ @include media(">=sm") {
16
+ padding: rem(15px) rem(0px);
17
+ }
18
+
19
+ .logo {
20
+ display: inline-block;
21
+ margin: 0;
22
+ height: rem(32px);
23
+ line-height: rem(32px);
24
+
25
+ a {
26
+ display: block;
27
+ color: $accentDark;
28
+ text-decoration: none;
29
+ font-size: rem(32px);
30
+ position: relative;
31
+ outline: 0;
32
+ }
33
+
34
+ svg {
35
+ width: rem(120px);
36
+ height: rem(30px);
37
+ transition: all .4s;
38
+
39
+ @include media(">=sm") {
40
+ width: rem(205px);
41
+ }
42
+ }
43
+ }
44
+
45
+ .version {
46
+ color: $accentDark;
47
+ font-size: rem(10px);
48
+ font-weight: normal;
49
+ line-height: 1;
50
+ position: absolute;
51
+ top: 0;
52
+ right: 0;
53
+ display: block;
54
+ transform: translateX(110%);
55
+ opacity: 0.3;
56
+ }
57
+
58
+ .icon-menu {
59
+ float: left;
60
+ cursor: pointer;
61
+ margin: rem(5px) rem(20px) rem(5px) 0;
62
+ width: rem(20px);
63
+ height: rem(20px);
64
+ fill: $accentDark;
65
+
66
+ @include media(">=sm") {
67
+ margin: rem(5px) rem(20px) rem(5px) rem(25px);
68
+ }
69
+ }
70
+
71
+ .dosearch {
72
+ float: right;
73
+ width: rem(30px);
74
+ height: rem(30px);
75
+ cursor: pointer;
76
+ margin: 0;
77
+ @include media(">=sm") {
78
+ margin: 0 rem(20px) 0 0;
79
+ }
80
+ }
81
+
82
+ .icon-search {
83
+ width: rem(20px);
84
+ height: rem(20px);
85
+ fill: $accentDark;
86
+ margin: rem(5px);
87
+ }
88
+
89
+ .get-theme {
90
+ display: none;
91
+ font-size: rem(13px);
92
+ font-weight: bold;
93
+ text-decoration: none;
94
+ background-color: $themeColor;
95
+ color: $accentDark;
96
+ padding: rem(5px) rem(10px);
97
+ border-radius: rem(5px);
98
+ float: right;
99
+ margin: rem(5px) rem(15px) rem(5px) rem(5px);
100
+
101
+ @include media(">=sm") {
102
+ display: inline-block;
103
+ }
104
+ }
105
+ }
106
+
107
+ body.main-page {
108
+ background-color: #141414;
109
+
110
+ .bar-header {
111
+ background-color: rgba(0, 0, 0, 0.85);
112
+ }
113
+ }
114
+
115
+ body.light:not(.main-page) {
116
+ .bar-header {
117
+ box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.1);
118
+ background-color: rgba(255, 255, 255, 0.95);
119
+
120
+ .icon-search,
121
+ .icon-menu {
122
+ fill: $primaryDark;
123
+ }
124
+
125
+ .logo a,
126
+ .version {
127
+ color: $primaryDark;
128
+ }
129
+ }
130
+ }
131
+
132
+ .overlay {
133
+ position: fixed;
134
+ width: 100%;
135
+ height: 100%;
136
+ top: 0;
137
+ right: 0;
138
+ left: 0;
139
+ bottom: 0;
140
+ pointer-events: none;
141
+ background: rgba(0, 0, 0, 0.6);
142
+ z-index: 17;
143
+ opacity: 0;
144
+ transition: all 0.3s;
145
+
146
+ &.show {
147
+ pointer-events: auto;
148
+ opacity: 1;
149
+ }
150
+ }
data/_sass/_hero.scss ADDED
@@ -0,0 +1,108 @@
1
+ .hero {
2
+ position: relative;
3
+ background-position: center center;
4
+ background-size: cover;
5
+ background-repeat: no-repeat;
6
+ width: 100%;
7
+ height: 100vh;
8
+
9
+ +#grid {
10
+ margin-top: rem(-80px);
11
+ }
12
+
13
+ .gradient,
14
+ .pixels {
15
+ position: absolute;
16
+ top: 0;
17
+ left: 0;
18
+ width: 100%;
19
+ height: 100%;
20
+ }
21
+
22
+ .pixels {
23
+ opacity: 0.8;
24
+ background-image: url(../../assets/img/pixels.png);
25
+ }
26
+
27
+ .gradient {
28
+ background-image: linear-gradient(0deg, rgba(20, 20, 20, 1) 5%, rgba(0, 0, 0, 0) 30%);
29
+ }
30
+
31
+ .content {
32
+ display: flex;
33
+ justify-content: center;
34
+ flex-direction: column;
35
+ position: absolute;
36
+ width: 80%;
37
+ height: 100%;
38
+ padding-left: 10%;
39
+
40
+ @include media(">=sm") {
41
+ width: 50%;
42
+ }
43
+
44
+ .date {
45
+ font-size: rem(16px);
46
+ color: rgba(255, 255, 255, 0.75);
47
+ }
48
+
49
+ .title {
50
+ font-size: rem(40px);
51
+ color: #fff;
52
+ text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
53
+ margin: rem(10px) 0;
54
+
55
+ @include media(">=sm") {
56
+ font-size: rem(50px);
57
+ }
58
+ }
59
+
60
+ .description {
61
+ font-size: rem(24px);
62
+ color: #fff;
63
+ text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
64
+ margin: 0;
65
+
66
+ @include media(">=sm") {
67
+ font-size: rem(26px);
68
+ }
69
+ }
70
+
71
+ .buttons {
72
+ margin-top: rem(50px);
73
+ }
74
+
75
+ .button {
76
+ display: inline-block;
77
+ font-size: rem(18px);
78
+ font-weight: bold;
79
+ color: #fff;
80
+ text-decoration: none;
81
+ background-color: rgba(0, 0, 0, 0.6);
82
+ border-radius: rem(5px);
83
+ padding: rem(10px) rem(15px);
84
+ transition: all 0.3s;
85
+
86
+ @include media(">=sm") {
87
+ font-size: rem(18px);
88
+ }
89
+
90
+ &:hover {
91
+ background-color: rgba(255, 255, 255, 0.5);
92
+ box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
93
+ }
94
+
95
+ svg {
96
+ width: rem(25px);
97
+ height: rem(25px);
98
+ margin-right: rem(10px);
99
+ vertical-align: middle;
100
+ color: $themeColor;
101
+ }
102
+
103
+ span {
104
+ vertical-align: middle;
105
+ }
106
+ }
107
+ }
108
+ }
@@ -0,0 +1,140 @@
1
+ pre {
2
+ background: #282a36;
3
+ width: 100%;
4
+ padding: rem(20px) 0;
5
+ color: $accentDark;
6
+ margin: rem(30px) 0;
7
+ font-size: rem(14px);
8
+
9
+ @include media(">=sm") {
10
+ font-size: rem(16px);
11
+ padding: rem(40px) 0;
12
+ margin: rem(50px) 0;
13
+ }
14
+
15
+ code {
16
+ @include center(rem(800px));
17
+ padding: 0 rem(20px);
18
+
19
+ @include media("<sm") {
20
+ overflow-x: scroll;
21
+ }
22
+ }
23
+
24
+ span {
25
+ line-height: 1.5rem;
26
+ font-family: "Monaco", "Consolas", "Menlo", monospace;
27
+ }
28
+ }
29
+
30
+ .highlight {
31
+ margin: rem(20px) 0;
32
+
33
+ @include media(">=sm") {
34
+ word-wrap: break-word;
35
+ margin: rem(29px) 0;
36
+ }
37
+
38
+ .hll {
39
+ background-color: #282a36;
40
+ }
41
+
42
+ .c, // Comment
43
+ .cm, // Comment.Multiline
44
+ .cp, // Comment.Preproc
45
+ .c1, // Comment.Single
46
+ .cs { // Comment.Special
47
+ color: #6272a4;
48
+ }
49
+
50
+ .err { // Error
51
+ color: #ff5555;
52
+ background-color: #282a36;
53
+ }
54
+
55
+ .kc, // Keyword.Constant
56
+ .kp, // Keyword.Pseudo
57
+ .kr, // Keyword.Reserved
58
+ .kt, // Keyword.Type
59
+ .no { // Name.Constant
60
+ color: #66d9ef;
61
+ }
62
+
63
+ .l, // Literal
64
+ .mf, // Literal.Number.Float
65
+ .mh, // Literal.Number.Hex
66
+ .mi, // Literal.Number.Integer
67
+ .mo, // Literal.Number.Oct
68
+ .se, // Literal.String.Escape
69
+ .il { // Literal.Number.Integer.Long
70
+ color: #ae81ff;
71
+ }
72
+
73
+ .p, // Punctuation
74
+ .nx { // Name.Other
75
+ color: #f7f7f2;
76
+ }
77
+
78
+ .ni, // Name.Entity
79
+ .nn, // Name.Namespace
80
+ .py, // Name.Property
81
+ .nv, // Name.Variable
82
+ .w, // Text.Whitespace
83
+ .bp, // Name.Builtin.Pseudo
84
+ .vc, // Name.Variable.Class
85
+ .vg, // Name.Variable.Global
86
+ .vi { // Name.Variable.Instance
87
+ color: #50fa7b;
88
+ }
89
+
90
+ .nl { // Name.Label
91
+ color: #8be9fd;
92
+ }
93
+
94
+ .n, // Name
95
+ .nb, // Name.Builtin
96
+ .m { // Literal.Number
97
+ color: #bd93f9;
98
+ }
99
+
100
+ .nt, // Name.Tag
101
+ .k, // Keyword
102
+ .kn, // Keyword.Namespace
103
+ .kd, // Keyword.Declaration
104
+ .o, // Operator
105
+ .ow { // Operator.Word
106
+ color: #ff79c6;
107
+ }
108
+
109
+ .ge { // Generic.Emph
110
+ font-style: italic;
111
+ }
112
+
113
+ .gs { // Generic.Strong
114
+ font-weight: bold;
115
+ }
116
+
117
+ .ld, // Literal.Date
118
+ .s, // Literal.String
119
+ .sb, // Literal.String.Backtick
120
+ .sc, // Literal.String.Char
121
+ .sd, // Literal.String.Doc
122
+ .s2, // Literal.String.Double
123
+ .sh, // Literal.String.Heredoc
124
+ .si, // Literal.String.Interpol
125
+ .sx, // Literal.String.Other
126
+ .sr, // Literal.String.Regex
127
+ .s1, // Literal.String.Single
128
+ .ss, // Literal.String.Symbol
129
+ .vglnk { // Link
130
+ color: #f1fa8c;
131
+ }
132
+
133
+ .na, // Name.Attribute
134
+ .nc, // Name.Class
135
+ .nd, // Name.Decorator
136
+ .ne, // Name.Exception
137
+ .nf { // Name.Function
138
+ color: #50fa7b;
139
+ }
140
+ }
data/_sass/_home.scss ADDED
@@ -0,0 +1,218 @@
1
+ .home {
2
+ @include mainFont(400);
3
+ -webkit-font-smoothing: antialiased;
4
+ -moz-osx-font-smoothing: grayscale;
5
+ padding-top: rem(80px);
6
+
7
+ @include media(">=sm") {
8
+ padding-top: rem(100px);
9
+ }
10
+
11
+ &.no-padding {
12
+ padding-top: 0;
13
+ }
14
+ }
15
+
16
+ .row {
17
+ @include center(100%);
18
+ margin: 0px rem($rowMargin);
19
+ }
20
+
21
+ .flex-grid {
22
+ display: flex;
23
+ flex-flow: row wrap;
24
+ }
25
+
26
+ .title-category {
27
+ font-size: rem(32px);
28
+ margin: 0 0 rem(40px);
29
+ padding: 0 rem(23px);
30
+ text-transform: lowercase;
31
+ color: #fff;
32
+ }
33
+
34
+ .box-item {
35
+ flex: 1 0 $itemMinWidth;
36
+ margin: 0 0 rem(30px);
37
+ display: inline-block;
38
+ min-height: rem(285px);
39
+ transition: all 0.3s;
40
+ position: relative;
41
+ z-index: 1;
42
+
43
+ @include media(">=sm") {
44
+ margin: 0 rem($itemMargin) rem(30px);
45
+ }
46
+
47
+ // Note 1: This complex calc right here is what makes the leftover box items
48
+ // have the same width than their siblings.
49
+ @for $n from 2 through $maxItemsPerRow {
50
+ $resolution: (2 * $rowMargin) + ($n * $itemMinWidth);
51
+ @include media(">=#{$resolution}") {
52
+ max-width: calc(100%/#{$n} - #{$itemMargin * 2});
53
+ }
54
+ }
55
+
56
+ // Note 2: This sets the maximum number of box items per row.
57
+ @include media(">=#{(2 * $rowMargin) + ($maxItemsPerRow * $itemMinWidth)}") {
58
+ flex: 1 0 calc(100%/#{$maxItemsPerRow} - #{$itemMargin * 2});
59
+ }
60
+
61
+ &:hover {
62
+ z-index: 2;
63
+ transform: scale(1.1);
64
+
65
+ img {
66
+ -webkit-filter: grayscale(100%);
67
+ filter: grayscale(100%);
68
+ transform: scale(1.05);
69
+ }
70
+
71
+ .box-body {
72
+ time,
73
+ p {
74
+ color: $accentDark;
75
+ }
76
+
77
+ .cover {
78
+ .new-post-tag {
79
+ background-color: #000;
80
+ }
81
+
82
+ .read-icon {
83
+ opacity: 1;
84
+ }
85
+ }
86
+ }
87
+ }
88
+
89
+ a {
90
+ text-decoration: none;
91
+ display: block;
92
+ }
93
+
94
+ .category {
95
+ display: block;
96
+ height: rem(36px);
97
+ line-height: rem(36px);
98
+ text-transform: uppercase;
99
+ font-weight: bold;
100
+ font-size: rem(18px);
101
+ padding: 0 rem(15px);
102
+
103
+ a {
104
+ color: $accentDark;
105
+ }
106
+ }
107
+
108
+ .box-body {
109
+ img {
110
+ width: 100%;
111
+ height: auto;
112
+ margin: 0 auto;
113
+ transition: all 0.2s ease-in-out;
114
+ }
115
+
116
+ time {
117
+ font-weight: 300;
118
+ font-size: rem(16px);
119
+ color: darken($lightGray, 50%);
120
+ pointer-events: none;
121
+ }
122
+
123
+ h2 {
124
+ margin: rem(10px) 0;
125
+ font-size: rem(24px);
126
+ @include mainFont(800);
127
+ color: $accentDark;
128
+ line-height: rem(30px);
129
+ }
130
+
131
+ p {
132
+ margin: 0 0 rem(30px);
133
+ color: darken($lightGray, 20%);
134
+ font-size: rem(17px);
135
+ line-height: rem(26px);
136
+ }
137
+
138
+ .tags a {
139
+ height: rem(30px);
140
+ line-height: rem(26px);
141
+ color: $accentDark;
142
+ padding: 0 rem(10px);
143
+ border: 1px solid $accentDark;
144
+ border-radius: 15px;
145
+ display: inline-block;
146
+ margin: 0 rem(10px) rem(10px) 0;
147
+ z-index: 50;
148
+
149
+ &:hover {
150
+ color: $primaryDark;
151
+ background: $accentDark;
152
+ border-color: $accentDark;
153
+ }
154
+ }
155
+
156
+ .cover {
157
+ position: relative;
158
+ display: block;
159
+
160
+ .loader {
161
+ position: absolute;
162
+ top: 50%;
163
+ left: 50%;
164
+ transform: translate3d(-50%, -50%, 0);
165
+ color: $themeColor;
166
+ z-index: 1;
167
+ }
168
+
169
+ img {
170
+ position: relative;
171
+ z-index: 2;
172
+ }
173
+
174
+ .new-post-tag {
175
+ text-transform: uppercase;
176
+ display: inline-block;
177
+ background: $themeColor;
178
+ color: #fff;
179
+ font-size: rem(13px);
180
+ font-weight: 700;
181
+ line-height: rem(24px);
182
+ padding: 0 rem(8px);
183
+ position: absolute;
184
+ bottom: rem(8px);
185
+ left: 0;
186
+ z-index: 3;
187
+ }
188
+
189
+ .read-icon {
190
+ opacity: 0;
191
+ background-color: rgba(0, 0, 0, 0.7);
192
+ display: flex;
193
+ align-items: center;
194
+ justify-content: center;
195
+ content: "";
196
+ width: rem(80px);
197
+ height: rem(80px);
198
+ border-radius: 40px;
199
+ position: absolute;
200
+ top: 50%;
201
+ left: 50%;
202
+ margin-top: rem(-40px);
203
+ margin-left: rem(-40px);
204
+ border: 2px solid #fff;
205
+ color: $themeColor;
206
+ z-index: 4;
207
+
208
+ svg {
209
+ width: rem(48px);
210
+ }
211
+ }
212
+ }
213
+ }
214
+
215
+ .box-info {
216
+ padding: rem(15px);
217
+ }
218
+ }
data/_sass/_icons.scss ADDED
@@ -0,0 +1,45 @@
1
+ .icons-home {
2
+ text-align: center;
3
+
4
+ a {
5
+ display: inline-block;
6
+ padding: rem(15px);
7
+ margin: rem(2px);
8
+ border-radius: 50%;
9
+ border: rem(2px) solid $accentDark;
10
+ line-height: 0;
11
+ transition: all 0.7s;
12
+
13
+ .icon {
14
+ fill: $accentDark;
15
+ @include size(18, 18);
16
+
17
+ @include media(">=sm") {
18
+ @include size();
19
+ }
20
+ }
21
+
22
+ &:hover {
23
+ background: $accentDark;
24
+
25
+ .icon {
26
+ fill: $texts;
27
+ }
28
+ }
29
+ }
30
+ }
31
+
32
+ .down {
33
+ position: absolute;
34
+ bottom: 50px;
35
+ width: 100%;
36
+ display: block;
37
+ text-align: center;
38
+
39
+ .icon {
40
+ @include align(both);
41
+ @include size(100, 100);
42
+ fill: $accentDark;
43
+ animation: pulse 1.3s infinite;
44
+ }
45
+ }