arsxy-theme 1.0.0.pre.rc
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 +21 -0
- data/README.md +166 -0
- data/_config.yml +131 -0
- data/_includes/footer.html +45 -0
- data/_includes/header.html +68 -0
- data/_includes/image.html +8 -0
- data/_includes/related-posts.html +83 -0
- data/_includes/search.html +32 -0
- data/_includes/social-sharing.html +86 -0
- data/_includes/toc.html +83 -0
- data/_layouts/default.html +76 -0
- data/_layouts/docs.html +90 -0
- data/_layouts/home.html +172 -0
- data/_layouts/post.html +114 -0
- data/_sass/_base.scss +264 -0
- data/_sass/_dark-mode.scss +749 -0
- data/_sass/_layout.scss +118 -0
- data/_sass/_responsive.scss +157 -0
- data/_sass/_syntax-highlighting.scss +147 -0
- data/_sass/_typography.scss +226 -0
- data/_sass/_utilities.scss +138 -0
- data/_sass/_variables.scss +63 -0
- data/_sass/components/_code.scss +245 -0
- data/_sass/components/_docs.scss +263 -0
- data/_sass/components/_footer.scss +170 -0
- data/_sass/components/_header.scss +313 -0
- data/_sass/components/_homepage.scss +597 -0
- data/_sass/components/_image.scss +22 -0
- data/_sass/components/_pagination.scss +146 -0
- data/_sass/components/_post.scss +1039 -0
- data/_sass/components/_related-posts.scss +70 -0
- data/_sass/components/_search.scss +276 -0
- data/_sass/components/_social-sharing.scss +95 -0
- data/_sass/components/_toc.scss +193 -0
- data/assets/css/main.scss +24 -0
- data/assets/images/favicon/android-chrome-192x192.png +0 -0
- data/assets/images/favicon/android-chrome-512x512.png +0 -0
- data/assets/images/favicon/apple-touch-icon.png +0 -0
- data/assets/images/favicon/favicon-16x16.png +0 -0
- data/assets/images/favicon/favicon-32x32.png +0 -0
- data/assets/images/favicon/favicon.ico +0 -0
- data/assets/images/favicon/site.webmanifest +19 -0
- data/assets/images/new-features-update.svg +58 -0
- data/assets/images/related-posts-example.svg +37 -0
- data/assets/images/seo-optimization.png +0 -0
- data/assets/images/social-sharing-sample.png +0 -0
- data/assets/images/ss-arsxy-theme.png +0 -0
- data/assets/images/table-of-content-thumbnail.png +0 -0
- data/assets/images/theme-demo-2.jpeg +0 -0
- data/assets/images/theme-demo.jpeg +0 -0
- data/assets/images/welcome-to-arsxy-theme.png +0 -0
- data/assets/js/main.js +369 -0
- data/assets/js/search-index.json +31 -0
- data/assets/js/search.js +207 -0
- metadata +226 -0
data/_sass/_base.scss
ADDED
@@ -0,0 +1,264 @@
|
|
1
|
+
// Include this comment block at the top of key files in your project
|
2
|
+
/**
|
3
|
+
* ARSXY THEME DEVELOPMENT GUIDELINES
|
4
|
+
*
|
5
|
+
* This file is part of the Arsxy Theme for Jekyll. When working with this theme,
|
6
|
+
* please adhere to the following guidelines:
|
7
|
+
*
|
8
|
+
* 1. Clean, Responsive Design: Maintain minimal, distraction-free experience with
|
9
|
+
* mobile-first responsive design.
|
10
|
+
*
|
11
|
+
* 2. SEO Optimization: Preserve semantic HTML, proper heading hierarchy, and valid
|
12
|
+
* structured data.
|
13
|
+
*
|
14
|
+
* 3. GitHub Pages Compatibility: Use only GitHub Pages-compatible plugins and follow
|
15
|
+
* GitHub Pages deployment best practices.
|
16
|
+
*
|
17
|
+
* 4. Clean Code: Follow DRY principles, use meaningful naming, and maintain modular components.
|
18
|
+
*
|
19
|
+
* 5. Coding Best Practices: Adhere to accessibility standards (WCAG), ensure cross-browser
|
20
|
+
* compatibility, and proper separation of concerns.
|
21
|
+
*
|
22
|
+
* For more detailed guidelines, see the AI_GUIDELINES.md file.
|
23
|
+
*/
|
24
|
+
|
25
|
+
/* CSS Variables for light mode */
|
26
|
+
:root {
|
27
|
+
--primary-color: #{$primary-color};
|
28
|
+
--primary-color-rgb: #{$primary-color-rgb};
|
29
|
+
--secondary-color: #{$secondary-color};
|
30
|
+
// --accent-color: #{$accent-color};
|
31
|
+
--text-color: #{$text-color};
|
32
|
+
// --background-color: #{$background-color};
|
33
|
+
// --background-color-alt: #{$light-gray};
|
34
|
+
// --border-color: #{$border-color};
|
35
|
+
--link-color: #{$link-color};
|
36
|
+
--link-hover-color: #{$link-hover-color};
|
37
|
+
}
|
38
|
+
|
39
|
+
/* Dark mode CSS variables */
|
40
|
+
html.dark-mode {
|
41
|
+
--primary-color: #{lighten($primary-color, 15%)};
|
42
|
+
--primary-color-rgb: 101, 151, 230; /* Lightened RGB values for primary color */
|
43
|
+
--secondary-color: #{lighten($secondary-color, 15%)};
|
44
|
+
// --accent-color: #{lighten($accent-color, 15%)};
|
45
|
+
--text-color: #{$dark-text-color};
|
46
|
+
// --background-color: #{$dark-background};
|
47
|
+
// --background-color-alt: #{$dark-surface};
|
48
|
+
// --border-color: #{$dark-border-color};
|
49
|
+
--link-color: #{lighten($link-color, 15%)};
|
50
|
+
--link-hover-color: #{lighten($link-hover-color, 15%)};
|
51
|
+
}
|
52
|
+
|
53
|
+
/* Reset and base styles */
|
54
|
+
* {
|
55
|
+
margin: 0;
|
56
|
+
padding: 0;
|
57
|
+
box-sizing: border-box;
|
58
|
+
}
|
59
|
+
|
60
|
+
html {
|
61
|
+
font-size: $base-font-size;
|
62
|
+
scroll-behavior: smooth;
|
63
|
+
}
|
64
|
+
|
65
|
+
body {
|
66
|
+
font-family: $base-font-family;
|
67
|
+
font-size: 1rem;
|
68
|
+
line-height: $base-line-height;
|
69
|
+
color: $text-color;
|
70
|
+
background-color: $background-color;
|
71
|
+
-webkit-font-smoothing: antialiased;
|
72
|
+
-moz-osx-font-smoothing: grayscale;
|
73
|
+
overflow-x: hidden;
|
74
|
+
display: flex;
|
75
|
+
min-height: 100vh;
|
76
|
+
flex-direction: column;
|
77
|
+
}
|
78
|
+
|
79
|
+
/* Focus state for accessibility */
|
80
|
+
a:focus, button:focus, input:focus, textarea:focus, select:focus, [tabindex]:focus {
|
81
|
+
outline: 3px solid rgba($primary-color, 0.4);
|
82
|
+
outline-offset: 2px;
|
83
|
+
}
|
84
|
+
|
85
|
+
/* Modern links */
|
86
|
+
a {
|
87
|
+
color: $link-color;
|
88
|
+
text-decoration: none;
|
89
|
+
position: relative;
|
90
|
+
transition: $transition-base;
|
91
|
+
|
92
|
+
&:hover {
|
93
|
+
color: $link-hover-color;
|
94
|
+
text-decoration: none;
|
95
|
+
}
|
96
|
+
|
97
|
+
&.underline-effect {
|
98
|
+
&::after {
|
99
|
+
content: '';
|
100
|
+
position: absolute;
|
101
|
+
width: 100%;
|
102
|
+
transform: scaleX(0);
|
103
|
+
height: 2px;
|
104
|
+
bottom: -2px;
|
105
|
+
left: 0;
|
106
|
+
background-color: currentColor;
|
107
|
+
transform-origin: bottom right;
|
108
|
+
transition: transform 0.25s ease-out;
|
109
|
+
}
|
110
|
+
|
111
|
+
&:hover::after {
|
112
|
+
transform: scaleX(1);
|
113
|
+
transform-origin: bottom left;
|
114
|
+
}
|
115
|
+
}
|
116
|
+
}
|
117
|
+
|
118
|
+
/* List styles */
|
119
|
+
ul, ol {
|
120
|
+
margin-left: $spacing-md;
|
121
|
+
margin-bottom: $spacing-md;
|
122
|
+
|
123
|
+
li {
|
124
|
+
margin-bottom: $spacing-xs;
|
125
|
+
}
|
126
|
+
}
|
127
|
+
|
128
|
+
/* Block elements spacing */
|
129
|
+
p, h1, h2, h3, h4, h5, h6, blockquote, pre, table, dl, figure {
|
130
|
+
margin-bottom: $spacing-md;
|
131
|
+
}
|
132
|
+
|
133
|
+
/* Horizontal rule */
|
134
|
+
hr {
|
135
|
+
height: 1px;
|
136
|
+
border: 0;
|
137
|
+
background-color: $border-color;
|
138
|
+
margin: $spacing-lg 0;
|
139
|
+
}
|
140
|
+
|
141
|
+
/* Modern blockquote styles */
|
142
|
+
blockquote {
|
143
|
+
border-left: 4px solid $secondary-color;
|
144
|
+
padding: $spacing-md;
|
145
|
+
background-color: $light-gray;
|
146
|
+
margin-left: 0;
|
147
|
+
margin-right: 0;
|
148
|
+
font-style: italic;
|
149
|
+
border-radius: $border-radius-sm;
|
150
|
+
box-shadow: $shadow-sm;
|
151
|
+
|
152
|
+
> :last-child {
|
153
|
+
margin-bottom: 0;
|
154
|
+
}
|
155
|
+
|
156
|
+
cite {
|
157
|
+
display: block;
|
158
|
+
color: $dark-gray;
|
159
|
+
font-size: $smaller-font-size;
|
160
|
+
margin-top: $spacing-sm;
|
161
|
+
font-style: normal;
|
162
|
+
}
|
163
|
+
}
|
164
|
+
|
165
|
+
/* Images with subtle shadow */
|
166
|
+
img {
|
167
|
+
max-width: 100%;
|
168
|
+
height: auto;
|
169
|
+
vertical-align: middle;
|
170
|
+
border-radius: $border-radius;
|
171
|
+
box-shadow: $shadow-sm;
|
172
|
+
transition: $transition-base;
|
173
|
+
|
174
|
+
&:hover {
|
175
|
+
box-shadow: $shadow-md;
|
176
|
+
transform: translateY(-2px);
|
177
|
+
}
|
178
|
+
}
|
179
|
+
|
180
|
+
/* Modern tables */
|
181
|
+
table {
|
182
|
+
width: 100%;
|
183
|
+
border-collapse: separate;
|
184
|
+
border-spacing: 0;
|
185
|
+
margin-bottom: $spacing-md;
|
186
|
+
border-radius: $border-radius;
|
187
|
+
overflow: hidden;
|
188
|
+
box-shadow: $shadow-sm;
|
189
|
+
|
190
|
+
th, td {
|
191
|
+
padding: $spacing-sm $spacing-md;
|
192
|
+
border-bottom: 1px solid $border-color;
|
193
|
+
text-align: left;
|
194
|
+
}
|
195
|
+
|
196
|
+
th {
|
197
|
+
background-color: $light-gray;
|
198
|
+
font-weight: 600;
|
199
|
+
}
|
200
|
+
|
201
|
+
tr:last-child td {
|
202
|
+
border-bottom: none;
|
203
|
+
}
|
204
|
+
|
205
|
+
tr:hover {
|
206
|
+
background-color: rgba($light-gray, 0.5);
|
207
|
+
}
|
208
|
+
}
|
209
|
+
|
210
|
+
/* Form elements */
|
211
|
+
input,
|
212
|
+
button,
|
213
|
+
textarea,
|
214
|
+
select {
|
215
|
+
font-family: inherit;
|
216
|
+
font-size: inherit;
|
217
|
+
line-height: inherit;
|
218
|
+
border-radius: $border-radius-sm;
|
219
|
+
border: 1px solid $border-color;
|
220
|
+
padding: $spacing-xs $spacing-sm;
|
221
|
+
transition: $transition-base;
|
222
|
+
|
223
|
+
&:focus {
|
224
|
+
border-color: $primary-color;
|
225
|
+
box-shadow: 0 0 0 3px rgba($primary-color, 0.2);
|
226
|
+
}
|
227
|
+
}
|
228
|
+
|
229
|
+
button, .button {
|
230
|
+
background-color: $primary-color;
|
231
|
+
color: white;
|
232
|
+
border: none;
|
233
|
+
padding: $spacing-xs $spacing-md;
|
234
|
+
cursor: pointer;
|
235
|
+
font-weight: 500;
|
236
|
+
|
237
|
+
&:hover {
|
238
|
+
background-color: darken($primary-color, 5%);
|
239
|
+
transform: translateY(-1px);
|
240
|
+
box-shadow: $shadow-sm;
|
241
|
+
}
|
242
|
+
|
243
|
+
&.secondary {
|
244
|
+
background-color: $secondary-color;
|
245
|
+
|
246
|
+
&:hover {
|
247
|
+
background-color: darken($secondary-color, 5%);
|
248
|
+
}
|
249
|
+
}
|
250
|
+
|
251
|
+
&.accent {
|
252
|
+
background-color: $accent-color;
|
253
|
+
|
254
|
+
&:hover {
|
255
|
+
background-color: darken($accent-color, 5%);
|
256
|
+
}
|
257
|
+
}
|
258
|
+
}
|
259
|
+
|
260
|
+
/* Custom selection color */
|
261
|
+
::selection {
|
262
|
+
background: rgba($accent-color, 0.3);
|
263
|
+
color: $text-color;
|
264
|
+
}
|