jekyll-theme-teddy 0.3.0 → 0.5.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 +4 -4
- data/LICENSE.txt +21 -21
- data/README.md +84 -42
- data/_layouts/default.html +38 -22
- data/_layouts/home.html +39 -0
- data/_layouts/post.html +22 -0
- data/_sass/code-highlighting.scss +98 -97
- data/_sass/fonts.scss +108 -108
- data/_sass/home-page.scss +173 -0
- data/_sass/jekyll-theme-teddy.scss +180 -98
- data/_sass/mixins.scss +4 -0
- data/_sass/teddy.scss +3 -3
- data/_sass/variables.scss +47 -24
- data/assets/css/default.scss +4 -0
- data/assets/css/home.scss +4 -0
- data/assets/images/github-icon.png +0 -0
- data/assets/js/galaxy-animation.js +128 -0
- metadata +38 -18
- data/_sass/Inter.scss +0 -0
- data/assets/css/style.scss +0 -4
- /data/assets/{Fonts → fonts}/Inter/cyrillic-ext.woff2 +0 -0
- /data/assets/{Fonts → fonts}/Inter/cyrillic.woff2 +0 -0
- /data/assets/{Fonts → fonts}/Inter/greek-ext.woff2 +0 -0
- /data/assets/{Fonts → fonts}/Inter/greek.woff2 +0 -0
- /data/assets/{Fonts → fonts}/Inter/latin-ext.woff2 +0 -0
- /data/assets/{Fonts → fonts}/Inter/latin.woff2 +0 -0
- /data/assets/{Fonts → fonts}/Inter/vietnamese.woff2 +0 -0
- /data/assets/{Fonts → fonts}/JetbrainsMono/cyrillic-ext.woff2 +0 -0
- /data/assets/{Fonts → fonts}/JetbrainsMono/cyrillic.woff2 +0 -0
- /data/assets/{Fonts → fonts}/JetbrainsMono/greek.woff2 +0 -0
- /data/assets/{Fonts → fonts}/JetbrainsMono/latin-ext.woff2 +0 -0
- /data/assets/{Fonts → fonts}/JetbrainsMono/latin.woff2 +0 -0
- /data/assets/{Fonts → fonts}/JetbrainsMono/vietnamese.woff2 +0 -0
data/_sass/variables.scss
CHANGED
|
@@ -1,24 +1,47 @@
|
|
|
1
|
-
//
|
|
2
|
-
$
|
|
3
|
-
$
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
$
|
|
7
|
-
$
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
$
|
|
11
|
-
|
|
12
|
-
//
|
|
13
|
-
$
|
|
14
|
-
$
|
|
15
|
-
$
|
|
16
|
-
$
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
$
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
$
|
|
24
|
-
$
|
|
1
|
+
// Home Header
|
|
2
|
+
$main-title: 50pt !default;
|
|
3
|
+
$sub-title: 26pt !default;
|
|
4
|
+
|
|
5
|
+
// Home Card
|
|
6
|
+
$card-header-font-size: 14pt !default;
|
|
7
|
+
$card-content-font-size: 11pt !default;
|
|
8
|
+
$card-content-color: rgba(201, 201, 209, 0.75) !default;
|
|
9
|
+
$card-border-radius: 15px !default;
|
|
10
|
+
$card-shadow: rgba(255, 255, 255, .5) !default;
|
|
11
|
+
|
|
12
|
+
// Header/Text Size
|
|
13
|
+
$h1-font-size: 30pt !default;
|
|
14
|
+
$h2-font-size: 24pt !default;
|
|
15
|
+
$h3-font-size: 22pt !default;
|
|
16
|
+
$h4-font-size: 20pt !default;
|
|
17
|
+
$h5-font-size: 18pt !default;
|
|
18
|
+
$h6-font-size: 16pt !default;
|
|
19
|
+
$regular-text-size: 12pt !default;
|
|
20
|
+
|
|
21
|
+
// General Colors
|
|
22
|
+
$primary-color: #C9C9D1 !default;
|
|
23
|
+
$primary-color-slightly-faded: rgba(201, 201, 209, 0.6) !default;
|
|
24
|
+
$primary-color-faded: rgba(201, 201, 209, 0.4) !default;
|
|
25
|
+
|
|
26
|
+
// Text
|
|
27
|
+
$text-color: $primary-color !default;
|
|
28
|
+
|
|
29
|
+
// Background
|
|
30
|
+
$main-bg: #1D1D26 !default;
|
|
31
|
+
$secondary-bg: #2F3039 !default;
|
|
32
|
+
$footer-bg: #15151c !default;
|
|
33
|
+
$blockquote-bg: $secondary-bg !default;
|
|
34
|
+
|
|
35
|
+
// Code
|
|
36
|
+
$code-bg-color: $secondary-bg !default;
|
|
37
|
+
$code-text-color: $text-color !default;
|
|
38
|
+
|
|
39
|
+
// Links
|
|
40
|
+
$link-normal: #0071e0 !default;
|
|
41
|
+
$link-visited: #7540b2 !default;
|
|
42
|
+
|
|
43
|
+
// Responsive Sizes
|
|
44
|
+
$extra-large-screen: 3500px !default;
|
|
45
|
+
$large-screen: 2500px !default;
|
|
46
|
+
$medium-screen: 1600px !default;
|
|
47
|
+
$small-screen: 700px !default;
|
|
Binary file
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(Element.prototype, 'outerHeight', {
|
|
4
|
+
'get': function(){
|
|
5
|
+
var height = this.clientHeight;
|
|
6
|
+
var computedStyle = window.getComputedStyle(this);
|
|
7
|
+
height += parseInt(computedStyle.marginTop, 10);
|
|
8
|
+
height += parseInt(computedStyle.borderTopWidth, 10);
|
|
9
|
+
height += parseInt(computedStyle.borderBottomWidth, 10);
|
|
10
|
+
return height;
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
let canvas = document.getElementById('canvas');
|
|
15
|
+
let banner = document.getElementById('home-banner')
|
|
16
|
+
|
|
17
|
+
let ctx = canvas.getContext('2d');
|
|
18
|
+
let w;
|
|
19
|
+
let h;
|
|
20
|
+
|
|
21
|
+
let stars = [];
|
|
22
|
+
let count = 0;
|
|
23
|
+
|
|
24
|
+
const hue = 260;
|
|
25
|
+
const maxStars = 200;
|
|
26
|
+
const background = "black";
|
|
27
|
+
|
|
28
|
+
// Cache gradient
|
|
29
|
+
let canvas2 = document.createElement('canvas');
|
|
30
|
+
let ctx2 = canvas2.getContext('2d');
|
|
31
|
+
|
|
32
|
+
canvas2.width = 100;
|
|
33
|
+
canvas2.height = 100;
|
|
34
|
+
|
|
35
|
+
let half = canvas2.width/2;
|
|
36
|
+
let gradient2 = ctx2.createRadialGradient(half, half, 0, half, half, half);
|
|
37
|
+
|
|
38
|
+
gradient2.addColorStop(0.025, '#fff');
|
|
39
|
+
gradient2.addColorStop(0.1, 'hsl(' + hue + ', 61%, 100%)');
|
|
40
|
+
gradient2.addColorStop(0.25, 'hsl(' + hue + ', 64%, 0%)');
|
|
41
|
+
gradient2.addColorStop(1, 'transparent');
|
|
42
|
+
|
|
43
|
+
ctx2.fillStyle = gradient2;
|
|
44
|
+
ctx2.beginPath();
|
|
45
|
+
ctx2.arc(half, half, half, 0, Math.PI * 2);
|
|
46
|
+
ctx2.fill();
|
|
47
|
+
|
|
48
|
+
// End cache
|
|
49
|
+
|
|
50
|
+
function setSize() {
|
|
51
|
+
w = canvas.width = document.getElementsByTagName("html")[0].clientWidth;
|
|
52
|
+
h = canvas.height = banner.outerHeight;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
setSize();
|
|
56
|
+
|
|
57
|
+
function random(min, max) {
|
|
58
|
+
if (arguments.length < 2) {
|
|
59
|
+
max = min;
|
|
60
|
+
min = 0;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (min > max) {
|
|
64
|
+
let hold = max;
|
|
65
|
+
max = min;
|
|
66
|
+
min = hold;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
function maxOrbit(x,y) {
|
|
73
|
+
let max = Math.max(x,y),
|
|
74
|
+
diameter = Math.round(Math.sqrt(max*max + max*max));
|
|
75
|
+
return diameter/2;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
let Star = function() {
|
|
79
|
+
|
|
80
|
+
this.orbitRadius = random(maxOrbit(w/1.75,h/1.75));
|
|
81
|
+
this.radius = random(60, this.orbitRadius) / 12;
|
|
82
|
+
this.orbitX = w / 2;
|
|
83
|
+
this.orbitY = h / 2;
|
|
84
|
+
this.timePassed = random(0, maxStars);
|
|
85
|
+
this.speed = random(this.orbitRadius) / 1000000;
|
|
86
|
+
this.alpha = random(2, 10) / 10;
|
|
87
|
+
|
|
88
|
+
count++;
|
|
89
|
+
stars[count] = this;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
Star.prototype.draw = function() {
|
|
93
|
+
let x = Math.sin(this.timePassed) * this.orbitRadius + this.orbitX,
|
|
94
|
+
y = Math.cos(this.timePassed) * this.orbitRadius + this.orbitY
|
|
95
|
+
|
|
96
|
+
ctx.globalAlpha = this.alpha;
|
|
97
|
+
ctx.drawImage(canvas2, x - this.radius / 2, y - this.radius / 2, this.radius, this.radius);
|
|
98
|
+
this.timePassed += this.speed;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
for (let i = 0; i < maxStars; i++) {
|
|
102
|
+
new Star();
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
function animation() {
|
|
106
|
+
ctx.globalCompositeOperation = 'source-over';
|
|
107
|
+
ctx.globalAlpha = 0.8;
|
|
108
|
+
ctx.fillStyle = background;
|
|
109
|
+
ctx.fillRect(0, 0, w, h)
|
|
110
|
+
|
|
111
|
+
ctx.globalCompositeOperation = 'lighter';
|
|
112
|
+
for (let i = 1, l = stars.length; i < l; i++) {
|
|
113
|
+
stars[i].draw();
|
|
114
|
+
};
|
|
115
|
+
|
|
116
|
+
window.requestAnimationFrame(animation);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
animation();
|
|
120
|
+
|
|
121
|
+
window.addEventListener('resize', () => {
|
|
122
|
+
setSize();
|
|
123
|
+
stars = [];
|
|
124
|
+
count = 0;
|
|
125
|
+
for (let i = 0; i < maxStars; i++) {
|
|
126
|
+
new Star();
|
|
127
|
+
}
|
|
128
|
+
});
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: jekyll-theme-teddy
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.5.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Teddy55Codes
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2024-
|
|
11
|
+
date: 2024-08-20 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: jekyll
|
|
@@ -44,6 +44,20 @@ dependencies:
|
|
|
44
44
|
- - "~>"
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
46
|
version: '2.0'
|
|
47
|
+
- !ruby/object:Gem::Dependency
|
|
48
|
+
name: jekyll-toc
|
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
|
50
|
+
requirements:
|
|
51
|
+
- - "~>"
|
|
52
|
+
- !ruby/object:Gem::Version
|
|
53
|
+
version: 0.19.0
|
|
54
|
+
type: :runtime
|
|
55
|
+
prerelease: false
|
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
57
|
+
requirements:
|
|
58
|
+
- - "~>"
|
|
59
|
+
- !ruby/object:Gem::Version
|
|
60
|
+
version: 0.19.0
|
|
47
61
|
description:
|
|
48
62
|
email:
|
|
49
63
|
- teddy@teddy.email
|
|
@@ -54,26 +68,32 @@ files:
|
|
|
54
68
|
- LICENSE.txt
|
|
55
69
|
- README.md
|
|
56
70
|
- _layouts/default.html
|
|
57
|
-
-
|
|
71
|
+
- _layouts/home.html
|
|
72
|
+
- _layouts/post.html
|
|
58
73
|
- _sass/code-highlighting.scss
|
|
59
74
|
- _sass/fonts.scss
|
|
75
|
+
- _sass/home-page.scss
|
|
60
76
|
- _sass/jekyll-theme-teddy.scss
|
|
77
|
+
- _sass/mixins.scss
|
|
61
78
|
- _sass/teddy.scss
|
|
62
79
|
- _sass/variables.scss
|
|
63
|
-
- assets/
|
|
64
|
-
- assets/
|
|
65
|
-
- assets/
|
|
66
|
-
- assets/
|
|
67
|
-
- assets/
|
|
68
|
-
- assets/
|
|
69
|
-
- assets/
|
|
70
|
-
- assets/
|
|
71
|
-
- assets/
|
|
72
|
-
- assets/
|
|
73
|
-
- assets/
|
|
74
|
-
- assets/
|
|
75
|
-
- assets/
|
|
76
|
-
- assets/
|
|
80
|
+
- assets/css/default.scss
|
|
81
|
+
- assets/css/home.scss
|
|
82
|
+
- assets/fonts/Inter/cyrillic-ext.woff2
|
|
83
|
+
- assets/fonts/Inter/cyrillic.woff2
|
|
84
|
+
- assets/fonts/Inter/greek-ext.woff2
|
|
85
|
+
- assets/fonts/Inter/greek.woff2
|
|
86
|
+
- assets/fonts/Inter/latin-ext.woff2
|
|
87
|
+
- assets/fonts/Inter/latin.woff2
|
|
88
|
+
- assets/fonts/Inter/vietnamese.woff2
|
|
89
|
+
- assets/fonts/JetbrainsMono/cyrillic-ext.woff2
|
|
90
|
+
- assets/fonts/JetbrainsMono/cyrillic.woff2
|
|
91
|
+
- assets/fonts/JetbrainsMono/greek.woff2
|
|
92
|
+
- assets/fonts/JetbrainsMono/latin-ext.woff2
|
|
93
|
+
- assets/fonts/JetbrainsMono/latin.woff2
|
|
94
|
+
- assets/fonts/JetbrainsMono/vietnamese.woff2
|
|
95
|
+
- assets/images/github-icon.png
|
|
96
|
+
- assets/js/galaxy-animation.js
|
|
77
97
|
homepage: https://github.com/Teddy55Codes/jekyll-theme-teddy
|
|
78
98
|
licenses:
|
|
79
99
|
- MIT
|
|
@@ -93,7 +113,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
93
113
|
- !ruby/object:Gem::Version
|
|
94
114
|
version: '0'
|
|
95
115
|
requirements: []
|
|
96
|
-
rubygems_version: 3.
|
|
116
|
+
rubygems_version: 3.3.15
|
|
97
117
|
signing_key:
|
|
98
118
|
specification_version: 4
|
|
99
119
|
summary: The theme used for https://github.com/Teddy55Codes/Blog
|
data/_sass/Inter.scss
DELETED
|
File without changes
|
data/assets/css/style.scss
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|