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.
Files changed (56) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +166 -0
  4. data/_config.yml +131 -0
  5. data/_includes/footer.html +45 -0
  6. data/_includes/header.html +68 -0
  7. data/_includes/image.html +8 -0
  8. data/_includes/related-posts.html +83 -0
  9. data/_includes/search.html +32 -0
  10. data/_includes/social-sharing.html +86 -0
  11. data/_includes/toc.html +83 -0
  12. data/_layouts/default.html +76 -0
  13. data/_layouts/docs.html +90 -0
  14. data/_layouts/home.html +172 -0
  15. data/_layouts/post.html +114 -0
  16. data/_sass/_base.scss +264 -0
  17. data/_sass/_dark-mode.scss +749 -0
  18. data/_sass/_layout.scss +118 -0
  19. data/_sass/_responsive.scss +157 -0
  20. data/_sass/_syntax-highlighting.scss +147 -0
  21. data/_sass/_typography.scss +226 -0
  22. data/_sass/_utilities.scss +138 -0
  23. data/_sass/_variables.scss +63 -0
  24. data/_sass/components/_code.scss +245 -0
  25. data/_sass/components/_docs.scss +263 -0
  26. data/_sass/components/_footer.scss +170 -0
  27. data/_sass/components/_header.scss +313 -0
  28. data/_sass/components/_homepage.scss +597 -0
  29. data/_sass/components/_image.scss +22 -0
  30. data/_sass/components/_pagination.scss +146 -0
  31. data/_sass/components/_post.scss +1039 -0
  32. data/_sass/components/_related-posts.scss +70 -0
  33. data/_sass/components/_search.scss +276 -0
  34. data/_sass/components/_social-sharing.scss +95 -0
  35. data/_sass/components/_toc.scss +193 -0
  36. data/assets/css/main.scss +24 -0
  37. data/assets/images/favicon/android-chrome-192x192.png +0 -0
  38. data/assets/images/favicon/android-chrome-512x512.png +0 -0
  39. data/assets/images/favicon/apple-touch-icon.png +0 -0
  40. data/assets/images/favicon/favicon-16x16.png +0 -0
  41. data/assets/images/favicon/favicon-32x32.png +0 -0
  42. data/assets/images/favicon/favicon.ico +0 -0
  43. data/assets/images/favicon/site.webmanifest +19 -0
  44. data/assets/images/new-features-update.svg +58 -0
  45. data/assets/images/related-posts-example.svg +37 -0
  46. data/assets/images/seo-optimization.png +0 -0
  47. data/assets/images/social-sharing-sample.png +0 -0
  48. data/assets/images/ss-arsxy-theme.png +0 -0
  49. data/assets/images/table-of-content-thumbnail.png +0 -0
  50. data/assets/images/theme-demo-2.jpeg +0 -0
  51. data/assets/images/theme-demo.jpeg +0 -0
  52. data/assets/images/welcome-to-arsxy-theme.png +0 -0
  53. data/assets/js/main.js +369 -0
  54. data/assets/js/search-index.json +31 -0
  55. data/assets/js/search.js +207 -0
  56. metadata +226 -0
