whiteblog-theme 0.0.21 → 0.0.22

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 15bcb8eac8e1218457e74a8e2bff77b012042da5ba41730c9de8c268d55bb6a9
4
- data.tar.gz: 53d0f5d2713912966eb4a3753bda17a95d432b60da6a908da51b6d84161863f8
3
+ metadata.gz: 6a77ad20f8289ce362f66550a3865bddd27f6eb45de3bb71a54f3474d80c5cb5
4
+ data.tar.gz: 04a6c32ed3b448d3e08a4aaff2d0bdb0d4e514705ce279a6eff3f2368b8f4d2d
5
5
  SHA512:
6
- metadata.gz: 559c658ff801ada7a8d800f9ca782557e5b98559a179775ecfd593bbbf817e6ce22748f8a312f7c3fb86f69c35f57e0d4b22f1c7c2dd4e34210f34504180f2b6
7
- data.tar.gz: 5cbdd7aea52e9392689e33bee69967b562a2ee0a39e8fcdeb29ba87a8ab6d07dff8e4bcbf9544bcbdbd6cdbbb96ba9c1755f140496b43b7c353f3d6deae19853
6
+ metadata.gz: 9a28f58ec5b19b207d873d4ef4cd09a34e98022e96c94da1be579e5d637803beae7049c5f32a6a0a133ddb22872e4db3df5edb4c6cd2a53d5592e7b5fceaec5d
7
+ data.tar.gz: ef96dd8634156b9e283e2b913fae99e14396ba9515159a2ff18ac4a147e015334e2f3f4a72e25a5de57d423de6494640f33946407d7901088e2b5a343a94e689
@@ -1,5 +1,5 @@
1
- <div class="float-end">
2
- <a class="float-end back" href="#">
3
- <span class="chevron top"></span>
1
+ <div class="float-abajo">
2
+ <a class="float-end nav-btn top-btn" href="#">
3
+ <span class="chevron up"></span>
4
4
  </a>
5
5
  </div>
@@ -1,5 +1,5 @@
1
1
  <nav class="navbar">
2
- <div class="container">
2
+ <div class="container-nav">
3
3
  <a id="blog-title" class="navbar-brand" href="{{ "/" | relative_url }}">{{ site.title | escape }}</a>
4
4
  <div class="navbar-links">
5
5
  <span class="nav-toggle" id="js-nav-toggle">
@@ -0,0 +1,10 @@
1
+ <aside>
2
+ <section class="author-info">
3
+ <!-- <h2>Sobre el Autor</h2> -->
4
+ <img class="about-image-small" src="{{ site.author.avatar }}" alt="{{ site.author.name }}">
5
+ <h2>{{ site.author.name }}</h2>
6
+ </section>
7
+ <section class="useful-links">
8
+ <p>{{ site.author.location }}</p>
9
+ </section>
10
+ </aside>
@@ -8,14 +8,16 @@
8
8
  {% include head.html %}
9
9
 
10
10
  <body>
11
-
12
11
  {% include header.html %}
13
12
 
14
- <main>
15
- <div class="container" id="post">
16
- {{ content }}
17
- </div>
18
- </main>
13
+ <div class="main-wrapper">
14
+ {% include sidebar.html %}
15
+ <main>
16
+ <div class="container" id="post">
17
+ {{ content }}
18
+ </div>
19
+ </main>
20
+ </div>
19
21
 
20
22
  {% include footer.html %}
21
23
 
data/_layouts/home.html CHANGED
@@ -9,7 +9,7 @@ layout: default
9
9
 
10
10
  <ul>
11
11
  {% assign date_format = "%b %-d, %Y" %}
12
- {% for post in posts %}
12
+ {% for post in paginator.posts %}
13
13
  <li class="post-resume">
14
14
  <h1 class="post-resume-title">
15
15
  <a href="{{ post.url | relative_url }}">
@@ -25,6 +25,88 @@ layout: default
25
25
  {% endfor %}
26
26
  </ul>
27
27
 
