diff options
Diffstat (limited to 'templates')
-rwxr-xr-x | templates/base.html | 28 | ||||
-rw-r--r-- | templates/documentation.html | 4 | ||||
-rwxr-xr-x | templates/index.html | 90 | ||||
-rwxr-xr-x | templates/macros.html | 12 | ||||
-rwxr-xr-x | templates/page.html | 12 | ||||
-rw-r--r-- | templates/partials/doc/global_toc.html | 18 | ||||
-rw-r--r-- | templates/partials/doc/page_toc.html | 6 | ||||
-rw-r--r-- | templates/partials/doc/toc_script.html | 25 | ||||
-rw-r--r-- | templates/partials/shared/footer.html | 5 | ||||
-rw-r--r-- | templates/partials/shared/head.html | 13 | ||||
-rw-r--r-- | templates/partials/shared/nav.html | 24 | ||||
-rw-r--r-- | templates/partials/shared/search.html | 25 | ||||
-rwxr-xr-x | templates/section.html | 10 |
13 files changed, 170 insertions, 102 deletions
diff --git a/templates/base.html b/templates/base.html index 8170b44..d947c50 100755 --- a/templates/base.html +++ b/templates/base.html @@ -13,36 +13,14 @@ {% include "partials/shared/nav.html" %} - <div> - {% block content %}{% endblock %} - </div> + {% block content %}{% endblock %} {% block search %} - <section id="search-modal" class="modal hidden bg-gray-50 w-5/6 md:w-4/5 lg:w-3/4 xl:w-2/3 2xl:w-1/2 absolute top-20 left-1/2 transform -translate-x-1/2 shadow-xl rounded-lg"> - <div class="p-2 md:p-4 xl:p-8"> - <section class="relative flex flex-col items-center justify-center"> - <div class="field mt-8 md:mt-0 mb-2"> - <div class="control"> - <input - id="search" - class="p-2 md:p-4 shadow rounded-lg outline-2 focus:outline outline-garage-orange" - placeholder="Search on Garage..." type="search" /> - </div> - </div> - <div class="search-results hidden mt-8 p-2 md:p-4 w-full bg-white rounded shadow"> - <div class="search-results__items max-h-96 overflow-y-scroll p-2 md:p-4"></div> - </div> - </section> - <button aria-label="close" id="close-modal-btn" class="absolute top-2 right-2 flex items-center group rounded-full shadow-inner bg-gray-300 border border-transparent hover:border-gray-500 bg-opacity-50 p-2"> - <svg id="close-modal-btn-icon" class="w-6 h-6 text-gray-400" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path></svg> - <small class="text-xs text-gray-400">(Esc)</small> - </button> - </div> - </section> + {% include "partials/shared/search.html" %} {% endblock %} {% block pagination %} - {% include "partials/shared/paginator.html" %} + {% include "partials/shared/paginator.html" %} {% endblock %} {% block comment %}{% endblock %} diff --git a/templates/documentation.html b/templates/documentation.html index 70ef6a3..55a5c61 100644 --- a/templates/documentation.html +++ b/templates/documentation.html @@ -6,10 +6,10 @@ {% block content %} {% set section = get_section(path="documentation/_index.md") %} - <section class="section overflow-x-hidden"> + <section id="documentation-section" class="section overflow-x-hidden"> <div class="grid grid-cols-1 xl:grid-cols-5"> {% include "partials/doc/global_toc.html" %} - <div class="col-span-full xl:col-span-3"> + <div class="col-span-full xl:col-span-3" style="min-height:85vh;"> <article class="box my-12 px-6 lg:px-8 xl:px-12"> <div class="flex flex-col bg-gray-100 rounded-r shadow-sm w-full xl:w-max"> <div class="flex flex-col border-l-4 border-garage-orange py-2 px-4 relative"> diff --git a/templates/index.html b/templates/index.html index 08cce9c..d859bcb 100755 --- a/templates/index.html +++ b/templates/index.html @@ -5,28 +5,49 @@ <div> <div class="flex flex-col items-center justify-center py-12 px-12 xl:px-0"> - <img src="{{ config.extra.organization.logo }}" width="220px" class="" /> + <h1 class="hidden">{{config.extra.organization.name}}</h1> + <img src="{{ config.extra.organization.logo }}" width="220px" alt="{{config.extra.organization.name}}"/> <p class="text-gray-500 leading-10 pt-4 text-xl text-center">{{ config.extra.organization.description }}</p> - <div class="max-w-7xl mx-auto grid-cols-1 md:grid grid-cols-3 gap-x-32 py-12"> - <div class="group flex flex-col items-start justify-center p-2"> - <img src="{{ get_url(path='images/host2.png') }}" class="transform group-hover:translate-y-4 transition duration-500"> - <span class="text-xl text-gray-700 font-semibold mt-4 transform group-hover:-translate-y-2 transition duration-500">Host a Website</span> + <div class="max-w-7xl mx-auto grid grid-cols-1 md:grid-cols-3 gap-x-32 py-12"> + <div class="group flex flex-col items-center justify-center p-2"> + <img src="{{ get_url(path='images/host.png') }}" class="transform group-hover:translate-y-2 transition duration-500"> + <span class="text-xl text-gray-700 font-semibold mt-4 transform group-hover:-translate-y-1 transition duration-500 whitespace-nowrap">Host a Website</span> </div> <div class="group flex flex-col items-center justify-center p-2"> - <img src="{{ get_url(path='images/store.png') }}" class="transform group-hover:translate-y-4 transition duration-500"> - <span class="text-xl text-gray-700 font-semibold mt-4 transform group-hover:-translate-y-2 transition duration-500">Store Media</span> + <img src="{{ get_url(path='images/store.png') }}" class="transform group-hover:translate-y-2 transition duration-500"> + <span class="text-xl text-gray-700 font-semibold mt-4 transform group-hover:-translate-y-1 transition duration-500 whitespace-nowrap">Store Media</span> </div> - <div class="group flex flex-col items-end justify-center p-2"> - <img src="{{ get_url(path='images/backup.png') }}" class="transform group-hover:translate-y-4 transition duration-500"> - <span class="text-xl text-gray-700 font-semibold mt-4 transform group-hover:-translate-y-2 transition duration-500">Backup Target</span> + <div class="group flex flex-col items-center justify-center p-2"> + <img src="{{ get_url(path='images/backup.png') }}" class="transform group-hover:translate-y-2 transition duration-500"> + <span class="text-xl text-gray-700 font-semibold mt-4 transform group-hover:-translate-y-1 transition duration-500 whitespace-nowrap">Backup Target</span> </div> </div> </div> - <div class="grid grid-cols-1 xl:grid-cols-2 gap-x-0 xl:gap-x-12 gap-y-24 text-garage-gray font-light bg-gray-100 py-12 w-full shadow-inner"> + <div class="w-full flex flex-col items-center justify-center border-b"> + <div id="map-container" class="relative w-full shadow-inner border-t border-b"> + <span class="hidden md:inline-block absolute top-1/2 left-1/2 transform -translate-y-1/2 text-xl md:text-2xl lg:text-3xl text-white font-light select-none px-2 py-1.5 rounded shadow-lg border border-gray-400" style="background:#999999;"> + Made for redundancy + </span> + </div> + <div id="map-legend-container" class="max-w-7xl mx-auto flex flex-col lg:flex-row items-center justify-around lg:space-x-12 py-2 text-sm text-gray-700"> + <div> + <p class="text-base text-gray-600">Each chunk of data is replicated in 3 zones</p> + </div> + <div class="flex items-center space-x-2"> + <img class="select-none" src="{{ get_url(path='icons/servers.svg') }}" width="48px"> + <span>Zone (multiple servers)</span> + </div> + <div class="flex items-center space-x-2"> + <img class="select-none" src="{{ get_url(path='icons/datachunks.svg') }}" width="48px"> + <span>Chunks of data</span> + </div> + </div> + </div> - <div class="flex flex-col items-center justify-center space-y-2"> - <h2 class="mb-2 text-2xl font-bold text-garage-orange leading-5">Our Goals</h2> + <div class="grid grid-cols-1 xl:grid-cols-2 gap-x-0 xl:gap-x-12 gap-y-24 text-garage-gray font-light bg-gray-100 py-12 px-4 md:px-0 w-full shadow-inner"> + <div class="flex flex-col items-center justify-start space-y-2"> + <h2 class="mb-2 text-xl text-center md:text-2xl font-bold text-garage-orange leading-5">Our Goals</h2> <div class="w-8 h-1 bg-garage-orange"></div> <p class="text-center leading-5 italic">We made it lightweight and kept the efficiency in mind.</p> <ul class="list-style-none font-semibold flex flex-col items-center justify-center py-4"> @@ -58,8 +79,8 @@ </ul> </div> - <div class="flex flex-col items-center justify-center space-y-2"> - <h2 class="mb-2 text-2xl font-bold text-garage-orange leading-5">Keeping requirements low</h2> + <div class="flex flex-col items-center justify-start space-y-2"> + <h2 class="mb-2 text-xl text-center md:text-2xl font-bold text-garage-orange leading-5">Keeping requirements low</h2> <div class="w-8 h-1 bg-garage-orange"></div> <p class="text-center leading-5 italic"> We worked hard to keep requirements as low as possible<br>as we target the largest possible public. @@ -68,43 +89,43 @@ <li class="flex flex-col md:flex-row items-center justify-start"> <div class="flex items-center space-x-2 w-max whitespace-nowrap bg-gray-200 shadow-inner py-0.5 px-1.5 rounded-md"> <img src="{{ get_url(path='icons/cpu.svg') }}" width="24px"> - <span class="font-semibold">CPU</span> + <span class="font-normal">CPU</span> </div> <span class="px-2">Any x86_64 CPU from the last 10 years, ARMv7 or ARMv8</span> </li> <li class="flex flex-col md:flex-row items-center justify-start"> <div class="flex items-center space-x-2 w-max whitespace-nowrap bg-gray-200 shadow-inner py-0.5 px-1.5 rounded-md"> <img src="{{ get_url(path='icons/ram.svg') }}" width="24px"> - <span class="font-semibold">RAM</span> + <span class="font-normal">RAM</span> </div> <span class="px-2">1 GB</span> </li> <li class="flex flex-col md:flex-row items-center justify-start"> <div class="flex items-center space-x-2 w-max whitespace-nowrap bg-gray-200 shadow-inner py-0.5 px-1.5 rounded-md"> <img src="{{ get_url(path='icons/disk.svg') }}" width="24px"> - <span class="font-semibold">Disk space</span> + <span class="font-normal">Disk space</span> </div> <span class="px-2">At least 16 GB</span> </li> <li class="flex flex-col md:flex-row items-center justify-start"> <div class="flex items-center space-x-2 w-max whitespace-nowrap bg-gray-200 shadow-inner py-0.5 px-1.5 rounded-md"> <img src="{{ get_url(path='icons/network.svg') }}" width="24px"> - <span class="font-semibold">Network</span> + <span class="font-normal">Network</span> </div> <span class="px-2">200 ms or less, 50 Mbps or more</span> </li> <li class="flex flex-col items-center md:items-start justify-center"> <div class="flex items-center space-x-2 w-max whitespace-nowrap bg-gray-200 shadow-inner py-0.5 px-1.5 rounded-md"> <img src="{{ get_url(path='icons/hardware.svg') }}" width="24px"> - <span class="font-semibold">Heterogeneous hardware</span> + <span class="font-normal">Heterogeneous hardware</span> </div> <span class="px-2">Build a cluster with whatever second-hand machines are available</span> </li> </ul> </div> - <div class="flex flex-col items-center justify-center space-y-2 px-6 xl:px-0"> - <h2 class="mb-2 text-2xl font-bold text-garage-orange leading-5">Data resiliency for everyone</h2> + <div class="flex flex-col items-center justify-start space-y-2 px-6 xl:px-0"> + <h2 class="mb-2 text-xl text-center md:text-2xl font-bold text-garage-orange leading-5">Data resiliency for everyone</h2> <div class="w-8 h-1 bg-garage-orange"></div> <p class="text-center leading-5 italic pb-4"> Lorem ipsum dolor sit amet consectetur adipisicing elit. @@ -125,7 +146,7 @@ </li> <li class="flex items-center justify-start"> <a href="https://cyberduck.io/" target="_blank" title="Cyberduck"> - <img class="h-20 w-20" src="{{ get_url(path='images/cyberduck-logo.png') }}" alt="Cyberduck"> + <img class="w-20" src="{{ get_url(path='images/cyberduck-logo.png') }}" alt="Cyberduck"> </a> </li> <li class="flex items-center justify-start"> @@ -146,8 +167,8 @@ </ul> </div> - <div class="flex flex-col items-center justify-center space-y-2 px-6 xl:px-0"> - <h2 class="mb-2 text-2xl font-bold text-garage-orange leading-5">Built on the shoulder of giants</h2> + <div class="flex flex-col items-center justify-start space-y-2 px-6 xl:px-0"> + <h2 class="mb-2 text-xl text-center md:text-2xl font-bold text-garage-orange leading-5">Standing on the shoulders of giants</h2> <div class="w-8 h-1 bg-garage-orange"></div> <p class="text-center leading-5 italic"> Lorem ipsum dolor sit amet consectetur adipisicing elit. @@ -167,14 +188,23 @@ </li> </ul> </div> - </div> - {% if section.content %} - <div class="content max-w-7xl mx-auto py-12"> - {{ section.content | safe }} + <div class="w-full flex flex-col items-center justify-center shadow-inner"></div> + <div class="px-8 py-24 space-y-8 text-garage-gray max-w-4xl mx-auto"> + <h2 class="text-2xl text-garage-orange font-semibold">Sponsors and funding</h2> + <p> + The Deuxfleurs association has received a grant from <a class="text-garage-orange underline" href="https://pointer.ngi.eu/" target="_blank">NGI POINTER</a>, + to fund 3 people working on Garage full-time for a year : from October 2021 to September 2022. + </p> + <img src="{{ get_url(path='images/ngi-pointer-eu.png') }}" class="w-2/3" alt="NGI Pointers"> + <p class="italic"> + This project has received funding from the European Union's Horizon 2021 research and innovation programme + within the framework of the NGI-POINTER Project funded under grant agreement N° 871528. + </p> </div> - {% endif %} + </div> + </div> </section> {% endblock %} diff --git a/templates/macros.html b/templates/macros.html index 9fab136..dc65140 100755 --- a/templates/macros.html +++ b/templates/macros.html @@ -2,24 +2,24 @@ <p class="flex items-center justify-center space-x-2"> {% if social_config.git %} <a href="{{ social_config.git }}" target="_blank"> - <span class="icon is-large" title="Git"> - <i class="fab fa-git fa-lg text-garage-gray h-8 w-8 bg-white hover:bg-garage-orange hover:text-white rounded-full shadow flex items-center justify-center"></i> + <span class="h-10 w-10 bg-white hover:shadow-xl rounded-full shadow flex items-center justify-center" title="Git"> + <img src="{{get_url(path='icons/git.svg')}}" width="24px" alt=""> </span> </a> {% endif %} {% if social_config.email %} <a href="mailto:{{ social_config.email }}" target="_blank"> - <span class="icon is-large" title="Email"> - <i class="far fa-envelope fa-lg text-garage-gray h-8 w-8 bg-white hover:bg-garage-orange hover:text-white rounded-full shadow flex items-center justify-center"></i> + <span class="h-10 w-10 bg-white hover:shadow-xl rounded-full shadow flex items-center justify-center" title="Contact"> + <img src="{{get_url(path='icons/contact.svg')}}" width="24px" alt=""> </span> </a> {% endif %} {% if config.generate_feed %} <a href="{{ config.base_url }}/{{ config.feed_filename }}" target="_blank"> - <span class="icon is-large" title="RSS Feed"> - <i class="fas fa-rss fa-lg text-garage-gray h-8 w-8 bg-white hover:bg-garage-orange hover:text-white rounded-full shadow flex items-center justify-center"></i> + <span class="h-10 w-10 bg-white hover:shadow-xl rounded-full shadow flex items-center justify-center" title="RSS Feed"> + <img src="{{get_url(path='icons/rss.svg')}}" width="24px" alt=""> </span> </a> {% endif %} diff --git a/templates/page.html b/templates/page.html index eeba7f1..67081b7 100755 --- a/templates/page.html +++ b/templates/page.html @@ -5,7 +5,7 @@ {% endblock %} {% block content %} - <section class="section"> + <section id="blogpost-section" class="section"> <div class="mx-auto max-w-7xl"> <div class="grid grid-cols-5 gap-x-12"> <div class="{% if page.extra.toc %}col-span-4{% else %}col-span-full{% endif %}"> @@ -18,17 +18,17 @@ {% if page.description %} <p class="subtitle my-2 text-gray-600 italic text-sm">{{ page.description }}</p> {% endif %} - <a id="back-to-blog-posts" class="absolute top-0 -left-12" href="/blog" title="Back to blog posts"> + <a id="back-to-blog-posts" class="absolute top-0 -left-12" href="/blog/" title="Back to blog posts"> <div class="w-10 overflow-hidden inline-block group"> <div class="h-16 bg-garage-gray group-hover:bg-garage-orange transform -rotate-45 origin-top-right"></div> </div> </a> </div> - <div class="w-full text-garage-gray text-sm grid grid-cols-2 bg-gradient-to-r from-gray-100 to-transparent p-3 border-l-4 border-gray-300"> - <div class="flex items-center justify-start"> + <div class="w-full text-garage-gray text-sm grid grid-cols-1 md:grid-cols-2 bg-gradient-to-r from-gray-100 to-transparent p-3 border-l-4 border-gray-300"> + <div class="flex items-center justify-start md:justify-start"> {{ macros::page_publish_metadata(page=page) }} </div> - <div class="flex items-center justify-end"> + <div class="flex items-center justify-start md:justify-end"> {{ macros::page_content_metadata(page=page) }} </div> <div> @@ -43,7 +43,7 @@ </div> </div> </div> - <div class="page-content max-w-4xl text-justify mt-12"> + <div class="page-content max-w-4xl text-justify mt-12 px-5 md:px-12"> {{ page.content | safe }} </div> </article> diff --git a/templates/partials/doc/global_toc.html b/templates/partials/doc/global_toc.html index ebad287..f739f49 100644 --- a/templates/partials/doc/global_toc.html +++ b/templates/partials/doc/global_toc.html @@ -1,8 +1,20 @@ -<aside id="global_toc" class="col-span-1 h-max bg-gray-100 shadow-inner border-r border-t border-gray-200"> +<aside id="global_toc" class="relative col-span-1 h-full bg-gray-100 shadow-inner border-r border-t border-gray-200"> {% if section.subsections %} - <ul class="space-y-2 py-0.5 px-6 py-3 list-none"> + <ul id="main-toc-menu" class="space-y-2 px-6 py-3 list-none"> + + {% if section.pages %} + {% for page in section.pages %} + <a + href="{{ page.permalink | safe }}" + class="docPage block pl-2 py-1 border-l rounded-r border-garage-orange hover:bg-garage-orange hover:bg-opacity-20 + {% if current_path == page.path %} activePage border-l-4 text-garage-orange font-semibold border-opacity-100 border-garage-orange {% endif %}"> + {{ page.title }} + </a> + {% endfor %} + {% endif %} + {% for subsec in section.subsections %} - {% set h1 = get_section(path=subsec) %} + {% set h1 = get_section(path=subsec) %} <li class="relative"> <a href="{{ h1.permalink | safe }}" diff --git a/templates/partials/doc/page_toc.html b/templates/partials/doc/page_toc.html index 172e0ce..238d8c3 100644 --- a/templates/partials/doc/page_toc.html +++ b/templates/partials/doc/page_toc.html @@ -1,12 +1,12 @@ -<aside class="hidden 2xl:block fixed right-0 bottom-1/2 transform translate-y-1/2 col-span-1 h-auto bg-gray-100 rounded-l-lg shadow-inner"> +<aside class="hidden 2xl:block fixed right-0 bottom-1/2 transform translate-y-1/2 w-80 col-span-1 h-auto bg-gray-100 rounded-l-lg shadow-inner"> {% if page.toc %} <div class="w-full flex items-center justify-center py-1.5 bg-gray-200 rounded-tl-lg"> <span class="uppercase tracking-wide text-xs text-garage-gray">Page content</span> </div> - <ol class="text-sm space-y-0.5 py-0.5 px-8 py-3 list-decimal"> + <ol class="text-sm space-y-0.5 px-8 py-3 list-decimal"> {% for h1 in page.toc %} <li> - <a href="{{ h1.permalink | safe }}" class="font-semibold bg-gradient-to-r from-garage-gray to-garage-orange text-transparent bg-clip-text transition-all hover:text-garage-orange">{{ h1.title }}</a> + <a href="{{ h1.permalink | safe }}" class="font-semibold text-gray-800 transition-all hover:text-garage-orange">{{ h1.title }}</a> {% if h1.children %} <ul class="space-y-0.5 py-0.5"> {% for h2 in h1.children %} diff --git a/templates/partials/doc/toc_script.html b/templates/partials/doc/toc_script.html index a858c94..1453a69 100644 --- a/templates/partials/doc/toc_script.html +++ b/templates/partials/doc/toc_script.html @@ -1,9 +1,31 @@ -<script type="text/javascript"> +<script> const menuBarHeight = document.querySelector("nav.navbar").clientHeight; +const mainTocMenuWidth = document.getElementById('main-toc-menu').clientWidth; const tocItems = document.querySelectorAll(".toc"); const navSections = new Array(tocItems.length); + // Global ToC +/* + Fixed ToC when user scrolls. +*/ + +window.addEventListener('scroll', function() { + if (window.screen.width >= 1280) { + if (window.scrollY >= menuBarHeight) { + document.getElementById('main-toc-menu').classList.add('fixed', 'top-0', 'left-0'); + document.getElementById('main-toc-menu').style.width = mainTocMenuWidth + 'px'; + } else { + document.getElementById('main-toc-menu').classList.remove('fixed', 'top-0', 'left-0'); + } + } +}); + +// Page content +/* + Focus effect on current section anchor when user scrolls. +*/ + tocItems.forEach((el, i) => { let id = el.getAttribute("id").substring(5); navSections[i] = document.getElementById(id); @@ -42,7 +64,6 @@ window.addEventListener('scroll', () => { } }, false); -// If JS enabled, deploy only the current doc menu document.addEventListener("DOMContentLoaded", function() { var menusTriggers = document.getElementsByClassName("deploySubMenu"); var activeDocPage = document.getElementsByClassName("activePage")[0]; diff --git a/templates/partials/shared/footer.html b/templates/partials/shared/footer.html index de58caf..d5bd29c 100644 --- a/templates/partials/shared/footer.html +++ b/templates/partials/shared/footer.html @@ -4,8 +4,9 @@ {{ macros:: social_links( social_config=config.extra.social) }} </p> <p class="text-gray-600 py-2"> - Powered by <a href="https://www.getzola.org" target="_blank" - class="font-semibold hover:text-garage-orange">Zola</a> + Built with <a href="https://www.getzola.org" target="_blank" class="font-semibold hover:text-garage-orange">Zola</a>, + powered by <a href="{{config.base_url}}" class="font-semibold hover:text-garage-orange">Garage</a>, + hosted by <a href="https://deuxfleurs.fr" target="_blank" class="font-semibold hover:text-garage-orange">Deuxfleurs</a> </p> </div> </footer>
\ No newline at end of file diff --git a/templates/partials/shared/head.html b/templates/partials/shared/head.html index 185a97b..ca2033e 100644 --- a/templates/partials/shared/head.html +++ b/templates/partials/shared/head.html @@ -1,9 +1,6 @@ {% if config.extra.favicon.webmanifest %} <link href='{{ config.extra.favicon.webmanifest }}' rel="manifest" /> {% endif %} -{% if config.extra.favicon.safari_pinned_tab %} - <link color="#5bbad5" href='{{ config.extra.favicon.safari_pinned_tab }}' rel="mask-icon" /> -{% endif %} {% if config.extra.favicon.favicon_16x16 %} <link href='{{ config.extra.favicon.favicon_16x16 }}' rel="icon" sizes="16x16" type="image/png" /> {% endif %} @@ -13,14 +10,6 @@ {% if config.extra.favicon.apple_touch_icon %} <link href='{{ config.extra.favicon.apple_touch_icon }}' rel="apple-touch-icon" sizes="180x180" /> {% endif %} - -{% if config.extra.galleria.enabled %} - <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/galleria@1.6.1/dist/themes/folio/galleria.folio.min.css" - integrity="sha384-+rY0QD+LRnTOquDMzGa9lXU6jIwdiQuwCJQ2cdcW0qeP/0UbjQCZlXnRsUMA+9pH" crossorigin="anonymous"> -{% endif %} - -<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5.15.4/css/all.min.css" - integrity="sha384-DyZ88mC6Up2uqS4h/KRgHuoeGwBcD4Ng9SiP4dIRy0EXTlnuz47vAwmeGwVChigm" crossorigin="anonymous"> <link href="{{ get_url(path='style.css') }}" rel="stylesheet" /> @@ -28,7 +17,7 @@ <title> {% block title %} - {{ config.title }} + {{ config.title }} - An open-source distributed storage service {% endblock title %} </title> diff --git a/templates/partials/shared/nav.html b/templates/partials/shared/nav.html index 2489bf6..a4a4b99 100644 --- a/templates/partials/shared/nav.html +++ b/templates/partials/shared/nav.html @@ -1,17 +1,21 @@ -<nav aria-label="section navigation" class="navbar w-full" role="navigation"> - <div class="w-full flex flex-col space-y-2 md:space-y-0 md:flex-row items-center justify-between py-1 px-8 text-garage-gray bg-garage-orange bg-opacity-20"> +<nav aria-label="navigation-section" class="navbar w-full relative" role="navigation"> + <div class="w-full flex flex-row items-center justify-between py-1.5 px-8 text-garage-gray bg-garage-orange bg-opacity-20"> <div class="navbar-brand"> <a class="hover:rounded-full hover:bg-white" href="{{config.base_url}}"> - <img class="transform duration-150 focus:bg-white hover:bg-white hover:shadow rounded-lg hover:scale-90" - src="{{ config.extra.organization.logo }}" width="65px"> + <img class="px-2 transform duration-150 focus:bg-white hover:bg-white hover:shadow rounded-lg" + src="{{ config.extra.organization.logo_horizontal }}" width="120px"> </a> </div> - <div class="navbar-menu" id="navMenu"> - <div class="flex items-center justify-center"> + <input type="checkbox" id="navMenuToggleBtn" value="0"/> + <label for="navMenuToggleBtn" class="md:hidden p-1.5 hover:bg-white rounded-lg hover:shadow cursor-pointer" style="margin-top:0.08rem;"> + <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h7"></path></svg> + </label> + <div class="hidden py-4 md:py-0 z-40 md:block absolute md:static top-12 left-0 right-0 navbar-menu bg-gray-100 shadow-md md:shadow-none md:bg-transparent" id="navMenu"> + <div class="flex items-center justify-center space-x-2"> {% for item in config.extra.navbar_items %} {% if lang == item.code %} {% for nav in item.nav_items %} - <a class="font-semibold focus:bg-white hover:bg-white hover:shadow px-4 py-2 rounded-lg" + <a class="font-semibold focus:bg-white hover:bg-white hover:shadow px-3 py-1 rounded-lg" href="{{ nav.url | replace(from='$BASE_URL', to=config.base_url) }}"> {{ nav.name }} </a> @@ -25,6 +29,12 @@ class="focus:bg-white hover:bg-white hover:shadow px-4 py-2 rounded-lg"> <svg id="nav-search-btn-icon" class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg> </button> + <a + href="https://garagehq.deuxfleurs.fr/_releases.html" + class="group flex items-center justify-center space-x-1 font-semibold shadow hover:shadow px-2 py-1.5 rounded text-white transition-all duration-500 bg-gradient-to-tl from-garage-orange via-orange-500 to-orange-300 bg-size-200 bg-pos-0 hover:bg-pos-100"> + <svg class="w-6 h-6 animate-pulse" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M9 19l3 3m0 0l3-3m-3 3V10"></path></svg> + <span class="hidden md:inline">Download</span> + </a> </div> </div> </div> diff --git a/templates/partials/shared/search.html b/templates/partials/shared/search.html new file mode 100644 index 0000000..cb0ae2e --- /dev/null +++ b/templates/partials/shared/search.html @@ -0,0 +1,25 @@ +<section id="search-modal" class="modal hidden z-50 bg-gradient-to-b from-gray-50 to-gray-100 w-5/6 md:w-4/5 lg:w-3/4 xl:w-2/3 2xl:w-1/2 absolute top-20 left-1/2 transform -translate-x-1/2 shadow-2xl rounded-lg"> + <div class="p-2 md:p-4 xl:p-8 border-8 border-gray-300 rounded-lg shadow-inner" style="min-height:30vh;"> + <section class="relative flex flex-col items-center justify-center"> + <div class="flexs items-center justify-center"> + <span class="text-xl inline-block font-thin">Search</span> + <span class="font-normal inline-block text-xs text-gray-500">(alt + S)</span> + </div> + <div class="field mt-8 md:mt-0 mb-2"> + <div class="control"> + <input + id="search" + class="p-2 md:p-4 shadow rounded-lg outline-2 focus:outline outline-garage-orange" + placeholder="Search on Garage..." type="search" /> + </div> + </div> + <div class="search-results hidden mt-8 p-2 md:p-4 w-full bg-white rounded shadow"> + <div class="search-results__items max-h-96 overflow-y-scroll p-2 md:p-4 focus:outline outline-garage-orange"></div> + </div> + </section> + <button aria-label="close" id="close-modal-btn" class="absolute top-4 right-4 flex items-center group rounded-full shadow-inner bg-gray-300 border border-transparent hover:border-gray-500 bg-opacity-50 p-2"> + <svg id="close-modal-btn-icon" class="w-6 h-6 text-gray-400" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path></svg> + <small class="text-xs text-gray-400">(Esc)</small> + </button> + </div> +</section>
\ No newline at end of file diff --git a/templates/section.html b/templates/section.html index 83c5134..5d47d46 100755 --- a/templates/section.html +++ b/templates/section.html @@ -14,7 +14,7 @@ <div class="content"> {{ section.content | safe }} </div> - <div class="columns is-centered"> + <div class="px-0 md:px-8 xl:px-4 2xl:px-0"> <div class="space-y-20"> {% if paginator %} {% set pages = paginator.pages %} @@ -23,7 +23,7 @@ {% endif %} {% for page in pages %} - <article class="border-l-4 border-garage-gray pl-4"> + <article class="border-l-4 border-garage-gray pl-4 max-w-5xl"> <h2 class="text-garage-gray hover:text-garage-orange text-2xl pb-3"> <a class="w-full block" href='{{ page.permalink }}'> {{ page.title }} @@ -41,8 +41,10 @@ </div> </div> <div class="content mt-2"> - {{ page.summary | safe }} - <a class="group py-4 font-semibold px-4 py-2 flex items-center space-x-1 text-garage-orange" href='{{ page.permalink }}'> + <div class="text-gray-700"> + {{ page.summary | safe }} + </div> + <a class="group font-semibold p-4 flex items-center space-x-1 text-garage-orange" href='{{ page.permalink }}'> <div class="h-0.5 mt-0.5 w-4 group-hover:w-8 group-hover:bg-garage-gray transition-all bg-garage-orange"></div> <span>Read</span> <span class="text-garage-orange group-hover:text-garage-gray transition-all"> |