jekyll-theme-zer0 0.1.8 → 0.2.1
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/CHANGELOG.md +144 -0
- data/README.md +504 -316
- data/_data/navigation/main.yml +15 -11
- data/_data/navigation/quickstart.yml +12 -0
- data/_includes/README.md +97 -0
- data/_includes/{info-section.html → components/info-section.html} +4 -4
- data/_includes/content/giscus.html +60 -0
- data/_includes/content/intro.html +66 -0
- data/_includes/{sitemap.html → content/sitemap.html} +1 -1
- data/_includes/{toc.html → content/toc.html} +1 -1
- data/_includes/{branding.html → core/branding.html} +2 -2
- data/_includes/core/footer.html +167 -0
- data/_includes/core/head.html +158 -0
- data/_includes/core/header.html +125 -0
- data/_includes/landing/landing-install-cards.html +52 -0
- data/_includes/landing/landing-quick-links.html +28 -0
- data/_includes/navigation/navbar.html +96 -0
- data/_includes/navigation/sidebar-left.html +83 -0
- data/_includes/{sidebar-right.html → navigation/sidebar-right.html} +3 -10
- data/_layouts/README.md +198 -0
- data/_layouts/blog.html +252 -143
- data/_layouts/collection.html +108 -27
- data/_layouts/default.html +74 -26
- data/_layouts/home.html +59 -9
- data/_layouts/index.html +47 -1
- data/_layouts/journals.html +11 -19
- data/_layouts/landing.html +148 -12
- data/_layouts/root.html +65 -30
- data/assets/js/back-to-top.js +16 -19
- metadata +65 -41
- data/_includes/footer.html +0 -57
- data/_includes/giscus.html +0 -16
- data/_includes/head.html +0 -95
- data/_includes/header.html +0 -79
- data/_includes/intro.html +0 -68
- data/_includes/navbar.html +0 -34
- data/_includes/sidebar-left.html +0 -41
- data/_includes/toc +0 -7
- data/_layouts/javascript.html +0 -8
- /data/_includes/{google-analytics.html → analytics/google-analytics.html} +0 -0
- /data/_includes/{google-tag-manager-body.html → analytics/google-tag-manager-body.html} +0 -0
- /data/_includes/{google-tag-manager-head.html → analytics/google-tag-manager-head.html} +0 -0
- /data/_includes/{dev-shortcuts.html → components/dev-shortcuts.html} +0 -0
- /data/_includes/{halfmoon.html → components/halfmoon.html} +0 -0
- /data/_includes/{js-cdn.html → components/js-cdn.html} +0 -0
- /data/_includes/{powered-by.html → components/powered-by.html} +0 -0
- /data/_includes/{quick-index.html → components/quick-index.html} +0 -0
- /data/_includes/{searchbar.html → components/searchbar.html} +0 -0
- /data/_includes/{svg.html → components/svg.html} +0 -0
- /data/_includes/{zer0-env-var.html → components/zer0-env-var.html} +0 -0
- /data/_includes/{seo.html → content/seo.html} +0 -0
- /data/_includes/{style.html → docs/bootstrap-docs.html} +0 -0
- /data/_includes/{breadcrumbs.html → navigation/breadcrumbs.html} +0 -0
- /data/_includes/{nav_list.html → navigation/nav_list.html} +0 -0
- /data/_includes/{sidebar-categories.html → navigation/sidebar-categories.html} +0 -0
- /data/_includes/{sidebar-folders.html → navigation/sidebar-folders.html} +0 -0
data/_layouts/default.html
CHANGED
|
@@ -1,37 +1,85 @@
|
|
|
1
1
|
---
|
|
2
2
|
layout: root
|
|
3
3
|
---
|
|
4
|
-
<!--
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
<!--
|
|
5
|
+
===================================================================
|
|
6
|
+
DEFAULT LAYOUT - Standard content layout with sidebars
|
|
7
|
+
===================================================================
|
|
8
|
+
|
|
9
|
+
File: default.html
|
|
10
|
+
Path: _layouts/default.html
|
|
11
|
+
Inherits: root.html
|
|
12
|
+
Purpose: Primary content layout with sidebar navigation and table of contents
|
|
13
|
+
|
|
14
|
+
Template Logic:
|
|
15
|
+
- Creates a responsive three-column layout using Bootstrap grid
|
|
16
|
+
- Left sidebar: Site navigation and content outline (collapsible on mobile)
|
|
17
|
+
- Center: Main content area with page title and body content
|
|
18
|
+
- Right sidebar: Table of contents and page shortcuts (hidden on mobile)
|
|
19
|
+
- Implements scroll spy for navigation highlighting
|
|
20
|
+
- Responsive design that stacks vertically on mobile devices
|
|
21
|
+
|
|
22
|
+
Layout Structure:
|
|
23
|
+
1. Container wrapper with Bootstrap responsive classes
|
|
24
|
+
2. Left sidebar (bd-sidebar) - Navigation and outline
|
|
25
|
+
3. Main content area (bd-main) with:
|
|
26
|
+
- Intro section (page title, metadata)
|
|
27
|
+
- Right sidebar (bd-toc) - Table of contents
|
|
28
|
+
- Content area (bd-content) - Main page content
|
|
29
|
+
|
|
30
|
+
Dependencies:
|
|
31
|
+
- sidebar-left.html: Site navigation and content outline
|
|
32
|
+
- intro.html: Page title, breadcrumbs, and metadata
|
|
33
|
+
- sidebar-right.html: Table of contents and page shortcuts
|
|
34
|
+
|
|
35
|
+
Bootstrap Classes Used:
|
|
36
|
+
- container-xxl: Extra large responsive container
|
|
37
|
+
- bd-gutter: Custom Bootstrap spacing
|
|
38
|
+
- bd-layout: Custom layout utility class
|
|
39
|
+
- bd-sidebar: Custom sidebar styling
|
|
40
|
+
- bd-main: Main content area
|
|
41
|
+
- bd-toc: Table of contents styling
|
|
42
|
+
- bd-content: Content area styling
|
|
43
|
+
===================================================================
|
|
8
44
|
-->
|
|
9
45
|
|
|
10
|
-
<!--
|
|
11
|
-
|
|
12
|
-
<!--
|
|
46
|
+
<!-- ================================================ -->
|
|
47
|
+
<!-- MAIN LAYOUT CONTAINER -->
|
|
48
|
+
<!-- Bootstrap responsive container with custom grid -->
|
|
49
|
+
<!-- ================================================ -->
|
|
13
50
|
<div class="container-xxl bd-gutter mt-3 my-md-4 bd-layout">
|
|
14
51
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
52
|
+
<!-- ================================ -->
|
|
53
|
+
<!-- LEFT SIDEBAR - Navigation -->
|
|
54
|
+
<!-- ================================ -->
|
|
55
|
+
<!-- Site navigation, content outline, and offcanvas menu for mobile -->
|
|
56
|
+
<aside class="bd-sidebar">
|
|
57
|
+
{% include navigation/sidebar-left.html %}
|
|
58
|
+
</aside>
|
|
20
59
|
|
|
21
|
-
<!--
|
|
22
|
-
|
|
60
|
+
<!-- ================================ -->
|
|
61
|
+
<!-- MAIN CONTENT AREA -->
|
|
62
|
+
<!-- ================================ -->
|
|
63
|
+
<!-- Primary content section with scroll spy for table of contents navigation -->
|
|
64
|
+
<main class="bd-main order-1" data-spy="scroll" data-bs-target="toc-content" data-offset="0">
|
|
23
65
|
|
|
24
|
-
|
|
25
|
-
|
|
66
|
+
<!-- Page introduction: title, breadcrumbs, metadata -->
|
|
67
|
+
{% include content/intro.html %}
|
|
26
68
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
69
|
+
<!-- =============================== -->
|
|
70
|
+
<!-- RIGHT SIDEBAR - Table of Contents -->
|
|
71
|
+
<!-- =============================== -->
|
|
72
|
+
<!-- Page outline, shortcuts, and related links (hidden on mobile) -->
|
|
73
|
+
<div class="bd-toc text-body-secondary">
|
|
74
|
+
{% include navigation/sidebar-right.html %}
|
|
75
|
+
</div>
|
|
76
|
+
|
|
77
|
+
<!-- =============================== -->
|
|
78
|
+
<!-- MAIN CONTENT BODY -->
|
|
79
|
+
<!-- =============================== -->
|
|
80
|
+
<!-- Where the actual page content is rendered -->
|
|
81
|
+
<div id="main-content" class="bd-content ps-lg-2">
|
|
82
|
+
{{ content }}
|
|
83
|
+
</div>
|
|
84
|
+
</main>
|
|
37
85
|
</div>
|
data/_layouts/home.html
CHANGED
|
@@ -1,16 +1,66 @@
|
|
|
1
1
|
---
|
|
2
2
|
layout: root
|
|
3
3
|
---
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
<!--
|
|
5
|
+
===================================================================
|
|
6
|
+
HOME LAYOUT - Homepage template with minimal structure
|
|
7
|
+
===================================================================
|
|
8
|
+
|
|
9
|
+
File: home.html
|
|
10
|
+
Path: _layouts/home.html
|
|
11
|
+
Inherits: root.html
|
|
12
|
+
Purpose: Clean, minimal layout for the site homepage
|
|
11
13
|
|
|
12
|
-
|
|
14
|
+
Template Logic:
|
|
15
|
+
- Provides a simple container for homepage content
|
|
16
|
+
- Conditionally displays page title if specified in frontmatter
|
|
17
|
+
- Includes RSS feed subscription link for blog functionality
|
|
18
|
+
- Bypasses the sidebar navigation system for a cleaner look
|
|
19
|
+
- Focuses on content presentation without distractions
|
|
20
|
+
|
|
21
|
+
Layout Structure:
|
|
22
|
+
1. Main home container wrapper
|
|
23
|
+
2. Optional page title (controlled by frontmatter)
|
|
24
|
+
3. Main content area (from Markdown or HTML)
|
|
25
|
+
4. RSS subscription link for blog updates
|
|
26
|
+
|
|
27
|
+
Usage:
|
|
28
|
+
- Set layout: home in page frontmatter
|
|
29
|
+
- Optionally include title: "Page Title" for display
|
|
30
|
+
- Content can include hero sections, feature highlights, etc.
|
|
31
|
+
|
|
32
|
+
Design Philosophy:
|
|
33
|
+
- Minimal structure allows for maximum content flexibility
|
|
34
|
+
- RSS link maintains blog connectivity
|
|
35
|
+
- Clean presentation suitable for landing pages
|
|
36
|
+
===================================================================
|
|
37
|
+
-->
|
|
13
38
|
|
|
14
|
-
|
|
39
|
+
<!-- ================================ -->
|
|
40
|
+
<!-- HOME PAGE CONTAINER -->
|
|
41
|
+
<!-- ================================ -->
|
|
42
|
+
<div class="home">
|
|
43
|
+
<!-- ========================== -->
|
|
44
|
+
<!-- OPTIONAL PAGE TITLE -->
|
|
45
|
+
<!-- ========================== -->
|
|
46
|
+
<!-- Display title only if specified in page frontmatter -->
|
|
47
|
+
<!-- Usage: Add 'title: "Homepage Title"' to page frontmatter -->
|
|
48
|
+
{%- if page.title -%}
|
|
49
|
+
<h1 class="page-heading">{{ page.title }}</h1>
|
|
50
|
+
{%- endif -%}
|
|
51
|
+
|
|
52
|
+
<!-- ========================== -->
|
|
53
|
+
<!-- MAIN CONTENT AREA -->
|
|
54
|
+
<!-- ========================== -->
|
|
55
|
+
<!-- Homepage content rendered from Markdown or HTML -->
|
|
56
|
+
<!-- Can include hero sections, feature cards, etc. -->
|
|
57
|
+
{{ content }}
|
|
15
58
|
|
|
59
|
+
<!-- ========================== -->
|
|
60
|
+
<!-- RSS SUBSCRIPTION LINK -->
|
|
61
|
+
<!-- ========================== -->
|
|
62
|
+
<!-- Provides easy access to RSS feed for blog updates -->
|
|
63
|
+
<p class="rss-subscribe">
|
|
64
|
+
subscribe <a href="{{ "/feed.xml" | relative_url }}">via RSS</a>
|
|
65
|
+
</p>
|
|
16
66
|
</div>
|
data/_layouts/index.html
CHANGED
|
@@ -1,8 +1,54 @@
|
|
|
1
1
|
---
|
|
2
2
|
layout: root
|
|
3
3
|
---
|
|
4
|
-
<!--
|
|
4
|
+
<!--
|
|
5
|
+
===================================================================
|
|
6
|
+
INDEX LAYOUT - Search indexing template
|
|
7
|
+
===================================================================
|
|
8
|
+
|
|
9
|
+
File: index.html
|
|
10
|
+
Path: _layouts/index.html
|
|
11
|
+
Inherits: root.html
|
|
12
|
+
Purpose: Specialized layout for search functionality and site indexing
|
|
13
|
+
|
|
14
|
+
Template Logic:
|
|
15
|
+
- Provides a clean container for search-related content
|
|
16
|
+
- Uses fluid container for full-width search interfaces
|
|
17
|
+
- Implements proper spacing with Bootstrap padding classes
|
|
18
|
+
- Bypasses sidebar navigation for focused search experience
|
|
19
|
+
|
|
20
|
+
Layout Features:
|
|
21
|
+
- Full-width fluid container for search components
|
|
22
|
+
- Responsive padding that adapts to screen size
|
|
23
|
+
- Clean, minimal structure to highlight search functionality
|
|
24
|
+
- Semantic HTML5 structure with proper search context
|
|
25
|
+
|
|
26
|
+
Usage:
|
|
27
|
+
- Typically used for search result pages
|
|
28
|
+
- Site indexing and content discovery pages
|
|
29
|
+
- Archive pages with search functionality
|
|
30
|
+
- Any page requiring full-width content presentation
|
|
31
|
+
|
|
32
|
+
Search Integration:
|
|
33
|
+
- Can be integrated with Algolia, Lunr.js, or other search engines
|
|
34
|
+
- Provides container for search forms, filters, and results
|
|
35
|
+
- Supports dynamic content loading and filtering
|
|
36
|
+
|
|
37
|
+
Accessibility:
|
|
38
|
+
- Uses semantic search-index ID for screen readers
|
|
39
|
+
- Provides proper container context for search tools
|
|
40
|
+
- Maintains consistent navigation patterns
|
|
41
|
+
===================================================================
|
|
42
|
+
-->
|
|
5
43
|
|
|
44
|
+
<!-- ================================ -->
|
|
45
|
+
<!-- SEARCH INDEX CONTAINER -->
|
|
46
|
+
<!-- ================================ -->
|
|
47
|
+
<!-- Full-width container optimized for search interfaces and content discovery -->
|
|
6
48
|
<div id="search-index" class="container-fluid pt-5 py-5">
|
|
49
|
+
<!-- ========================== -->
|
|
50
|
+
<!-- SEARCH CONTENT AREA -->
|
|
51
|
+
<!-- ========================== -->
|
|
52
|
+
<!-- Main content area for search forms, results, filters, and indexing -->
|
|
7
53
|
{{ content }}
|
|
8
54
|
</div>
|
data/_layouts/journals.html
CHANGED
|
@@ -1,41 +1,33 @@
|
|
|
1
1
|
---
|
|
2
2
|
layout: default
|
|
3
3
|
---
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
<!--
|
|
5
|
+
Simple journals layout for debugging stack overflow issue
|
|
6
|
+
-->
|
|
6
7
|
|
|
7
8
|
<div id="main" role="main">
|
|
8
9
|
<div class="archive">
|
|
9
|
-
|
|
10
|
-
<h1 id="page-title" class="">{{ page.title }}</h1>
|
|
11
|
-
{% endunless %}
|
|
10
|
+
<h1 id="page-title">{{ page.title }}</h1>
|
|
12
11
|
{{ content }}
|
|
13
12
|
</div>
|
|
14
|
-
|
|
13
|
+
|
|
14
|
+
<!-- Simple navigation without complex logic -->
|
|
15
15
|
<nav aria-label="Page navigation">
|
|
16
16
|
<ul class="pagination pagination-lg justify-content-center">
|
|
17
17
|
<li class="page-item">
|
|
18
18
|
{% if page.previous %}
|
|
19
|
-
<a class="page-link" href="{{ page.previous.url
|
|
20
|
-
Previous: {{ page.previous.title }}
|
|
21
|
-
</a>
|
|
19
|
+
<a class="page-link" href="{{ page.previous.url }}">Previous</a>
|
|
22
20
|
{% else %}
|
|
23
|
-
<
|
|
21
|
+
<span class="page-link disabled">Previous</span>
|
|
24
22
|
{% endif %}
|
|
25
23
|
</li>
|
|
26
24
|
<li class="page-item">
|
|
27
25
|
{% if page.next %}
|
|
28
|
-
<a class="page-link" href="{{ page.next.url
|
|
29
|
-
Next: {{ page.next.title }}
|
|
30
|
-
</a>
|
|
26
|
+
<a class="page-link" href="{{ page.next.url }}">Next</a>
|
|
31
27
|
{% else %}
|
|
32
|
-
<
|
|
28
|
+
<span class="page-link disabled">Next</span>
|
|
33
29
|
{% endif %}
|
|
34
30
|
</li>
|
|
35
31
|
</ul>
|
|
36
32
|
</nav>
|
|
37
|
-
</div>
|
|
38
|
-
|
|
39
|
-
{% if page.comments %}
|
|
40
|
-
{% include giscus.html %}
|
|
41
|
-
{% endif %}
|
|
33
|
+
</div>
|
data/_layouts/landing.html
CHANGED
|
@@ -1,18 +1,154 @@
|
|
|
1
1
|
---
|
|
2
2
|
layout: root
|
|
3
3
|
---
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
<!--
|
|
5
|
+
===================================================================
|
|
6
|
+
LANDING LAYOUT - Welcome page for first-time visitors
|
|
7
|
+
===================================================================
|
|
8
|
+
|
|
9
|
+
File: landing.html
|
|
10
|
+
Path: _layouts/landing.html
|
|
11
|
+
Inherits: root.html
|
|
12
|
+
Purpose: Create an engaging first impression for visitors discovering the site
|
|
13
|
+
|
|
14
|
+
Template Logic:
|
|
15
|
+
- Hero section with clear value proposition
|
|
16
|
+
- Feature highlights with visual appeal
|
|
17
|
+
- Quick navigation to key areas
|
|
18
|
+
- Professional presentation with Bootstrap components
|
|
19
|
+
- Mobile-responsive design for all devices
|
|
20
|
+
|
|
21
|
+
Layout Features:
|
|
22
|
+
- Hero banner with call-to-action
|
|
23
|
+
- Feature cards with icons and descriptions
|
|
24
|
+
- Quick start guide and navigation
|
|
25
|
+
- Social proof and credibility indicators
|
|
26
|
+
- Clean, professional aesthetic
|
|
27
|
+
|
|
28
|
+
Target Audience:
|
|
29
|
+
- First-time visitors exploring the repository
|
|
30
|
+
- Developers looking for Jekyll themes
|
|
31
|
+
- Users seeking Docker-optimized solutions
|
|
32
|
+
- People interested in error-free development
|
|
33
|
+
|
|
34
|
+
Conversion Goals:
|
|
35
|
+
- Encourage exploration of documentation
|
|
36
|
+
- Drive adoption of the theme
|
|
37
|
+
- Build trust through professional presentation
|
|
38
|
+
- Guide users to relevant resources
|
|
11
39
|
|
|
12
|
-
|
|
40
|
+
Dependencies:
|
|
41
|
+
- Bootstrap 5 components and utilities
|
|
42
|
+
- Custom CSS for enhanced styling
|
|
43
|
+
- Responsive images and icons
|
|
44
|
+
===================================================================
|
|
45
|
+
-->
|
|
46
|
+
|
|
47
|
+
<!-- ================================ -->
|
|
48
|
+
<!-- HERO SECTION -->
|
|
49
|
+
<!-- ================================ -->
|
|
50
|
+
<div class="bg-primary text-white">
|
|
51
|
+
<div class="container-xl py-5 px-4 px-md-5">
|
|
52
|
+
<div class="row align-items-center min-vh-50 g-4 g-lg-5">
|
|
53
|
+
<div class="col-lg-6">
|
|
54
|
+
<h1 class="display-4 fw-bold mb-3">{{ page.title }}</h1>
|
|
55
|
+
<p class="lead mb-4">{{ page.description }}</p>
|
|
56
|
+
<div class="d-flex flex-column flex-md-row gap-3">
|
|
57
|
+
<a href="#get-started" class="btn btn-light btn-lg">
|
|
58
|
+
<i class="bi bi-rocket-takeoff me-2"></i>Get Started
|
|
59
|
+
</a>
|
|
60
|
+
<a href="#features" class="btn btn-outline-light btn-lg">
|
|
61
|
+
<i class="bi bi-list-check me-2"></i>Features
|
|
62
|
+
</a>
|
|
63
|
+
<a href="{{ site.resources.github_repo }}" class="btn btn-outline-light btn-lg">
|
|
64
|
+
<i class="bi bi-github me-2"></i>GitHub
|
|
65
|
+
</a>
|
|
66
|
+
</div>
|
|
67
|
+
</div>
|
|
68
|
+
<div class="col-lg-6 text-center">
|
|
69
|
+
{% if page.hero_image %}
|
|
70
|
+
<img src="{{ page.hero_image }}" alt="{{ page.title }}" class="img-fluid rounded shadow-lg">
|
|
71
|
+
{% else %}
|
|
72
|
+
<div class="bg-light rounded p-5 text-dark">
|
|
73
|
+
<i class="bi bi-code-square display-1"></i>
|
|
74
|
+
<p class="mt-3 mb-0">Jekyll Theme</p>
|
|
75
|
+
</div>
|
|
76
|
+
{% endif %}
|
|
77
|
+
</div>
|
|
78
|
+
</div>
|
|
79
|
+
</div>
|
|
80
|
+
</div>
|
|
81
|
+
|
|
82
|
+
<!-- ================================ -->
|
|
83
|
+
<!-- MAIN CONTENT AREA -->
|
|
84
|
+
<!-- ================================ -->
|
|
85
|
+
{% include landing/landing-quick-links.html %}
|
|
86
|
+
|
|
87
|
+
<div class="container-xl py-5 px-4 px-md-5">
|
|
88
|
+
{{ content }}
|
|
89
|
+
</div>
|
|
90
|
+
|
|
91
|
+
<!-- ================================ -->
|
|
92
|
+
<!-- FEATURES SECTION -->
|
|
93
|
+
<!-- ================================ -->
|
|
94
|
+
<div class="py-5 bg-body-tertiary" id="features">
|
|
95
|
+
<div class="container-xl px-4 px-md-5">
|
|
96
|
+
<div class="row text-center mb-5">
|
|
97
|
+
<div class="col-lg-8 mx-auto">
|
|
98
|
+
<h2 class="display-5 fw-bold text-body-emphasis">Why Choose zer0-mistakes?</h2>
|
|
99
|
+
<p class="lead text-body-secondary">Built for developers who value reliability, simplicity, and modern workflows</p>
|
|
100
|
+
</div>
|
|
101
|
+
</div>
|
|
102
|
+
|
|
103
|
+
<div class="row g-4">
|
|
104
|
+
<div class="col-md-4">
|
|
105
|
+
<div class="card h-100 border-0 shadow-sm">
|
|
106
|
+
<div class="card-body text-center p-4">
|
|
107
|
+
<div class="bg-primary text-white rounded-circle d-inline-flex align-items-center justify-content-center mb-3" style="width: 60px; height: 60px;">
|
|
108
|
+
<i class="bi bi-shield-check fs-4"></i>
|
|
109
|
+
</div>
|
|
110
|
+
<h5 class="card-title text-body-emphasis">Error-Free Development</h5>
|
|
111
|
+
<p class="card-text text-body-secondary">Built-in error handling and self-healing installation process ensures a smooth development experience.</p>
|
|
112
|
+
</div>
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
|
|
116
|
+
<div class="col-md-4">
|
|
117
|
+
<div class="card h-100 border-0 shadow-sm">
|
|
118
|
+
<div class="card-body text-center p-4">
|
|
119
|
+
<div class="bg-success text-white rounded-circle d-inline-flex align-items-center justify-content-center mb-3" style="width: 60px; height: 60px;">
|
|
120
|
+
<i class="bi bi-boxes fs-4"></i>
|
|
121
|
+
</div>
|
|
122
|
+
<h5 class="card-title text-body-emphasis">Docker-First Approach</h5>
|
|
123
|
+
<p class="card-text text-body-secondary">Cross-platform compatibility with zero local configuration. Works on Apple Silicon, Intel, and Linux.</p>
|
|
124
|
+
</div>
|
|
125
|
+
</div>
|
|
126
|
+
</div>
|
|
127
|
+
|
|
128
|
+
<div class="col-md-4">
|
|
129
|
+
<div class="card h-100 border-0 shadow-sm">
|
|
130
|
+
<div class="card-body text-center p-4">
|
|
131
|
+
<div class="bg-info text-white rounded-circle d-inline-flex align-items-center justify-content-center mb-3" style="width: 60px; height: 60px;">
|
|
132
|
+
<i class="bi bi-lightning-charge fs-4"></i>
|
|
133
|
+
</div>
|
|
134
|
+
<h5 class="card-title text-body-emphasis">AI-Powered Setup</h5>
|
|
135
|
+
<p class="card-text text-body-secondary">Intelligent installation automation that detects and fixes common issues automatically.</p>
|
|
136
|
+
</div>
|
|
137
|
+
</div>
|
|
138
|
+
</div>
|
|
139
|
+
</div>
|
|
140
|
+
</div>
|
|
13
141
|
</div>
|
|
14
142
|
|
|
15
|
-
<!--
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
143
|
+
<!-- ================================ -->
|
|
144
|
+
<!-- QUICK START SECTION -->
|
|
145
|
+
<!-- ================================ -->
|
|
146
|
+
<div class="container-xl py-5 px-4 px-md-5" id="get-started">
|
|
147
|
+
<div class="row">
|
|
148
|
+
<div class="col-12 col-xl-10 mx-auto text-center">
|
|
149
|
+
<h2 class="display-5 fw-bold mb-4">Ready to Get Started?</h2>
|
|
150
|
+
<p class="lead mb-4">Choose your preferred installation method and be up and running in minutes</p>
|
|
151
|
+
{% include landing/landing-install-cards.html %}
|
|
152
|
+
</div>
|
|
153
|
+
</div>
|
|
154
|
+
</div>
|
data/_layouts/root.html
CHANGED
|
@@ -1,54 +1,89 @@
|
|
|
1
1
|
---
|
|
2
2
|
---
|
|
3
3
|
<!--
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
4
|
+
===================================================================
|
|
5
|
+
ROOT LAYOUT - Base template for the Zer0 Mistakes Jekyll Theme
|
|
6
|
+
===================================================================
|
|
7
|
+
|
|
8
|
+
File: root.html
|
|
9
|
+
Path: _layouts/root.html
|
|
10
|
+
Purpose: Base HTML structure that all other layouts inherit from
|
|
11
|
+
|
|
12
|
+
Template Logic:
|
|
13
|
+
- Sets up the HTML document structure with Bootstrap 5 dark theme
|
|
14
|
+
- Includes essential meta tags and SEO optimization
|
|
15
|
+
- Loads external dependencies (CSS, JS, fonts)
|
|
16
|
+
- Provides the main content wrapper for child layouts
|
|
17
|
+
- Implements scroll spy for table of contents navigation
|
|
18
|
+
|
|
19
|
+
Dependencies:
|
|
20
|
+
- head.html: Meta tags, stylesheets, and external resources
|
|
21
|
+
- svg.html: Inline SVG symbols for icons
|
|
22
|
+
- header.html: Main navigation and site branding
|
|
23
|
+
- info-section.html: Site-wide announcements or notices
|
|
24
|
+
- footer.html: Site footer with links and copyright
|
|
25
|
+
- js-cdn.html: JavaScript dependencies and custom scripts
|
|
26
|
+
|
|
27
|
+
Theme: Zer0 Mistakes Jekyll Theme v0.1
|
|
28
|
+
Author: Amr Abdel-Motaleb
|
|
29
|
+
Copyright: 2024 - it-journey.com | @bamr87
|
|
30
|
+
===================================================================
|
|
12
31
|
-->
|
|
13
32
|
|
|
14
33
|
<!doctype html>
|
|
15
|
-
<html lang="{{ site.locale | slice: 0,2 | default: en }}" class="no-js" data-bs-theme="dark">
|
|
34
|
+
<html lang="{{ site.locale | slice: 0,2 | default: 'en' }}" class="no-js" data-bs-theme="dark">
|
|
16
35
|
<head>
|
|
17
|
-
<!--
|
|
18
|
-
|
|
36
|
+
<!-- =============================================== -->
|
|
37
|
+
<!-- HEAD SECTION: Meta tags, styles, and SEO setup -->
|
|
38
|
+
<!-- =============================================== -->
|
|
39
|
+
|
|
40
|
+
<!-- Core site metadata, stylesheets, and external dependencies -->
|
|
41
|
+
{% include core/head.html %}
|
|
19
42
|
|
|
20
|
-
<!-- Jekyll
|
|
43
|
+
<!-- Jekyll SEO plugin for enhanced search engine optimization -->
|
|
44
|
+
<!-- Documentation: https://github.com/jekyll/jekyll-seo-tag -->
|
|
21
45
|
{% seo %}
|
|
22
|
-
|
|
23
46
|
</head>
|
|
47
|
+
|
|
24
48
|
<body data-bs-spy="scroll" data-bs-target="#TableOfContents">
|
|
49
|
+
<!-- ============================================== -->
|
|
50
|
+
<!-- BODY SECTION: Site structure and content area -->
|
|
51
|
+
<!-- ============================================== -->
|
|
52
|
+
|
|
53
|
+
<!-- Inline SVG symbols for consistent iconography throughout the site -->
|
|
54
|
+
{% include components/svg.html %}
|
|
25
55
|
|
|
26
|
-
<!--
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
<!-- _includes/google-tag-manager-body.html - SEO -->
|
|
30
|
-
|
|
56
|
+
<!-- Google Tag Manager body code for analytics (if configured) -->
|
|
57
|
+
<!-- Note: Currently commented out - uncomment when GTM is needed -->
|
|
31
58
|
|
|
32
|
-
<!--
|
|
33
|
-
{% include header.html %}
|
|
59
|
+
<!-- Main site header with navigation, branding, and search functionality -->
|
|
60
|
+
{% include core/header.html %}
|
|
34
61
|
|
|
35
|
-
|
|
62
|
+
<!-- Site-wide information banner or announcement section -->
|
|
63
|
+
{% include components/info-section.html %}
|
|
36
64
|
|
|
37
|
-
<!--
|
|
65
|
+
<!-- ======================== -->
|
|
66
|
+
<!-- MAIN CONTENT AREA -->
|
|
67
|
+
<!-- ======================== -->
|
|
68
|
+
<!-- This is where child layouts inject their specific content -->
|
|
38
69
|
<div>
|
|
39
70
|
{{ content }}
|
|
40
71
|
</div>
|
|
41
72
|
|
|
42
|
-
<!--
|
|
43
|
-
|
|
73
|
+
<!-- ======================== -->
|
|
74
|
+
<!-- FOOTER AND SCRIPTS -->
|
|
75
|
+
<!-- ======================== -->
|
|
76
|
+
|
|
77
|
+
<!-- Site footer with links, copyright, and additional navigation -->
|
|
78
|
+
{%- include core/footer.html -%}
|
|
44
79
|
|
|
45
|
-
<!--
|
|
80
|
+
<!-- JavaScript dependencies and custom scripts -->
|
|
46
81
|
<div>
|
|
47
|
-
<!-- Search
|
|
48
|
-
<!--
|
|
82
|
+
<!-- Search functionality (Algolia or similar) -->
|
|
83
|
+
<!-- Note: Currently commented out - uncomment when search is implemented -->
|
|
49
84
|
|
|
50
|
-
<!--
|
|
51
|
-
{% include js-cdn.html %}
|
|
85
|
+
<!-- External JavaScript libraries and custom scripts -->
|
|
86
|
+
{% include components/js-cdn.html %}
|
|
52
87
|
</div>
|
|
53
88
|
</body>
|
|
54
|
-
|
|
89
|
+
</html>
|
data/assets/js/back-to-top.js
CHANGED
|
@@ -1,24 +1,21 @@
|
|
|
1
|
-
document.addEventListener('DOMContentLoaded', (
|
|
2
|
-
|
|
1
|
+
document.addEventListener('DOMContentLoaded', () => {
|
|
2
|
+
const btn = document.getElementById('backToTopBtn');
|
|
3
|
+
if (!btn) return;
|
|
3
4
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
5
|
+
// Smooth scroll to top and keep accessible
|
|
6
|
+
const scrollToTop = (e) => {
|
|
7
|
+
if (e) e.preventDefault();
|
|
8
|
+
window.scrollTo({ top: 0, behavior: 'smooth' });
|
|
9
|
+
};
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
mybutton.onclick = topFunction;
|
|
12
|
-
}
|
|
11
|
+
btn.addEventListener('click', scrollToTop);
|
|
13
12
|
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
const toggle = () => {
|
|
14
|
+
const y = window.scrollY || document.documentElement.scrollTop || document.body.scrollTop || 0;
|
|
15
|
+
btn.style.display = y > 200 ? 'block' : 'none';
|
|
16
|
+
};
|
|
16
17
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
} else {
|
|
21
|
-
mybutton.style.display = "none";
|
|
22
|
-
}
|
|
23
|
-
}
|
|
18
|
+
// Initialize state and bind listener without clobbering
|
|
19
|
+
toggle();
|
|
20
|
+
window.addEventListener('scroll', toggle, { passive: true });
|
|
24
21
|
});
|