28
+ {% if paginator.total_pages > 1 %}
29
+ <nav class="pagination">
30
+ {% assign first_page_path = site.paginate_path | replace: 'page:num', '' | replace: '//', '/' | absolute_url %}
31
+ <ul>
32
+ {% comment %} Link for previous page {% endcomment %}
33
+ {% if paginator.previous_page %}
34
+ {% if paginator.previous_page == 1 %}
35
+ <li>
36
+ <a href="{{ first_page_path }}">
37
+ <span class="chevron left"></span>
38
+ </a>
39
+ </li>
40
+ {% else %}
41
+ <li>
42
+ <a href="{{ site.paginate_path | replace: ':num', paginator.previous_page | replace: '//', '/' | absolute_url }}">
43
+ <span class="chevron left"></span>
44
+ </a>
45
+ </li>
46
+ {% endif %}
47
+ {% else %}
48
+ <li><a href="#" class="disabled"><span id="previous-page" aria-hidden="true"></span></a></li>
49
+ {% endif %}
50
+
51
+ {% comment %} First page {% endcomment %}
52
+ {% if paginator.page == 1 %}
53
+ <li><a href="#" class="disabled current">1</a></li>
54
+ {% else %}
55
+ <li><a href="{{ first_page_path }}">1</a></li>
56
+ {% endif %}
57
+
58
+ {% assign page_start = 2 %}
59
+ {% if paginator.page > 4 %}
60
+ {% assign page_start = paginator.page | minus: 2 %}
61
+ {% comment %} Ellipsis for truncated links {% endcomment %}
62
+ <li><a href="#" class="disabled">&hellip;</a></li>
63
+ {% endif %}
64
+
65
+ {% assign page_end = paginator.total_pages | minus: 1 %}
66
+ {% assign pages_to_end = paginator.total_pages | minus: paginator.page %}
67
+ {% if pages_to_end > 4 %}
68
+ {% assign page_end = paginator.page | plus: 2 %}
69
+ {% endif %}
70
+
71
+ {% for index in (page_start..page_end) %}
72
+ {% if index == paginator.page %}
73
+ <li><a href="{{ site.paginate_path | replace: ':num', index | replace: '//', '/' | absolute_url }}" class="disabled current">{{ index }}</a></li>
74
+ {% else %}
75
+ {% comment %} Distance from current page and this link {% endcomment %}
76
+ {% assign dist = paginator.page | minus: index %}
77
+ {% if dist < 0 %}
78
+ {% comment %} Distance must be a positive value {% endcomment %}
79
+ {% assign dist = 0 | minus: dist %}
80
+ {% endif %}
81
+ <li><a href="{{ site.paginate_path | replace: ':num', index | absolute_url }}">{{ index }}</a></li>
82
+ {% endif %}
83
+ {% endfor %}
84
+
85
+ {% comment %} Ellipsis for truncated links {% endcomment %}
86
+ {% if pages_to_end > 3 %}
87
+ <li><a href="#" class="disabled">&hellip;</a></li>
88
+ {% endif %}
89
+
90
+ {% if paginator.page == paginator.total_pages %}
91
+ <li><a href="#" class="disabled current">{{ paginator.page }}</a></li>
92
+ {% else %}
93
+ <li><a href="{{ site.paginate_path | replace: ':num', paginator.total_pages | replace: '//', '/' | absolute_url }}">{{ paginator.total_pages }}</a></li>
94
+ {% endif %}
95
+
96
+ {% comment %} Link next page {% endcomment %}
97
+ {% if paginator.next_page %}
98
+ <li>
99
+ <a href="{{ site.paginate_path | replace: ':num', paginator.next_page | replace: '//', '/' | absolute_url }}">
100
+ <span class="chevron right"></span>
101
+ </a>
102
+ </li>
103
+ {% else %}
104
+ <li><a href="#" class="disabled"><span class="chevron right" aria-hidden="true"></span></a></li>
105
+ {% endif %}
106
+ </ul>
107
+ </nav>
108
+ {% endif %}
109
+
28
110
 
29
111
  {% if site.plugins contains "jekyll-feed" %}
30
112
  <a href="{{ "/feed.xml" | relative_url }}"><div id="rss-icon" class="mb-2"></div></a>
@@ -0,0 +1,36 @@
1
+ ---
2
+ ---
3
+ <!DOCTYPE html>
4
+ <html lang="{{ page.lang | default: site.lang | default: "en" }}">
5
+
6
+ <title>{{ site.title }}</title>
7
+ <link rel="icon" type="image/x-icon" href="/assets/images/favicon.ico">
8
+ {% include head.html %}
9
+
10
+ <body>
11
+ {% include header.html %}
12
+
13
+ <div class="main-wrapper">
14
+ <main>
15
+ <div class="container" id="post">
16
+ <article class="post">
17
+ <header>
18
+ <h1>
19
+ <span class="underline">{{ page.title }}</span>
20
+ </h1>
21
+ </header>
22
+ <div id="content">
23
+ {{ content }}
24
+ </div>
25
+ </article>
26
+ </div>
27
+ </main>
28
+ </div>
29
+
30
+ {% include footer.html %}
31
+
32
+ {% include scripts.html %}
33
+
34
+ </body>
35
+
36
+ </html>
data/_layouts/post.html CHANGED
@@ -6,12 +6,17 @@ layout: default
6
6
  <div id="posts-navigation" class="row">
