jekyll-podcaster 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE.txt +23 -0
- data/README.md +136 -0
- data/_includes/analytics.html +9 -0
- data/_includes/cover.html +1 -0
- data/_includes/date.html +18 -0
- data/_includes/disqus.html +5 -0
- data/_includes/footer.html +5 -0
- data/_includes/head.html +40 -0
- data/_includes/header.html +29 -0
- data/_includes/player.html +5 -0
- data/_includes/playerjs.html +58 -0
- data/_includes/shownotes.html +20 -0
- data/_includes/sidebar.html +26 -0
- data/_includes/video.html +4 -0
- data/_layouts/default.html +38 -0
- data/_layouts/home.html +91 -0
- data/_layouts/page.html +5 -0
- data/_layouts/post.html +47 -0
- data/_sass/archive.scss +33 -0
- data/_sass/background.scss +119 -0
- data/_sass/base.scss +55 -0
- data/_sass/header.scss +187 -0
- data/_sass/home.scss +62 -0
- data/_sass/player.scss +6 -0
- data/_sass/post.scss +63 -0
- data/_sass/sidebar.scss +87 -0
- data/assets/css/main.scss +4 -0
- data/assets/css/mobile.scss +186 -0
- data/assets/img/Podcast_Cover.jpg +0 -0
- data/assets/img/Podcast_Cover_500.jpg +0 -0
- data/assets/img/Podcast_Cover_Small.jpg +0 -0
- data/assets/js/disqus.js +11 -0
- data/assets/screenshots/Homepage.png +0 -0
- data/assets/screenshots/Mobile.png +0 -0
- metadata +119 -0
data/_layouts/home.html
ADDED
@@ -0,0 +1,91 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
{% for post in paginator.posts %}
|
5
|
+
|
6
|
+
|
7
|
+
<div class="post">
|
8
|
+
|
9
|
+
<div class = "cover-img">
|
10
|
+
{% if post.cover %}
|
11
|
+
<img src="{{post.cover}}" alt="Podcast Cover">
|
12
|
+
{% else %}
|
13
|
+
<img src="{{ "/assets/img/Podcast_Cover_Small.jpg" | absolute_url}}" alt="Podcast Cover">
|
14
|
+
{% endif %}
|
15
|
+
</div>
|
16
|
+
|
17
|
+
<div class = title>
|
18
|
+
<h2 id = "post-title"><a href="{{ post.url | absolute_url }}">{{ post.title }}</a></h2>
|
19
|
+
|
20
|
+
<div class = "info">
|
21
|
+
<span>
|
22
|
+
{% if site.data.settings.translate-date == true %}
|
23
|
+
<i class="far fa-calendar" aria-hidden="true"></i>{%- include date.html date=post.date -%}<span> - </span><i class="far fa-clock"></i> {{post.length}}
|
24
|
+
{% else %}
|
25
|
+
<i class="far fa-calendar" aria-hidden="true"></i>{{ post.date | date_to_long_string}}<span> - </span><i class="far fa-clock"></i> {{post.length}}
|
26
|
+
{% endif %}
|
27
|
+
</span>
|
28
|
+
</div>
|
29
|
+
</div>
|
30
|
+
|
31
|
+
|
32
|
+
{% capture file %}
|
33
|
+
{{- post.file -}}
|
34
|
+
{% endcapture %}
|
35
|
+
{% capture title %}
|
36
|
+
{{- post.title -}}
|
37
|
+
{% endcapture %}
|
38
|
+
{% include player.html file=file title=title %}
|
39
|
+
|
40
|
+
<div class = "long-excerpt">
|
41
|
+
<p>
|
42
|
+
{% if post.description %}
|
43
|
+
{{post.description | strip_html | truncatewords:100}}
|
44
|
+
{% else %}
|
45
|
+
{{ post.content | strip_html | truncatewords:100 }}
|
46
|
+
{% endif %}
|
47
|
+
<span class = "continue-reading"><a href="{{ post.url | absolute_url }}">Continua</a></span>
|
48
|
+
</p>
|
49
|
+
</div>
|
50
|
+
|
51
|
+
<div class = "short-excerpt">
|
52
|
+
<p>
|
53
|
+
{% if post.description %}
|
54
|
+
{{post.description | strip_html | truncatewords:30}}
|
55
|
+
{% else %}
|
56
|
+
{{ post.content | strip_html | truncatewords:30 }}
|
57
|
+
{% endif %}
|
58
|
+
<span class = "continue-reading"><a href="{{ post.url | absolute_url }}">Continua</a></span>
|
59
|
+
</p>
|
60
|
+
</div>
|
61
|
+
|
62
|
+
</div>
|
63
|
+
{% endfor %}
|
64
|
+
|
65
|
+
|
66
|
+
<!-- Pagination links -->
|
67
|
+
{% if paginator.total_pages > 1 %}
|
68
|
+
<div class="pagination">
|
69
|
+
{% if paginator.previous_page %}
|
70
|
+
<a href="{{ paginator.previous_page_path | prepend: site.baseurl | replace: '//', '/' }}">« Prev</a>
|
71
|
+
{% else %}
|
72
|
+
<span class = "inactive">« Prev</span>
|
73
|
+
{% endif %}
|
74
|
+
|
75
|
+
{% for page in (1..paginator.total_pages) %}
|
76
|
+
{% if page == paginator.page %}
|
77
|
+
<span class = "inactive">{{ page }}</span>
|
78
|
+
{% elsif page == 1 %}
|
79
|
+
<a href="/">{{ page }}</a>
|
80
|
+
{% else %}
|
81
|
+
<a href="{{ site.paginate_path | prepend: site.baseurl | replace: '//', '/' | replace: ':num', page }}">{{ page }}</a>
|
82
|
+
{% endif %}
|
83
|
+
{% endfor %}
|
84
|
+
|
85
|
+
{% if paginator.next_page %}
|
86
|
+
<a href="{{ paginator.next_page_path | prepend: site.baseurl | replace: '//', '/' }}">Next »</a>
|
87
|
+
{% else %}
|
88
|
+
<span class = "inactive">Next »</span>
|
89
|
+
{% endif %}
|
90
|
+
</div>
|
91
|
+
{% endif %}
|
data/_layouts/page.html
ADDED
data/_layouts/post.html
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<div class = "single-post">
|
6
|
+
<div class="categories">
|
7
|
+
{% assign categories = page.categories %}
|
8
|
+
{% for category in categories %}
|
9
|
+
<a href="{% capture url %}/cat/#{{ category | slugify }}{% endcapture %}
|
10
|
+
{{ url | absolute_url }}">{{category}}</a>
|
11
|
+
{% unless forloop.last %} {% endunless %}
|
12
|
+
{% endfor %}
|
13
|
+
</div>
|
14
|
+
<h2>{{page.title}}</h2>
|
15
|
+
|
16
|
+
{% if post.cover %}
|
17
|
+
<img src="{{post.cover}}" alt="Podcast Cover">
|
18
|
+
{% else %}
|
19
|
+
<img src="{{ "/assets/img/Podcast_Cover_500.jpg" | absolute_url}}" alt="Podcast Cover">
|
20
|
+
{% endif %}
|
21
|
+
|
22
|
+
<p>{{page.description}}</p>
|
23
|
+
|
24
|
+
{% capture file %}
|
25
|
+
{{- page.file -}}
|
26
|
+
{% endcapture %}
|
27
|
+
{% capture title %}
|
28
|
+
{{- page.title -}}
|
29
|
+
{% endcapture %}
|
30
|
+
|
31
|
+
{% include player.html file = file title = title %}
|
32
|
+
|
33
|
+
{% if page.videoid %}
|
34
|
+
{% include video.html videoid = page.videoid %}
|
35
|
+
{% endif %}
|
36
|
+
|
37
|
+
{{ content }}
|
38
|
+
|
39
|
+
{% if site.data.settings.shownotes == true %}
|
40
|
+
{% include shownotes.html %}
|
41
|
+
{% endif %}
|
42
|
+
|
43
|
+
|
44
|
+
</div>
|
45
|
+
{% if site.settings.disqus-shortname %}
|
46
|
+
{%- include disqus.html -%}
|
47
|
+
{% endif %}
|
data/_sass/archive.scss
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
.container{
|
2
|
+
.content{
|
3
|
+
.archive-group, .episodes{
|
4
|
+
h2{
|
5
|
+
font-family: 'Karla', sans-serif;
|
6
|
+
font-size: 2rem;
|
7
|
+
text-align: center;
|
8
|
+
margin-top: 20px;
|
9
|
+
}
|
10
|
+
ul{
|
11
|
+
list-style: none;
|
12
|
+
li{
|
13
|
+
line-height: 3rem;
|
14
|
+
text-align: center;
|
15
|
+
a{
|
16
|
+
text-decoration: none;
|
17
|
+
font-size: 1.5rem;
|
18
|
+
display: inline-block;
|
19
|
+
font-style: italic;
|
20
|
+
border-bottom: 1px solid $base-color;
|
21
|
+
line-height: 0.9;
|
22
|
+
transition: background-color 0.1s cubic-bezier(.33,.66,.66,1);
|
23
|
+
color: black;
|
24
|
+
}
|
25
|
+
a:hover{
|
26
|
+
background-color: $darker-color;
|
27
|
+
border-bottom: none;
|
28
|
+
}
|
29
|
+
}
|
30
|
+
}
|
31
|
+
}
|
32
|
+
}
|
33
|
+
}
|
@@ -0,0 +1,119 @@
|
|
1
|
+
body{
|
2
|
+
background-color:#fff;
|
3
|
+
background-image:
|
4
|
+
url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%2040%201440%20320%22%3E%0A%20%20%3Cpath%20fill%3D%22%2301a0e4%22%20fill-opacity%3D%221%22%20d%3D%22M0%2C160L48%2C176C96%2C192%2C192%2C224%2C288%2C229.3C384%2C235%2C480%2C213%2C576%2C176C672%2C139%2C768%2C85%2C864%2C90.7C960%2C96%2C1056%2C160%2C1152%2C165.3C1248%2C171%2C1344%2C117%2C1392%2C90.7L1440%2C64L1440%2C0L1392%2C0C1344%2C0%2C1248%2C0%2C1152%2C0C1056%2C0%2C960%2C0%2C864%2C0C768%2C0%2C672%2C0%2C576%2C0C480%2C0%2C384%2C0%2C288%2C0C192%2C0%2C96%2C0%2C48%2C0L0%2C0Z%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E');
|
5
|
+
background-repeat: repeat-x;
|
6
|
+
}
|
7
|
+
.circles{
|
8
|
+
position: fixed;
|
9
|
+
z-index: -5;
|
10
|
+
top: 0;
|
11
|
+
left: 0;
|
12
|
+
width: 100%;
|
13
|
+
height: 100%;
|
14
|
+
overflow: hidden;
|
15
|
+
}
|
16
|
+
|
17
|
+
.circles li{
|
18
|
+
position: absolute;
|
19
|
+
display: block;
|
20
|
+
list-style: none;
|
21
|
+
width: 20px;
|
22
|
+
height: 20px;
|
23
|
+
background: $darker-color;
|
24
|
+
animation: animate 25s linear infinite;
|
25
|
+
bottom: -150px;
|
26
|
+
|
27
|
+
}
|
28
|
+
|
29
|
+
.circles li:nth-child(1){
|
30
|
+
left: 25%;
|
31
|
+
width: 80px;
|
32
|
+
height: 80px;
|
33
|
+
animation-delay: 0s;
|
34
|
+
}
|
35
|
+
|
36
|
+
|
37
|
+
.circles li:nth-child(2){
|
38
|
+
left: 10%;
|
39
|
+
width: 20px;
|
40
|
+
height: 20px;
|
41
|
+
animation-delay: 2s;
|
42
|
+
animation-duration: 12s;
|
43
|
+
}
|
44
|
+
|
45
|
+
.circles li:nth-child(3){
|
46
|
+
left: 70%;
|
47
|
+
width: 20px;
|
48
|
+
height: 20px;
|
49
|
+
animation-delay: 4s;
|
50
|
+
}
|
51
|
+
|
52
|
+
.circles li:nth-child(4){
|
53
|
+
left: 40%;
|
54
|
+
width: 60px;
|
55
|
+
height: 60px;
|
56
|
+
animation-delay: 0s;
|
57
|
+
animation-duration: 18s;
|
58
|
+
}
|
59
|
+
|
60
|
+
.circles li:nth-child(5){
|
61
|
+
left: 65%;
|
62
|
+
width: 20px;
|
63
|
+
height: 20px;
|
64
|
+
animation-delay: 0s;
|
65
|
+
}
|
66
|
+
|
67
|
+
.circles li:nth-child(6){
|
68
|
+
left: 75%;
|
69
|
+
width: 110px;
|
70
|
+
height: 110px;
|
71
|
+
animation-delay: 3s;
|
72
|
+
}
|
73
|
+
|
74
|
+
.circles li:nth-child(7){
|
75
|
+
left: 35%;
|
76
|
+
width: 150px;
|
77
|
+
height: 150px;
|
78
|
+
animation-delay: 7s;
|
79
|
+
}
|
80
|
+
|
81
|
+
.circles li:nth-child(8){
|
82
|
+
left: 50%;
|
83
|
+
width: 25px;
|
84
|
+
height: 25px;
|
85
|
+
animation-delay: 15s;
|
86
|
+
animation-duration: 45s;
|
87
|
+
}
|
88
|
+
|
89
|
+
.circles li:nth-child(9){
|
90
|
+
left: 20%;
|
91
|
+
width: 15px;
|
92
|
+
height: 15px;
|
93
|
+
animation-delay: 2s;
|
94
|
+
animation-duration: 35s;
|
95
|
+
}
|
96
|
+
|
97
|
+
.circles li:nth-child(10){
|
98
|
+
left: 85%;
|
99
|
+
width: 150px;
|
100
|
+
height: 150px;
|
101
|
+
animation-delay: 0s;
|
102
|
+
animation-duration: 11s;
|
103
|
+
}
|
104
|
+
|
105
|
+
@keyframes animate {
|
106
|
+
|
107
|
+
0%{
|
108
|
+
transform: translateY(0) rotate(0deg);
|
109
|
+
opacity: 1;
|
110
|
+
border-radius: 50%;
|
111
|
+
}
|
112
|
+
|
113
|
+
100%{
|
114
|
+
transform: translateY(-1000px) rotate(720deg);
|
115
|
+
opacity: 0;
|
116
|
+
border-radius: 50%;
|
117
|
+
}
|
118
|
+
|
119
|
+
}
|
data/_sass/base.scss
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
$base-color: #01a0e4;
|
2
|
+
$darker-color: rgba(0, 160, 227, 0.2);
|
3
|
+
|
4
|
+
* {
|
5
|
+
-webkit-box-sizing: border-box;
|
6
|
+
-moz-box-sizing: border-box;
|
7
|
+
box-sizing: border-box;
|
8
|
+
margin: 0px;
|
9
|
+
padding: 0px;
|
10
|
+
font-family: 'Karla', sans-serif;
|
11
|
+
}
|
12
|
+
html{
|
13
|
+
scroll-behavior: smooth;
|
14
|
+
}
|
15
|
+
|
16
|
+
a{
|
17
|
+
text-decoration: none;
|
18
|
+
}
|
19
|
+
p{
|
20
|
+
a{
|
21
|
+
display: inline-block;
|
22
|
+
font-style: italic;
|
23
|
+
border-bottom: 1px solid $base-color;
|
24
|
+
line-height: 0.9;
|
25
|
+
transition: background-color 0.1s cubic-bezier(.33,.66,.66,1);
|
26
|
+
}
|
27
|
+
a:hover{
|
28
|
+
background-color: $darker-color;
|
29
|
+
border-bottom: none;
|
30
|
+
}
|
31
|
+
}
|
32
|
+
|
33
|
+
.container{
|
34
|
+
display: flex;
|
35
|
+
flex-direction: row;
|
36
|
+
justify-content: space-evenly;
|
37
|
+
align-items: flex-start;
|
38
|
+
.content{
|
39
|
+
order: 1;
|
40
|
+
width: 55%;
|
41
|
+
}
|
42
|
+
|
43
|
+
}
|
44
|
+
|
45
|
+
|
46
|
+
footer{
|
47
|
+
text-align: center;
|
48
|
+
font-size: .85rem;
|
49
|
+
margin-bottom: 10px;
|
50
|
+
margin-top: 20px;
|
51
|
+
a{
|
52
|
+
text-decoration: none;
|
53
|
+
color: black;
|
54
|
+
}
|
55
|
+
}
|
data/_sass/header.scss
ADDED
@@ -0,0 +1,187 @@
|
|
1
|
+
#header{
|
2
|
+
display: flex;
|
3
|
+
align-items: center;
|
4
|
+
justify-content: flex-start;
|
5
|
+
min-height: 50px;
|
6
|
+
margin-bottom: 160px;
|
7
|
+
h1{
|
8
|
+
padding: 20px;
|
9
|
+
a{
|
10
|
+
color: white;
|
11
|
+
font-family: 'Oleo Script', cursive;
|
12
|
+
font-size: 2.5rem;
|
13
|
+
}
|
14
|
+
}
|
15
|
+
|
16
|
+
#desktop-nav{
|
17
|
+
#desktop-menu{
|
18
|
+
list-style: none;
|
19
|
+
margin: 0;
|
20
|
+
margin-right: 180px;
|
21
|
+
padding: 0;
|
22
|
+
overflow: hidden;
|
23
|
+
ul{
|
24
|
+
display:inline;
|
25
|
+
}
|
26
|
+
li{
|
27
|
+
float: left;
|
28
|
+
margin-right: 10px;
|
29
|
+
a{
|
30
|
+
display: block;
|
31
|
+
text-decoration: none;
|
32
|
+
color: white;
|
33
|
+
font-weight: bold;
|
34
|
+
font-size: 1.5rem;
|
35
|
+
}
|
36
|
+
a:hover{
|
37
|
+
text-decoration: underline;
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}
|
42
|
+
|
43
|
+
//start menu
|
44
|
+
#hammenuToggle{
|
45
|
+
display: block;
|
46
|
+
position: absolute;
|
47
|
+
top: 15px;
|
48
|
+
right: 15px;
|
49
|
+
|
50
|
+
z-index: 1;
|
51
|
+
|
52
|
+
-webkit-user-select: none;
|
53
|
+
user-select: none;
|
54
|
+
}
|
55
|
+
|
56
|
+
#hammenuToggle a
|
57
|
+
{
|
58
|
+
text-decoration: none;
|
59
|
+
color: #232323;
|
60
|
+
|
61
|
+
transition: color 0.3s ease;
|
62
|
+
}
|
63
|
+
|
64
|
+
#hammenuToggle a:hover
|
65
|
+
{
|
66
|
+
color: $base-color;
|
67
|
+
}
|
68
|
+
|
69
|
+
|
70
|
+
#hammenuToggle input
|
71
|
+
{
|
72
|
+
display: block;
|
73
|
+
width: 40px;
|
74
|
+
height: 32px;
|
75
|
+
position: absolute;
|
76
|
+
top: -7px;
|
77
|
+
left: -5px;
|
78
|
+
|
79
|
+
cursor: pointer;
|
80
|
+
|
81
|
+
opacity: 0; /* hide this */
|
82
|
+
z-index: 2; /* and place it over the hamburger */
|
83
|
+
|
84
|
+
-webkit-touch-callout: none;
|
85
|
+
}
|
86
|
+
|
87
|
+
/*
|
88
|
+
* Just a quick hamburger
|
89
|
+
*/
|
90
|
+
#hammenuToggle span
|
91
|
+
{
|
92
|
+
display: block;
|
93
|
+
width: 33px;
|
94
|
+
height: 4px;
|
95
|
+
margin-bottom: 5px;
|
96
|
+
position: relative;
|
97
|
+
|
98
|
+
background: white;
|
99
|
+
border-radius: 3px;
|
100
|
+
|
101
|
+
z-index: 1;
|
102
|
+
|
103
|
+
transform-origin: 4px 0px;
|
104
|
+
|
105
|
+
transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
|
106
|
+
background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
|
107
|
+
opacity 0.55s ease;
|
108
|
+
}
|
109
|
+
|
110
|
+
#hammenuToggle span:first-child
|
111
|
+
{
|
112
|
+
transform-origin: 0% 0%;
|
113
|
+
}
|
114
|
+
|
115
|
+
#hammenuToggle span:nth-last-child(2)
|
116
|
+
{
|
117
|
+
transform-origin: 0% 100%;
|
118
|
+
}
|
119
|
+
|
120
|
+
/*
|
121
|
+
* Transform all the slices of hamburger
|
122
|
+
* into a crossmark.
|
123
|
+
*/
|
124
|
+
#hammenuToggle input:checked ~ span
|
125
|
+
{
|
126
|
+
opacity: 1;
|
127
|
+
transform: rotate(45deg) translate(-2px, -1px);
|
128
|
+
background: #232323;
|
129
|
+
}
|
130
|
+
|
131
|
+
/*
|
132
|
+
* But let's hide the middle one.
|
133
|
+
*/
|
134
|
+
#hammenuToggle input:checked ~ span:nth-last-child(3)
|
135
|
+
{
|
136
|
+
opacity: 0;
|
137
|
+
transform: rotate(0deg) scale(0.2, 0.2);
|
138
|
+
}
|
139
|
+
|
140
|
+
/*
|
141
|
+
* Ohyeah and the last one should go the other direction
|
142
|
+
*/
|
143
|
+
#hammenuToggle input:checked ~ span:nth-last-child(2)
|
144
|
+
{
|
145
|
+
transform: rotate(-45deg) translate(0, -1px);
|
146
|
+
}
|
147
|
+
|
148
|
+
/*
|
149
|
+
* Make this absolute positioned
|
150
|
+
* at the top left of the screen
|
151
|
+
*/
|
152
|
+
#menu
|
153
|
+
{
|
154
|
+
position: fixed;
|
155
|
+
width: 300px;
|
156
|
+
margin: 10px 0 200px -135px;
|
157
|
+
padding: 50px;
|
158
|
+
|
159
|
+
// background: #ededed;
|
160
|
+
background: white;
|
161
|
+
border: 2px solid $base-color;
|
162
|
+
opacity: 0.98;
|
163
|
+
border-radius: 30px;
|
164
|
+
list-style-type: none;
|
165
|
+
-webkit-font-smoothing: antialiased;
|
166
|
+
/* to stop flickering of text in safari */
|
167
|
+
|
168
|
+
transform-origin: 0% 0%;
|
169
|
+
transform: translate(100%);
|
170
|
+
|
171
|
+
transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
|
172
|
+
}
|
173
|
+
|
174
|
+
#menu li
|
175
|
+
{
|
176
|
+
padding: 10px 0;
|
177
|
+
font-size: 22px;
|
178
|
+
}
|
179
|
+
|
180
|
+
/*
|
181
|
+
* And let's slide it in from the left
|
182
|
+
*/
|
183
|
+
#hammenuToggle input:checked ~ ul
|
184
|
+
{
|
185
|
+
transform: none;
|
186
|
+
}
|
187
|
+
}
|