@@ -0,0 +1,597 @@
1
+ /* Homepage specific styling */
2
+
3
+ /* Wider wrapper for homepage */
4
+ .home-wrapper {
5
+ max-width: 1400px;
6
+ margin: 0 auto;
7
+ padding: 0 var(--spacing-md);
8
+ width: 100%;
9
+ }
10
+
11
+ /* Hero Section */
12
+ .hero-section {
13
+ display: flex;
14
+ align-items: center;
15
+ justify-content: space-between;
16
+ margin-bottom: 3rem;
17
+ padding: 2rem 0;
18
+ border-radius: 8px;
19
+ overflow: hidden;
20
+ background: linear-gradient(135deg, var(--bg-secondary), var(--bg-primary));
21
+ position: relative; /* Position relative for absolute positioning of divider */
22
+ border-bottom: 1px solid var(--border-color);
23
+
24
+ /* Add decorative divider at the bottom */
25
+ &:after {
26
+ content: '';
27
+ position: absolute;
28
+ bottom: 0;
29
+ left: 50%;
30
+ transform: translateX(-50%);
31
+ width: 80%;
32
+ height: 4px;
33
+ background: linear-gradient(90deg,
34
+ rgba(0,0,0,0),
35
+ $primary-color,
36
+ $secondary-color,
37
+ $primary-color,
38
+ rgba(0,0,0,0));
39
+ border-radius: 2px;
40
+ box-shadow: $shadow-sm;
41
+ }
42
+
43
+ /* Add a subtle wave pattern */
44
+ &:before {
45
+ content: '';
46
+ position: absolute;
47
+ bottom: 10px;
48
+ left: 0;
49
+ width: 100%;
50
+ height: 10px;
51
+ background-size: 80px 20px;
52
+ background-repeat: repeat-x;
53
+ opacity: 0.5;
54
+ }
55
+
56
+ .hero-content {
57
+ flex: 1;
58
+ padding: 2rem;
59
+
60
+ .hero-title {
61
+ font-size: 2.5rem;
62
+ margin-bottom: 1rem;
63
+ color: var(--text-title);
64
+ font-weight: 700;
65
+ line-height: 1.2;
66
+ }
67
+
68
+ .hero-subtitle {
69
+ font-size: 1.2rem;
70
+ margin-bottom: 1.5rem;
71
+ color: var(--text-secondary);
72
+ font-weight: 400;
73
+ max-width: 80%;
74
+ }
75
+
76
+ .hero-buttons {
77
+ display: flex;
78
+ gap: 1rem;
79
+
80
+ .btn {
81
+ display: inline-block;
82
+ padding: 0.75rem 1.5rem;
83
+ border-radius: 8px;
84
+ font-weight: 600;
85
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
86
+ text-decoration: none;
87
+ position: relative;
88
+ overflow: hidden;
89
+ letter-spacing: 0.5px;
90
+ box-shadow: $shadow-md;
91
+ border: none;
92
+
93
+ &::before {
94
+ content: '';
95
+ position: absolute;
96
+ top: 0;
97
+ left: -100%;
98
+ width: 100%;
99
+ height: 100%;
100
+ background: linear-gradient(
101
+ 90deg,
102
+ rgba(255, 255, 255, 0) 0%,
103
+ rgba(255, 255, 255, 0.2) 50%,
104
+ rgba(255, 255, 255, 0) 100%
105
+ );
106
+ transition: all 0.6s ease;
107
+ z-index: 1;
108
+ }
109
+
110
+ &:hover {
111
+ transform: translateY(-3px);
112
+ box-shadow: $shadow-lg;
113
+
114
+ &::before {
115
+ left: 100%;
116
+ }
117
+ }
118
+
119
+ &:active {
120
+ transform: translateY(-1px);
121
+ }
122
+
123
+ &.btn-primary {
124
+ background: linear-gradient(135deg, $accent-color, $primary-color);
125
+ color: white;
126
+ text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
127
+
128
+ &:hover {
129
+ background: linear-gradient(135deg, lighten($accent-color, 5%), lighten($primary-color, 5%));
130
+ }
131
+ }
132
+
133
+ &.btn-secondary {
134
+ background: linear-gradient(135deg, $secondary-color, darken($secondary-color, 15%));
135
+ color: white;
136
+ text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
137
+
138
+ &:hover {
139
+ background: linear-gradient(135deg, lighten($secondary-color, 5%), lighten(darken($secondary-color, 15%), 5%));
140
+ }
141
+ }
142
+ }
143
+ }
144
+ }
145
+
146
+ .hero-image {
147
+ flex: 1;
148
+ display: flex;
149
+ align-items: center;
150
+ justify-content: center;
151
+ padding: 1rem;
152
+
153
+ img {
154
+ max-width: 100%;
155
+ height: auto;
156
+ border-radius: 8px;
157
+ box-shadow: none; /* Removed shadow effect */
158
+ transition: transform 0.3s ease;
159
+
160
+ &:hover {
161
+ transform: scale(1.02);
162
+ }
163
+ }
164
+ }
165
+ }
166
+
167
+ /* Content with Sidebar Layout */
168
+ .content-with-sidebar {
169
+ display: flex;
170
+ gap: 2rem;
171
+ margin-top: 2rem;
172
+
173
+ .main-content {
174
+ flex: 3;
175
+ }
176
+
177
+ .sidebar {
178
+ flex: 1;
179
+ }
180
+ }
181
+
182
+ /* Section Headings */
183
+ .section-heading {
184
+ font-size: 1.5rem;
185
+ font-weight: 600;
186
+ margin-bottom: 1.5rem;
187
+ padding-bottom: 0.75rem;
188
+ border-bottom: 2px solid var(--border-color);
189
+ position: relative;
190
+
191
+ &:after {
192
+ content: '';
193
+ position: absolute;
194
+ bottom: -2px;
195
+ left: 0;
196
+ width: 60px;
197
+ height: 2px;
198
+ background-color: var(--primary-color);
199
+ }
200
+ }
201
+
202
+ /* Featured Posts Section */
203
+ .featured-posts {
204
+ margin-bottom: 3rem;
205
+
206
+ .featured-grid {
207
+ display: grid;
208
+ grid-template-columns: repeat(3, 1fr);
209
+ gap: 1.5rem;
210
+
211
+ .featured-card {
212
+ border-radius: 8px;
213
+ overflow: hidden;
214
+ box-shadow: none; /* Removed box-shadow */
215
+ transition: transform 0.3s ease;
216
+ background-color: var(--bg-card);
217
+ border: 1px solid var(--border-color);
218
+
219
+ &:hover {
220
+ transform: translateY(-5px);
221
+ box-shadow: none; /* Removed box-shadow on hover as well */
222
+ }
223
+
224
+ .card-image {
225
+ height: 180px;
226
+ overflow: hidden;
227
+
228
+ img {
229
+ width: 100%;
230
+ height: 100%;
231
+ object-fit: cover;
232
+ transition: transform 0.5s ease;
233
+
234
+ &:hover {
235
+ transform: scale(1.05);
236
+ }
237
+ }
238
+ }
239
+
240
+ .card-content {
241
+ padding-top: 1.25rem;
242
+
243
+ .card-meta {
244
+ display: block;
245
+ font-size: 0.85rem;
246
+ color: var(--text-muted);
247
+ margin-bottom: 0.5rem;
248
+ }
249
+
250
+ .card-title {
251
+ font-size: 1.1rem;
252
+ margin-bottom: 0.75rem;
253
+ line-height: 1.3;
254
+
255
+ a {
256
+ color: var(--text-title);
257
+ text-decoration: none;
258
+
259
+ &:hover {
260
+ color: var(--primary-color);
261
+ }
262
+ }
263
+ }
264
+
265
+ .card-excerpt {
266
+ font-size: 0.9rem;
267
+ color: var(--text-secondary);
268
+ margin-bottom: 1rem;
269
+ line-height: 1.5;
270
+ }
271
+
272
+ .read-more {
273
+ font-size: 0.9rem;
274
+ font-weight: 500;
275
+ color: var(--primary-color);
276
+ text-decoration: none;
277
+ transition: color 0.2s ease;
278
+
279
+ &:hover {
280
+ color: var(--primary-color-dark);
281
+ }
282
+ }
283
+ }
284
+ }
285
+ }
286
+ }
287
+
288
+ /* Latest Articles Section */
289
+ .latest-articles {
290
+ .post-list {
291
+ list-style: none;
292
+ padding: 0;
293
+ margin: 0;
294
+
295
+ .post-item {
296
+ margin-bottom: 1.5rem;
297
+ padding-bottom: 1.5rem;
298
+ border-bottom: 1px solid var(--border-color);
299
+
300
+ &:last-child {
301
+ border-bottom: none;
302
+ }
303
+
304
+ .post-preview {
305
+ display: flex;
306
+ gap: 1.5rem;
307
+
308
+ &.no-image {
309
+ .post-preview-content {
310
+ flex: 1;
311
+ }
312
+ }
313
+
314
+ .post-preview-content {
315
+ flex: 2;
316
+
317
+ .post-meta {
318
+ display: block;
319
+ font-size: 0.85rem;
320
+ color: var(--text-muted);
321
+ margin-bottom: 0.5rem;
322
+
323
+ .post-categories {
324
+ margin-left: 0.5rem;
325
+
326
+ a {
327
+ display: inline-block;
328
+ padding: 0.25rem 0.5rem;
329
+ margin-right: 0.25rem;
330
+ font-size: 0.75rem;
331
+ background-color: var(--bg-secondary);
332
+ color: var(--text-secondary);
333
+ border-radius: 3px;
334
+ text-decoration: none;
335
+
336
+ &:hover {
337
+ background-color: var(--primary-color);
338
+ color: white;
339
+ }
340
+ }
341
+ }
342
+ }
343
+
344
+ h3 {
345
+ font-size: 1.2rem;
346
+ margin-bottom: 0.75rem;
347
+
348
+ a {
349
+ color: var(--text-title);
350
+ text-decoration: none;
351
+
352
+ &:hover {
353
+ color: var(--primary-color);
354
+ }
355
+ }
356
+ }
357
+
358
+ .post-excerpt {
359
+ font-size: 0.95rem;
360
+ color: var(--text-secondary);
361
+ margin-bottom: 0.75rem;
362
+ line-height: 1.5;
363
+ }
364
+
365
+ .read-more {
366
+ font-size: 0.9rem;
367
+ font-weight: 500;
368
+ color: var(--primary-color);
369
+ text-decoration: none;
370
+
371
+ &:hover {
372
+ color: var(--primary-color-dark);
373
+ }
374
+ }
375
+ }
376
+
377
+ .post-preview-image {
378
+ flex: 1;
379
+
380
+ img {
381
+ width: 100%;
382
+ height: 100%;
383
+ object-fit: cover;
384
+ border-radius: 6px;
385
+ transition: transform 0.3s ease;
386
+
387
+ &:hover {
388
+ transform: scale(1.03);
389
+ }
390
+ }
391
+ }
392
+ }
393
+ }
394
+ }
395
+
396
+ .pagination {
397
+ display: flex;
398
+ justify-content: center;
399
+ margin-top: 2rem;
400
+ gap: 1rem;
401
+
402
+ a, span {
403
+ padding: 0.5rem 1rem;
404
+ border-radius: 4px;
405
+ font-size: 0.9rem;
406
+ }
407
+
408
+ a {
409
+ background-color: var(--bg-secondary);
410
+ color: var(--text-secondary);
411
+ text-decoration: none;
412
+ transition: all 0.2s ease;
413
+
414
+ &:hover {
415
+ background-color: var(--primary-color);
416
+ color: white;
417
+ }
418
+ }
419
+
420
+ .page_number {
421
+ color: var(--text-muted);
422
+ }
423
+ }
424
+ }
425
+
426
+ /* Sidebar */
427
+ .sidebar {
428
+ .sidebar-widget {
429
+ margin-bottom: 2rem;
430
+ padding: 1.5rem;
431
+ border-radius: 8px;
432
+ background-color: var(--bg-card);
433
+ border: 1px solid var(--border-color);
434
+
435
+ .widget-title {
436
+ font-size: 1.1rem;
437
+ font-weight: 600;
438
+ margin-bottom: 1rem;
439
+ padding-bottom: 0.5rem;
440
+ border-bottom: 1px solid var(--border-color);
441
+ }
442
+
443
+ &.about-widget {
444
+ p {
445
+ font-size: 0.95rem;
446
+ color: var(--text-secondary);
447
+ margin-bottom: 1rem;
448
+ line-height: 1.5;
449
+ }
450
+
451
+ .sidebar-link {
452
+ font-size: 0.9rem;
453
+ font-weight: 500;
454
+ color: var(--primary-color);
455
+ text-decoration: none;
456
+
457
+ &:hover {
458
+ color: var(--primary-color-dark);
459
+ }
460
+ }
461
+ }
462
+
463
+ &.categories-widget {
464
+ .category-list {
465
+ list-style: none;
466
+ padding: 0;
467
+ margin: 0;
468
+
469
+ li {
470
+ margin-bottom: 0.5rem;
471
+ padding-bottom: 0.5rem;
472
+ border-bottom: 1px dashed var(--border-color);
473
+
474
+ &:last-child {
475
+ margin-bottom: 0;
476
+ padding-bottom: 0;
477
+ border-bottom: none;
478
+ }
479
+
480
+ a {
481
+ display: flex;
482
+ justify-content: space-between;
483
+ align-items: center;
484
+ color: var(--text-secondary);
485
+ text-decoration: none;
486
+ transition: color 0.2s ease;
487
+
488
+ &:hover {
489
+ color: var(--primary-color);
490
+ }
491
+
492
+ span {
493
+ font-size: 0.8rem;
494
+ color: var(--text-muted);
495
+ background-color: var(--bg-secondary);
496
+ padding: 0.2rem 0.5rem;
497
+ border-radius: 12px;
498
+ }
499
+ }
500
+ }
501
+ }
502
+ }
503
+
504
+ &.popular-posts-widget {
505
+ .popular-posts {
506
+ list-style: none;
507
+ padding: 0;
508
+ margin: 0;
509
+
510
+ li {
511
+ margin-bottom: 0.75rem;
512
+ padding-bottom: 0.75rem;
513
+ border-bottom: 1px dashed var(--border-color);
514
+
515
+ &:last-child {
516
+ margin-bottom: 0;
517
+ padding-bottom: 0;
518
+ border-bottom: none;
519
+ }
520
+
521
+ .popular-post-link {
522
+ display: block;
523
+ text-decoration: none;
524
+
525
+ .popular-post-title {
526
+ display: block;
527
+ font-size: 0.95rem;
528
+ font-weight: 500;
529
+ margin-bottom: 0.25rem;
530
+ color: var(--text-secondary);
531
+ transition: color 0.2s ease;
532
+
533
+ &:hover {
534
+ color: var(--primary-color);
535
+ }
536
+ }
537
+
538
+ .popular-post-date {
539
+ display: block;
540
+ font-size: 0.75rem;
541
+ color: var(--text-muted);
542
+ }
543
+ }
544
+ }
545
+ }
546
+ }
547
+ }
548
+ }
549
+
550
+ /* Responsive adjustments for Homepage */
551
+ @media (max-width: 1024px) {
552
+ .hero-section {
553
+ flex-direction: column;
554
+ text-align: center;
555
+
556
+ .hero-content {
557
+ padding: 2rem 1rem;
558
+
559
+ .hero-subtitle {
560
+ max-width: 100%;
561
+ margin-left: auto;
562
+ margin-right: auto;
563
+ }
564
+
565
+ .hero-buttons {
566
+ justify-content: center;
567
+ }
568
+ }
569
+
570
+ .hero-image {
571
+ padding: 1rem;
572
+ }
573
+ }
574
+
575
+ .featured-posts .featured-grid {
576
+ grid-template-columns: repeat(2, 1fr);
577
+ }
578
+ }
579
+
580
+ @media (max-width: 768px) {
581
+ .content-with-sidebar {
582
+ flex-direction: column;
583
+ }
584
+
585
+ .featured-posts .featured-grid {
586
+ grid-template-columns: 1fr;
587
+ }
588
+
589
+ .latest-articles .post-preview {
590
+ flex-direction: column;
591
+
592
+ .post-preview-image {
593
+ order: -1;
594
+ margin-bottom: 1rem;
595
+ }
596
+ }
597
+ }
@@ -0,0 +1,22 @@
1
+ /*
2
+ * Image Component Styling
3
+ */
4
+
5
+ figure.image {
6
+ margin: 2rem 0;
7
+ text-align: center;
8
+
9
+ img {
10
+ max-width: 100%;
11
+ height: auto;
12
+ border-radius: 6px;
13
+ box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
14
+ }
15
+
16
+ figcaption {
17
+ margin-top: 0.75rem;
18
+ font-size: 0.9rem;
19
+ color: var(--text-muted);
20
+ font-style: italic;
21
+ }
22
+ }