7
7
  <div class="previous">
8
8
  {% if page.previous.url %}
9
- <a href="{{page.previous.url}}">&laquo; {{page.previous.title}}</a>
9
+ <a href="{{page.previous.url}}" class="nav-btn prev-btn" title="{{page.previous.title}}">
10
+ <span class="chevron left"></span>
11
+
12
+ </a>
10
13
  {% endif %}
11
14
  </div>
12
15
  <div class="next">
13
16
  {% if page.next.url %}
14
- <a href="{{page.next.url}}">{{page.next.title}} &raquo;</a>
17
+ <a href="{{page.next.url}}" class="nav-btn next-btn" title="{{page.next.title}}">
18
+ <span class="chevron right"></span>
19
+ </a>
15
20
  {% endif %}
16
21
  </div>
17
22
  </div>
data/_pages/about.md CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  title: About
3
3
  author: Victor Silva
4
- layout: page
4
+ layout: page-wide
5
5
  permalink: /about/
6
6
  ---
7
7
 
@@ -10,6 +10,6 @@ permalink: /about/
10
10
  <p>Hi, I'm Victor Silva, a software engineer with a passion for web development and a love for open source. I'm currently working at <a href="https://www.mercadolibre.com">Mercado Libre</a> as a Frontend Developer. I'm also a contributor to the <a href="blog.victorsilva.dev">Victor Silva Blog</a></p>
11
11
  </div>
12
12
  <div class="center">
13
- <img class="about-image" src="/assets/images/bio-photo.jpg">
13
+ <img class="about-image" src="{{ site.author.avatar }}" alt="{{ site.author.name }}" />
14
14
  </div>
15
15
  </div>
@@ -2,14 +2,16 @@
2
2
 
3
3
  :root {
4
4
  --color-bg: #F5F5F5;
5
- --color-accent: #44cdd5;
6
- --color-primary: #614bc3;
5
+ --color-accent: #17E9E0;
6
+ --color-primary: #A64AC9;
7
7
  --color-text: #212529;
8
8
  --color-dark: #313638;
9
9
  --color-highlight: #25E498;
10
- --color-code: rgb(214, 51, 132);
10
+ --color-code: #D63384;
11
+ --color-code-bg: #282a36;
12
+ --color-notice: #CFBAE1;
11
13
  --font-main: 'Space Grotesk', system-ui, -apple-system, sans-serif;
12
- --container-width: 80%;
14
+ --container-width: 90%;
13
15
  --transition-default: all 0.3s ease-in-out;
14
16
  }
15
17
 
@@ -39,13 +41,36 @@ body {
39
41
  overflow-y: scroll;
40
42
  }
41
43
 
42
- .container {
44
+ .main-wrapper {
45
+ display: flex;
46
+ flex: 1;
47
+ gap: 2rem;
48
+ margin: 0 auto;
49
+ width: var(--container-width);
50
+ }
51
+
52
+ aside {
53
+ flex: 0 0 calc(var(--container-width) - 75%); /* Ancho fijo */
54
+ height: fit-content;
55
+ background-color: var(--color-bg);
56
+ border-right: 1px solid var(--color-primary);
57
+ margin-top: 5rem;
58
+ }
59
+
60
+ .container-nav {
43
61
  max-width: var(--container-width);
44
62
  margin: 0 auto;
45
63
  }
46
64
 
65
+ .container {
66
+ max-width: 95%;
67
+ margin: 0 auto;
68
+ }
69
+
47
70
  main {
48
71
  padding-bottom: 4rem;
72
+ // flex: 1;
73
+ // min-width: 0;
49
74
  }
50
75
 
51
76
  .navbar {
@@ -55,7 +80,7 @@ main {
55
80
  position: relative;
56
81
  }
57
82
 
58
- .navbar .container {
83
+ .navbar .container-nav {
59
84
  display: flex;
60
85
  align-items: center;
61
86
  justify-content: space-between;
@@ -266,9 +291,24 @@ a#blog-title:focus::before {
266
291
  width: 100%;
267
292
  }
268
293
 
294
+ .notice {
295
+ background-color: var(--color-notice);
296
+ border-color: var(--color-notice);
297
+ border-radius: .5rem;
298
+ border-top-width: 4px;
299
+ padding: 1rem;
300
+ margin: 1rem 0;
301
+ color: var(--color-text);
302
+ font-weight: 400;
303
+ font-size: 1rem;
304
+ font-style: normal;
305
+ width: 100%;
306
+ }
307
+
269
308
  #posts-navigation {
270
309
  padding-bottom: 1.5rem;
271
310
  bottom: 0;
311
+ min-height: 6rem;
272
312
  }
273
313
 
274
314
  p {
@@ -319,25 +359,32 @@ code {
319
359
  }
320
360
 
321
361
  blockquote {
322
- background: #f9f9f9;
323
- border-left: 10px solid #F39237;
362
+ border-top: 1px solid #F39237;
324
363
  margin: 1.5em 0;
325
364
  padding: 0.5em 1.25em;
326
- border-radius: 0.25rem;
365
+ border-bottom: 1px solid #F39237;
366
+ font-style: italic;
367
+ font-weight: 700;
368
+ font-size: 1.5rem;
369
+ width: 85%;
370
+ margin: 2rem auto;
371
+ height: 80px;
372
+ display: flex;
373
+ align-items: center;
327
374
  }
328
375
 
376
+
329
377
  blockquote p {
330
- display: inline;
378
+ margin-bottom: 0;
331
379
  }
332
380
 
333
381
  .highlight pre {
334
- border: 1px solid var(--color-text);
335
- border-radius: 0.625rem;
336
- padding: 1.75rem 1rem;
337
- margin: 0.3125rem 0;
338
- position: relative;
382
+ border-radius: 0.25rem;
383
+ padding: 1rem 1rem;
384
+ margin: 0.75rem 0;
339
385
  overflow: auto;
340
386
  white-space: pre-wrap;
387
+ background-color: var(--color-code-bg) !important;
341
388
  }
342
389
 
343
390
  .highlight pre button {
@@ -351,25 +398,6 @@ blockquote p {
351
398
  padding: 0.25rem;
352
399
  }
353
400
 
354
- .back {
355
- margin-top: 2.8125rem;
356
- font-size: 1.875rem;
357
- color: var(--color-primary);
358
- border-radius: 0.625rem;
359
- border: 2px solid var(--color-primary);
360
- padding: 0.0625rem 0.625rem;
361
- text-decoration: none;
362
- transition: var(--transition-default);
363
- }
364
-
365
- .back:hover,
366
- .back:focus {
367
- background-color: var(--color-primary);
368
- .chevron::before {
369
- color: var(--color-bg);
370
- }
371
- }
372
-
373
401
  ul {
374
402
  list-style: none;
375
403
  }
@@ -408,21 +436,97 @@ svg {
408
436
  vertical-align: unset !important
409
437
  }
410
438
 
439
+ .float-abajo {
440
+ display: flex;
441
+ justify-content: flex-end;
442
+ align-items: flex-end;
443
+ }
444
+
411
445
  .float-end {
412
446
  float: right;
413
447
  }
414
448
 
415
- .chevron::before {
449
+ .nav-btn {
450
+ display: inline-flex;
451
+ align-items: center;
452
+ justify-content: center;
453
+ border: none;
454
+ cursor: pointer;
455
+ transition: background 0.3s;
456
+ }
457
+
458
+ .nav-btn:hover {
459
+ background: var(--color-notice);
460
+ color: var(--color-text);
461
+ }
462
+
463
+ .prev-btn, .next-btn {
464
+ min-width: 100%;
465
+ min-height: 100%;
466
+ }
467
+ .prev-btn {
468
+ justify-content: flex-start;
469
+ span {
470
+ margin-left: 2.5rem;
471
+ }
472
+ }
473
+
474
+ .prev-btn:hover {
475
+ span {
476
+ transition: var(--transition-default);
477
+ margin-left: 1rem;
478
+ }
479
+ }
480
+
481
+ .next-btn {
482
+ justify-content: flex-end;
483
+ span {
484
+ margin-right: 2.5rem;
485
+ }
486
+ }
487
+
488
+ .next-btn:hover {
489
+ span {
490
+ transition: var(--transition-default);
491
+ margin-right: 1rem;
492
+ }
493
+ }
494
+
495
+ .top-btn {
496
+ width: 44px;
497
+ height: 64px;
498
+ border-radius: 4px;
499
+ }
500
+
501
+ .top-btn:hover {
502
+ span {
503
+ transition: var(--transition-default);
504
+ margin-bottom: 1.5rem;
505
+ }
506
+ }
507
+
508
+ .chevron {
509
+ color: var(--color-primary);
416
510
  border-style: solid;
417
- border-width: 0.15em 0.15em 0 0;
511
+ border-width: 0.25em 0.25em 0 0;
418
512
  content: '';
419
513
  display: inline-block;
420
- height: 0.7em;
421
- position: relative;
514
+ height: 0.8em;
515
+ width: 0.8em;
516
+ }
517
+
518
+ .chevron.right {
519
+ transform: rotate(45deg);
520
+ }
521
+
522
+ .chevron.left {
523
+ transform: rotate(-135deg);
524
+ }
525
+
526
+ .chevron.up {
422
527
  transform: rotate(-45deg);
423
- vertical-align: middle;
424
- width: 0.7em;
425
- color: var(--color-primary);
528
+ position: relative;
529
+ top: 10px;
426
530
  }
427
531
 
428
532
  .divider {
@@ -431,6 +535,62 @@ svg {
431
535
  margin: 0 auto;
432
536
  max-width: var(--container-width);
433
537
  opacity: 1;
538
+ border: none;
539
+ }
540
+
541
+ .pagination {
542
+ margin-top: 50px;
543
+ display: flex;
544
+ justify-content: center;
545
+ }
546
+
547
+ .pagination ul {
548
+ display: flex;
549
+ align-items: center;
550
+ list-style: none;
551
+ padding: 0;
552
+ margin: 0;
553
+ gap: 5px;
554
+ }
555
+
556
+ .pagination a {
557
+ display: inline-flex;
558
+ align-items: center;
559
+ justify-content: center;
560
+ min-width: 45px;
561
+ height: 45px;
562
+ padding: 0 10px;
563
+ color: var(--color-primary);
564
+ text-decoration: none;
565
+ border-radius: 25px;
566
+ transition: background 0.3s;
567
+ .chevron.right {
568
+ position: relative;
569
+ left: -2px;
570
+ }
571
+ .chevron.left {
572
+ position: relative;
573
+ left: 2px;
574
+ }
575
+ }
576
+
577
+ .pagination a:hover:not(.disabled) {
578
+ background: var(--color-code);
579
+ color: var(--color-bg);
580
+ .chevron {
581
+ border-color: var(--color-bg);
582
+ }
583
+ }
584
+
585
+ .pagination a.current {
586
+ background: var(--color-primary);
587
+ color: white;
588
+ }
589
+
590
+ .pagination a.disabled {
591
+ opacity: 0.5;
592
+ cursor: none;
593
+ pointer-events:none;
434
594
  }
435
595
 
436
596
  .about-image {
@@ -441,6 +601,14 @@ svg {
441
601
  object-fit: cover;
442
602
  }
443
603
 
604
+ .about-image-small {
605
+ border-radius: 50%;
606
+ width: 90px;
607
+ height: 90px;
608
+ margin: 1rem 0;
609
+ object-fit: cover;
610
+ }
611
+
444
612
  .badge {
445
613
  color: var(--color-bg);
446
614
  background-color: var(--color-primary);
@@ -461,7 +629,7 @@ svg {
461
629
  margin: 2em 0em;
462
630
  width: 50%;
463
631
  font-size: 16px;
464
- line-height: 24px;
632
+ line-height: 30px;
465
633
  padding: 0.2em;
466
634
  }
467
635
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: whiteblog-theme
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.21
4
+ version: 0.0.22
5
5
  platform: ruby
6
6
  authors:
7
7
  - Victor Silva
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-02-10 00:00:00.000000000 Z
11
+ date: 2025-02-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -84,11 +84,13 @@ files:
84
84
  - _includes/header.html
85
85
  - _includes/scripts.html
86
86
  - _includes/sharepost.html
87
+ - _includes/sidebar.html
87
88
  - _includes/video
88
89
  - _layouts/allposts.html
89
90
  - _layouts/categories.html
90
91
  - _layouts/default.html
91
92
  - _layouts/home.html
93
+ - _layouts/page-wide.html
92
94
  - _layouts/page.html
93
95
  - _layouts/post.html
94
96
  - _pages/about.md