refactor: add sass, minify HTML, remove i18n
This commit is contained in:
7
src/_components/other_links.njk
Normal file
7
src/_components/other_links.njk
Normal file
@@ -0,0 +1,7 @@
|
||||
<div class="title">Autres liens</div>
|
||||
<ul class="links">
|
||||
{%- for entry in collections.all | eleventyNavigation %}
|
||||
<li><a
|
||||
href="{{ entry.url }}">{{ entry.title }}</a></li>
|
||||
{%- endfor %}
|
||||
</ul>
|
20
src/_components/postslist.njk
Normal file
20
src/_components/postslist.njk
Normal file
@@ -0,0 +1,20 @@
|
||||
{% for post in postslist | reverse %}
|
||||
<article class="postlist-item">
|
||||
<header class="postlist-header">
|
||||
<h2>
|
||||
<a href="{{ post.url }}" class="postlist-link">{% if post.data.title %}{{ post.data.title }}{% else %}<code>{{ post.url }}</code>{% endif %}</a>
|
||||
</h2>
|
||||
<ul class="post-metadata">
|
||||
<li><time datetime="{{ post.data.date | htmlDateString }}">{{ post.data.date | readableDate }}</time></li>
|
||||
{%- for tag in post.data.tags | filterTagList %}
|
||||
{%- set tagUrl %}/tags/{{ tag | slugify }}/{% endset %}
|
||||
<li><a href="{{ tagUrl }}" class="post-tag">#{{ tag }}</a>{%- if not loop.last %} {% endif %}</li>
|
||||
{%- endfor %}
|
||||
</ul>
|
||||
</header>
|
||||
<p>{{ post.data.resume }}</p>
|
||||
<footer class="postlist-footer">
|
||||
<a href="{{ post.url }}">Lire la suite</a>
|
||||
</footer>
|
||||
</article>
|
||||
{% endfor %}
|
7
src/_components/tagslist.njk
Normal file
7
src/_components/tagslist.njk
Normal file
@@ -0,0 +1,7 @@
|
||||
<div class="title">Catégories</div>
|
||||
<ul class="tags">
|
||||
{% for tag in collections.all | getAllTags | filterTagList %}
|
||||
{% set tagUrl %}/tags/{{ tag | slugify }}/{% endset %}
|
||||
<li><a href="{{ tagUrl }}" class="post-tag">#{{ tag }}</a></li>
|
||||
{% endfor %}
|
||||
</ul>
|
21
src/_data/cacheBust.js
Normal file
21
src/_data/cacheBust.js
Normal file
@@ -0,0 +1,21 @@
|
||||
const md5File = require('md5-file');
|
||||
|
||||
const cacheBust = () => {
|
||||
// A "map" of files to cache bust
|
||||
const files = {
|
||||
mainCss: './src/compiled-assets/main.css',
|
||||
// mainJs: './src/compiled-assets/main.js',
|
||||
// vendorJs: './src/compiled-assets/vendor.js',
|
||||
};
|
||||
|
||||
return Object.entries(files).reduce((acc, [key, path]) => {
|
||||
const now = Date.now();
|
||||
const bust = process.env.ELEVENTY_ENV === 'production' ? md5File.sync(path, (_err, hash) => hash) : now;
|
||||
|
||||
acc[key] = bust;
|
||||
|
||||
return acc;
|
||||
}, {});
|
||||
};
|
||||
|
||||
module.exports = cacheBust;
|
6
src/_data/metadata.json
Normal file
6
src/_data/metadata.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"title": "Blog IT's on us",
|
||||
"url": "https://blog.itsonus.fr/",
|
||||
"language": "fr",
|
||||
"description": "Blog traitant de numérique responsable"
|
||||
}
|
61
src/_layouts/base.njk
Normal file
61
src/_layouts/base.njk
Normal file
@@ -0,0 +1,61 @@
|
||||
<!doctype html>
|
||||
<html lang="{{ metadata.language }}">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>{{ title or metadata.title }}</title>
|
||||
<meta name="description" content="{{ description or metadata.description }}">
|
||||
<meta name="generator" content="{{ eleventy.generator }}">
|
||||
<link rel="stylesheet" href="/assets/main.css?{{ cacheBust.mainCss }}"/>
|
||||
<link rel="alternate" href="/feed/feed.xml" type="application/atom+xml" title="{{ metadata.title }}">
|
||||
<link rel="alternate" href="/feed/feed.json" type="application/json" title="{{ metadata.title }}">
|
||||
<link rel="icon" href="/images/favicon.svg">
|
||||
</head>
|
||||
<body class="container">
|
||||
<header class="main-header">
|
||||
<div>
|
||||
<a class="main-header-logo" href="/">
|
||||
<img src="/images/logo.svg" alt="IT's on us" width="165" height="33">
|
||||
Blog
|
||||
</a>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<main>
|
||||
<div class="main-content">
|
||||
{{ content | safe }}
|
||||
</div>
|
||||
<nav class="right-side">
|
||||
{% include "tagslist.njk" %}
|
||||
{% include "other_links.njk" %}
|
||||
</nav>
|
||||
</main>
|
||||
|
||||
<footer class="main-footer">
|
||||
<div class="footer-contact">
|
||||
<div>
|
||||
<p class="footer-contact-title">IT's on us</p>
|
||||
<p>Copyright © 2022</p>
|
||||
</div>
|
||||
<ul class="footer-links">
|
||||
<li>
|
||||
<a rel="noopener" href="https://www.linkedin.com/company/itsonus" target="_blank">
|
||||
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg" aria-labelledby="title-linkedin"><title id="title-linkedin">Accéder à la page LinkedIn de IT's on us</title><path d="M12.6041 20.6838H9.74213V12.0046H12.6041V20.6838ZM11.1716 10.8207C10.2566 10.8207 9.51416 10.1068 9.51416 9.245C9.51416 8.38317 10.2566 7.68384 11.1716 7.68384C12.0865 7.68384 12.8289 8.38317 12.8289 9.245C12.8289 10.1068 12.0865 10.8207 11.1716 10.8207ZM23.3155 20.6838H20.4597V16.4588C20.4597 15.4519 20.4382 14.1606 18.9718 14.1606C17.4838 14.1606 17.2559 15.2546 17.2559 16.3863V20.6838H14.397V12.0046H17.1419V13.1885H17.1819C17.5639 12.5066 18.4974 11.787 19.8898 11.787C22.7856 11.787 23.3186 13.5832 23.3186 15.9162V20.6838H23.3155Z" fill="white"></path><path d="M30.2071 16.1838C30.2071 8.1624 23.799 1.68384 15.9236 1.68384C8.04829 1.68384 1.64014 8.1624 1.64014 16.1838C1.64014 24.2053 8.04829 30.6838 15.9236 30.6838C23.799 30.6838 30.2071 24.2053 30.2071 16.1838Z" stroke="white" stroke-width="2"></path>
|
||||
</svg>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="/src/_pages/feed/feed.xml" download>
|
||||
<svg width="32" height="32" viewBox="0 0 461.432 461.432" xmlns="http://www.w3.org/2000/svg" aria-labelledby="title-rss"><title id="title-rss">Accéder au flux RSS du blog</title><g fill="#fff"><path d="M125.896 398.928c0 33.683-27.308 60.999-61.022 60.999-33.684 0-61.006-27.316-61.006-60.999 0-33.729 27.322-61.038 61.006-61.038 33.714 0 61.022 27.308 61.022 61.038zM0 229.636c0 8.441 6.606 15.379 15.036 15.809 60.318 3.076 100.885 25.031 138.248 62.582 36.716 36.864 60.071 89.759 64.082 137.769.686 8.202 7.539 14.524 15.77 14.524h56.701c4.344 0 8.498-1.784 11.488-4.935a15.852 15.852 0 004.333-11.729c-8.074-158.152-130.669-278.332-289.013-286.23a15.846 15.846 0 00-11.709 4.344A15.848 15.848 0 000 173.247v56.389z"/><path d="M0 73.411c0 8.51 6.713 15.482 15.216 15.819 194.21 7.683 350.315 161.798 358.098 355.879.34 8.491 7.32 15.208 15.818 15.208h56.457c4.297 0 8.408-1.744 11.393-4.834a15.857 15.857 0 004.441-11.552C453.181 199.412 261.024 9.27 16.38 1.121A15.844 15.844 0 004.838 5.568 15.842 15.842 0 000 16.954v56.457z"/></g>
|
||||
</svg>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer-center">
|
||||
Ceci est le blog du collectif IT's on us. Visitez notre <a href="https://www.itsonus.fr">site</a>.
|
||||
</div>
|
||||
</footer>
|
||||
{# <script src="{% webpackAsset 'main.js' %}"></script> Uncomment if JS is needed#}
|
||||
</body>
|
||||
</html>
|
5
src/_layouts/home.njk
Normal file
5
src/_layouts/home.njk
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
layout: base.njk
|
||||
templateClass: tmpl-home
|
||||
---
|
||||
{{ content | safe }}
|
31
src/_layouts/post.njk
Normal file
31
src/_layouts/post.njk
Normal file
@@ -0,0 +1,31 @@
|
||||
---
|
||||
layout: base.njk
|
||||
templateClass: tmpl-post
|
||||
---
|
||||
<h1>{{ title }}</h1>
|
||||
|
||||
<ul class="post-metadata">
|
||||
<li><time datetime="{{ page.date | htmlDateString }}">{{ page.date | readableDate }}</time></li>
|
||||
{%- for tag in tags | filterTagList %}
|
||||
{%- set tagUrl %}/tags/{{ tag | slugify }}/{% endset %}
|
||||
<li><a href="{{ tagUrl }}" class="post-tag">#{{ tag }}</a>{%- if not loop.last %} {% endif %}</li>
|
||||
{%- endfor %}
|
||||
</ul>
|
||||
|
||||
{{ content | safe }}
|
||||
|
||||
<hr>
|
||||
|
||||
{%- if collections.posts %}
|
||||
{# these filters are locale-aware in 2.0.0-canary.14 #}
|
||||
{%- set previousPost = collections.posts | getPreviousCollectionItem %}
|
||||
{%- set nextPost = collections.posts | getNextCollectionItem %}
|
||||
{%- if nextPost or previousPost %}
|
||||
<nav class="post-nav">
|
||||
<ul>
|
||||
{%- if previousPost %}<li class="previous">Précédent : <a href="{{ previousPost.url }}">{{ previousPost.data.title }}</a></li>{% endif %}
|
||||
{%- if nextPost %}<li class="next">Suivant : <a href="{{ nextPost.url }}">{{ nextPost.data.title }}</a></li>{% endif %}
|
||||
</ul>
|
||||
</nav>
|
||||
{%- endif %}
|
||||
{%- endif %}
|
19
src/_pages/404.md
Normal file
19
src/_pages/404.md
Normal file
@@ -0,0 +1,19 @@
|
||||
---
|
||||
layout: home.njk
|
||||
permalink: 404.html
|
||||
eleventyExcludeFromCollections: true
|
||||
---
|
||||
# Cette page n'existe pas !
|
||||
|
||||
Vous avez fait fausse route ¯\_(ツ)_/¯
|
||||
|
||||
[Aller à la page d’accueil](/)
|
||||
|
||||
{#
|
||||
Read more: https://www.11ty.dev/docs/quicktips/not-found/
|
||||
|
||||
This will work for both GitHub pages and Netlify:
|
||||
|
||||
* https://help.github.com/articles/creating-a-custom-404-page-for-your-github-pages-site/
|
||||
* https://www.netlify.com/docs/redirects/#custom-404
|
||||
#}
|
3
src/_pages/_pages.json
Normal file
3
src/_pages/_pages.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"permalink": "{{ page.filePathStem.replace('/_pages', '').replace('/index', '') }}/index.html"
|
||||
}
|
17
src/_pages/all_articles.njk
Normal file
17
src/_pages/all_articles.njk
Normal file
@@ -0,0 +1,17 @@
|
||||
---
|
||||
layout: home.njk
|
||||
eleventyNavigation:
|
||||
key: Tous les articles
|
||||
order: 3
|
||||
---
|
||||
<ul class="post-list">
|
||||
{%- for post in collections.posts | reverse %}
|
||||
<li>
|
||||
<div>
|
||||
<a href="{{ post.url }}">{{ post.data.title }}</a>
|
||||
<time datetime="{{ post.data.date | htmlDateString }}">{{ post.data.date | htmlDateString }}</time>
|
||||
</div>
|
||||
<p>{{ post.data.description }}</p>
|
||||
</li>
|
||||
{%- endfor %}
|
||||
</ul>
|
10
src/_pages/blog.njk
Normal file
10
src/_pages/blog.njk
Normal file
@@ -0,0 +1,10 @@
|
||||
---
|
||||
layout: home.njk
|
||||
eleventyNavigation:
|
||||
key: Archives
|
||||
order: 2
|
||||
---
|
||||
<h1>Archive</h1>
|
||||
|
||||
{% set postslist = collections.posts %}
|
||||
{% include "postslist.njk" %}
|
5
src/_pages/blog/blog.json
Normal file
5
src/_pages/blog/blog.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"tags": [
|
||||
"posts"
|
||||
]
|
||||
}
|
54
src/_pages/blog/exemple.md
Normal file
54
src/_pages/blog/exemple.md
Normal file
@@ -0,0 +1,54 @@
|
||||
---
|
||||
title: Exemple d'article
|
||||
description: Article traitant d'ACV, d'EFC et d'écoconception
|
||||
resume: Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
date: 2022-10-14
|
||||
tags:
|
||||
- ACV
|
||||
- EFC
|
||||
- écoconception
|
||||
layout: post.njk
|
||||
---
|
||||
|
||||
## Introduction
|
||||
Leverage agile Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
to provide a robust synopsis for high level overviews. Iterative approaches to corporate strategy foster collaborative thinking to further the overall value proposition. Organically grow the holistic world view of disruptive innovation via workplace diversity and empowerment.
|
||||
|
||||

|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
|
||||
## Partie une
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
|
||||
```diff-js
|
||||
// this is a command
|
||||
function myCommand() {
|
||||
+ let counter = 0;
|
||||
- let counter = 1;
|
||||
counter++;
|
||||
}
|
||||
|
||||
// Test with a line break above this line.
|
||||
console.log('Test');
|
||||
```
|
||||
|
||||
## Partie deux
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
|
||||
```js
|
||||
// this is a command
|
||||
function myCommand() {
|
||||
let counter = 0;
|
||||
counter++;
|
||||
}
|
||||
|
||||
// Test with a line break above this line.
|
||||
console.log('Test');
|
||||
```
|
||||
|
||||
## Conclusion
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
53
src/_pages/blog/exemple_2.md
Normal file
53
src/_pages/blog/exemple_2.md
Normal file
@@ -0,0 +1,53 @@
|
||||
---
|
||||
title: Second exemple d'article
|
||||
description: Article traitant d'accessibilité et d'écoconception
|
||||
resume: Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
date: 2022-10-15
|
||||
tags:
|
||||
- accessibilité
|
||||
- écoconception
|
||||
layout: post.njk
|
||||
---
|
||||
|
||||
## Introduction
|
||||
Leverage agile Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
to provide a robust synopsis for high level overviews. Iterative approaches to corporate strategy foster collaborative thinking to further the overall value proposition. Organically grow the holistic world view of disruptive innovation via workplace diversity and empowerment.
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
|
||||
## Partie une
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
|
||||
```diff-js
|
||||
// this is a command
|
||||
function myCommand() {
|
||||
+ let counter = 0;
|
||||
- let counter = 1;
|
||||
counter++;
|
||||
}
|
||||
|
||||
// Test with a line break above this line.
|
||||
console.log('Test');
|
||||
```
|
||||
|
||||
## Partie deux
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
|
||||
```js
|
||||
// this is a command
|
||||
function myCommand() {
|
||||
let counter = 0;
|
||||
counter++;
|
||||
}
|
||||
|
||||
// Test with a line break above this line.
|
||||
console.log('Test');
|
||||
```
|
||||
|
||||
## Conclusion
|
||||
|
||||

|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
50
src/_pages/blog/exemple_3.md
Normal file
50
src/_pages/blog/exemple_3.md
Normal file
@@ -0,0 +1,50 @@
|
||||
---
|
||||
title: Troisième exemple d'article
|
||||
description: Article traitant d'écoconception
|
||||
resume: Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
date: 2022-10-17
|
||||
tags:
|
||||
- écoconception
|
||||
layout: post.njk
|
||||
---
|
||||
|
||||
## Introduction
|
||||
Leverage agile Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
to provide a robust synopsis for high level overviews. Iterative approaches to corporate strategy foster collaborative thinking to further the overall value proposition. Organically grow the holistic world view of disruptive innovation via workplace diversity and empowerment.
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
|
||||
## Partie une
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
|
||||
```diff-js
|
||||
// this is a command
|
||||
function myCommand() {
|
||||
+ let counter = 0;
|
||||
- let counter = 1;
|
||||
counter++;
|
||||
}
|
||||
|
||||
// Test with a line break above this line.
|
||||
console.log('Test');
|
||||
```
|
||||
|
||||
## Partie deux
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
||||
|
||||
```js
|
||||
// this is a command
|
||||
function myCommand() {
|
||||
let counter = 0;
|
||||
counter++;
|
||||
}
|
||||
|
||||
// Test with a line break above this line.
|
||||
console.log('Test');
|
||||
```
|
||||
|
||||
## Conclusion
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Semper quis lectus nulla at volutpat. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Enim diam vulputate ut pharetra sit amet. Placerat orci nulla pellentesque dignissim. Gravida rutrum quisque non tellus. Condimentum mattis pellentesque id nibh tortor id aliquet lectus proin. Diam sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Tempor id eu nisl nunc mi. Cras pulvinar mattis nunc sed blandit libero volutpat sed cras. Eget magna fermentum iaculis eu non diam phasellus. Est lorem ipsum dolor sit amet consectetur adipiscing. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Velit scelerisque in dictum non consectetur a. Lectus sit amet est placerat. Viverra aliquet eget sit amet tellus cras adipiscing enim eu. Ut tristique et egestas quis ipsum suspendisse ultrices. Bibendum est ultricies integer quis auctor elit. Aliquam sem et tortor consequat id porta nibh.
|
3
src/_pages/feed/feed.11tydata.js
Normal file
3
src/_pages/feed/feed.11tydata.js
Normal file
@@ -0,0 +1,3 @@
|
||||
module.exports = {
|
||||
eleventyExcludeFromCollections: true
|
||||
}
|
27
src/_pages/feed/feed.njk
Executable file
27
src/_pages/feed/feed.njk
Executable file
@@ -0,0 +1,27 @@
|
||||
---
|
||||
# Metadata comes from _data/metadata.json
|
||||
permalink: /feed/feed.xml
|
||||
---
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<feed xmlns="http://www.w3.org/2005/Atom" xml:base="{{ metadata.language }}">
|
||||
<title>{{ metadata.title }}</title>
|
||||
<subtitle>{{ metadata.description }}</subtitle>
|
||||
<link href="{{ permalink | htmlBaseUrl(metadata.url) }}" rel="self"/>
|
||||
<link href="{{ metadata.url | addPathPrefixToFullUrl }}"/>
|
||||
<updated>{{ collections.posts | getNewestCollectionItemDate | dateToRfc3339 }}</updated>
|
||||
<id>{{ metadata.url }}</id>
|
||||
<author>
|
||||
<name>{{ metadata.author.name }}</name>
|
||||
<email>{{ metadata.author.email }}</email>
|
||||
</author>
|
||||
{%- for post in collections.posts | reverse %}
|
||||
{% set absolutePostUrl %}{{ post.url | htmlBaseUrl(metadata.url) }}{% endset %}
|
||||
<entry>
|
||||
<title>{{ post.data.title }}</title>
|
||||
<link href="{{ absolutePostUrl }}"/>
|
||||
<updated>{{ post.date | dateToRfc3339 }}</updated>
|
||||
<id>{{ absolutePostUrl }}</id>
|
||||
<content type="html">{{ post.templateContent | transformWithHtmlBase(absolutePostUrl, post.url) }}</content>
|
||||
</entry>
|
||||
{%- endfor %}
|
||||
</feed>
|
29
src/_pages/feed/json.njk
Normal file
29
src/_pages/feed/json.njk
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
# Metadata comes from _data/metadata.json
|
||||
permalink: /feed/feed.json
|
||||
---
|
||||
{
|
||||
"version": "https://jsonfeed.org/version/1.1",
|
||||
"title": "{{ metadata.title }}",
|
||||
"language": "{{ metadata.language }}",
|
||||
"home_page_url": "{{ metadata.url | addPathPrefixToFullUrl }}",
|
||||
"feed_url": "{{ permalink | htmlBaseUrl(metadata.url) }}",
|
||||
"description": "{{ metadata.description }}",
|
||||
"author": {
|
||||
"name": "{{ metadata.author.name }}",
|
||||
"url": "{{ metadata.author.url }}"
|
||||
},
|
||||
"items": [
|
||||
{%- for post in collections.posts | reverse %}
|
||||
{%- set absolutePostUrl = post.url | htmlBaseUrl(metadata.url) %}
|
||||
{
|
||||
"id": "{{ absolutePostUrl }}",
|
||||
"url": "{{ absolutePostUrl }}",
|
||||
"title": "{{ post.data.title }}",
|
||||
"content_html": {% if post.templateContent %}{{ post.templateContent | transformWithHtmlBase(absolutePostUrl, post.url) | dump | safe }}{% else %}""{% endif %},
|
||||
"date_published": "{{ post.date | dateToRfc3339 }}"
|
||||
}
|
||||
{% if not loop.last %},{% endif %}
|
||||
{%- endfor %}
|
||||
]
|
||||
}
|
19
src/_pages/index.njk
Normal file
19
src/_pages/index.njk
Normal file
@@ -0,0 +1,19 @@
|
||||
---
|
||||
layout: home.njk
|
||||
eleventyNavigation:
|
||||
key: Accueil
|
||||
order: 1
|
||||
---
|
||||
{% set maxPosts = collections.posts.length | min(5) %}
|
||||
{#<h1>{% if maxPosts == 1 %}Article{% else %}Derniers articles{% endif %}</h1>#}
|
||||
<h1>Blog IT's on us</h1>
|
||||
{% set postslist = collections.posts | head(-5) %}
|
||||
{% set postslistCounter = collections.posts | length %}
|
||||
{% include "postslist.njk" %}
|
||||
|
||||
{#List all of the pages in the project#}
|
||||
{#<ul>#}
|
||||
{# {%- for entry in collections.all %}#}
|
||||
{# <li><a href="{{ entry.url }}"><code>{{ entry.url }}</code></a></li>#}
|
||||
{# {%- endfor %}#}
|
||||
{#</ul>#}
|
9
src/_pages/robots/robots.njk
Normal file
9
src/_pages/robots/robots.njk
Normal file
@@ -0,0 +1,9 @@
|
||||
---
|
||||
permalink: '/robots.txt'
|
||||
eleventyExcludeFromCollections: true
|
||||
---
|
||||
|
||||
User-agent: *
|
||||
Allow: /
|
||||
|
||||
Sitemap: {{ site.url }}/sitemap.xml
|
14
src/_pages/sitemap/sitemap.njk
Normal file
14
src/_pages/sitemap/sitemap.njk
Normal file
@@ -0,0 +1,14 @@
|
||||
---
|
||||
permalink: /sitemap.xml
|
||||
eleventyExcludeFromCollections: true
|
||||
---
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
|
||||
{%- for page in collections.all %}
|
||||
{% set absoluteUrl %}{{ page.url | htmlBaseUrl(metadata.url) }}{% endset %}
|
||||
<url>
|
||||
<loc>{{ absoluteUrl }}</loc>
|
||||
<lastmod>{{ page.date | htmlDateString }}</lastmod>
|
||||
</url>
|
||||
{%- endfor %}
|
||||
</urlset>
|
20
src/_pages/tags.njk
Normal file
20
src/_pages/tags.njk
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
pagination:
|
||||
data: collections
|
||||
size: 1
|
||||
alias: tag
|
||||
filter:
|
||||
- all
|
||||
- post
|
||||
- posts
|
||||
- tagList
|
||||
addAllPagesToCollections: true
|
||||
layout: home.njk
|
||||
eleventyComputed:
|
||||
title: Tags “{{ tag }}”
|
||||
permalink: /tags/{{ tag | slugify }}/
|
||||
---
|
||||
<h1>#{{ tag }}</h1>
|
||||
|
||||
{% set postslist = collections[ tag ] %}
|
||||
{% include "postslist.njk" %}
|
418
src/assets/css/index.scss
Normal file
418
src/assets/css/index.scss
Normal file
@@ -0,0 +1,418 @@
|
||||
@import "prismjs/themes/prism-okaidia.min.css";
|
||||
|
||||
/* Defaults */
|
||||
:root {
|
||||
--font-family: Century Gothic,Avant Garde,Avenir,TeXGyreAdventorRegular,Verdana,sans-serif;
|
||||
--font-family-monospace: Consolas, Menlo, Monaco, Andale Mono WT, Andale Mono, Lucida Console, Lucida Sans Typewriter, DejaVu Sans Mono, Bitstream Vera Sans Mono, Liberation Mono, Nimbus Mono L, Courier New, Courier, monospace;
|
||||
}
|
||||
|
||||
/* Theme colors */
|
||||
:root {
|
||||
--color-gray-20: #e0e0e0;
|
||||
--color-gray-50: #C0C0C0;
|
||||
--color-gray-90: #333;
|
||||
--color-green-1: #004953;
|
||||
--color-green-2: #57c183;
|
||||
|
||||
--background-color: #fff;
|
||||
|
||||
--text-color: rgba(0,0,10,.8);
|
||||
--text-color-secondary: var(--color-green-1);
|
||||
--text-color-tertiary: var(--color-green-2);
|
||||
--text-color-link: var(--color-green-1);
|
||||
--text-color-link-active: var(--color-green-1);
|
||||
}
|
||||
|
||||
/*@media (prefers-color-scheme: dark) {*/
|
||||
/* :root {*/
|
||||
/* --color-gray-20: #e0e0e0;*/
|
||||
/* --color-gray-50: #C0C0C0;*/
|
||||
/* --color-gray-90: #dad8d8;*/
|
||||
|
||||
/* !* --text-color is assigned to --color-gray-_ above *!*/
|
||||
/* --text-color: var(--color-gray-20);*/
|
||||
/* --text-color-secondary: var(--color-gray-90);*/
|
||||
/* --text-color-tertiary: var(--color-green-2);*/
|
||||
/* --text-color-link: #1493fb;*/
|
||||
/* --text-color-link-active: #6969f7;*/
|
||||
/* --text-color-link-visited: #a6a6f8;*/
|
||||
|
||||
/* --background-color: #15202b;*/
|
||||
/* }*/
|
||||
/*}*/
|
||||
|
||||
|
||||
/* Global stylesheet */
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
html,
|
||||
body {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
font-family: var(--font-family);
|
||||
color: var(--text-color);
|
||||
background-color: var(--background-color);
|
||||
}
|
||||
|
||||
main {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
|
||||
display: flex;
|
||||
}
|
||||
.main-content {
|
||||
margin: auto;
|
||||
width: 1200px;
|
||||
}
|
||||
|
||||
.right-side {
|
||||
position: sticky;
|
||||
top: 1rem;
|
||||
align-self: flex-start;
|
||||
width: 300px;
|
||||
padding-left: 60px;
|
||||
}
|
||||
|
||||
.right-side .title {
|
||||
color: var(--text-color-secondary);
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.right-side .tags {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 5px;
|
||||
}
|
||||
|
||||
.right-side .links {
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.right-side .tags,
|
||||
.right-side .links {
|
||||
padding: 0;
|
||||
margin: 12px 0 23px 0;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
h1 {
|
||||
color: var(--text-color-secondary);
|
||||
font-style: normal;
|
||||
font-size: 3em;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
h2 {
|
||||
color: var(--text-color-secondary);
|
||||
font-size: 1.7em;
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
letter-spacing: .02em;
|
||||
line-height: 1.7em;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
p {
|
||||
line-height: 1.5;
|
||||
margin: 1.5em 0;
|
||||
}
|
||||
|
||||
li {
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
a {
|
||||
color: var(--text-color-link);
|
||||
}
|
||||
a:hover {
|
||||
color: var(--text-color-link-active);
|
||||
}
|
||||
|
||||
main {
|
||||
padding: 8rem 1rem 4rem 1rem;
|
||||
}
|
||||
main :first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
table {
|
||||
margin: 1em 0;
|
||||
}
|
||||
table td,
|
||||
table th {
|
||||
padding-right: 1em;
|
||||
}
|
||||
|
||||
hr {
|
||||
margin: 4rem 15vw;
|
||||
}
|
||||
|
||||
p + h2 {
|
||||
margin-top: .5rem;
|
||||
}
|
||||
figure + h2,
|
||||
pre + h2 {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
figure {
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
figure img {
|
||||
box-shadow: 8px 5px 5px rgba(0,0,10,.20);
|
||||
}
|
||||
|
||||
figure figcaption {
|
||||
margin-top: 6px;
|
||||
font-size: 0.8125em; /* 13px /16 */
|
||||
color: rgba(0,0,10,.55);
|
||||
}
|
||||
|
||||
/* Header */
|
||||
.main-header {
|
||||
background: var(--background-color);
|
||||
box-shadow: 0 2px 8px rgba(0,0,0,.25);
|
||||
width: 100%;
|
||||
z-index: 1000;
|
||||
height: 60px;
|
||||
}
|
||||
.main-header div {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
margin: auto;
|
||||
max-width: 1400px;
|
||||
height: 60px;
|
||||
}
|
||||
.main-header-logo {
|
||||
margin: 0 23px;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.main-menu {
|
||||
display: flex;
|
||||
flex-grow: 1;
|
||||
}
|
||||
|
||||
/*!* Posts list *!*/
|
||||
.post-list {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
}
|
||||
.post-list li {
|
||||
margin: 2px;
|
||||
}
|
||||
.post-list li p {
|
||||
margin: 1.5rem 0 2.5rem;
|
||||
}
|
||||
.post-list li div {
|
||||
display: flex;
|
||||
}
|
||||
.post-list li div a {
|
||||
flex-grow: 1;
|
||||
}
|
||||
.postlist-item {
|
||||
margin-bottom: 5rem;
|
||||
}
|
||||
.postlist-header h2 {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.postlist-link {
|
||||
flex-basis: calc(100% - 1.5rem);
|
||||
padding-right: .5em;
|
||||
text-decoration: none;
|
||||
}
|
||||
.postlist-footer {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/* Tags */
|
||||
.post-tag {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: var(--text-color);
|
||||
background: var(--text-color-tertiary);
|
||||
padding: 4px;
|
||||
font-size: 0.8125em; /* 13px /16 */
|
||||
border-radius: 5px;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* Tags list */
|
||||
.post-metadata {
|
||||
display: flex;
|
||||
gap: .5em;
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
.post-list time,
|
||||
.post-metadata time {
|
||||
margin-right: 1em;
|
||||
font-size: 0.8125em; /* 13px /16 */
|
||||
color: rgba(0,0,10,.55);
|
||||
}
|
||||
.post-metadata li:first-child {
|
||||
flex-grow: 1;
|
||||
}
|
||||
.post-nav ul {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 2rem 1rem 0 0;
|
||||
}
|
||||
|
||||
/* Direct Links / Markdown Headers */
|
||||
.direct-link {
|
||||
font-family: sans-serif;
|
||||
text-decoration: none;
|
||||
font-style: normal;
|
||||
margin-left: .1em;
|
||||
}
|
||||
a[href].direct-link {
|
||||
color: transparent;
|
||||
}
|
||||
a[href].direct-link:focus,
|
||||
:hover > a[href].direct-link {
|
||||
color: var(--color-gray-50);
|
||||
}
|
||||
|
||||
.main-footer {
|
||||
align-items: center;
|
||||
background: var(--color-green-1);
|
||||
display: flex;
|
||||
height: 300px;
|
||||
padding: 0 103px;
|
||||
}
|
||||
|
||||
.main-footer,
|
||||
.main-footer a {
|
||||
color: var(--background-color);
|
||||
}
|
||||
|
||||
.footer-contact {
|
||||
display: flex;
|
||||
flex: 0 20%;
|
||||
flex-direction: column;
|
||||
font-size: 1em;
|
||||
line-height: 1.5em;
|
||||
}
|
||||
|
||||
.footer-contact p {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.footer-contact-title {
|
||||
color: var(--background-color);
|
||||
font-size: 1.2em;
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
letter-spacing: .04em;
|
||||
line-height: 1.7em;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.footer-contact div:last-child {
|
||||
padding-top: 23px;
|
||||
}
|
||||
|
||||
.footer-links {
|
||||
display: flex;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
gap: 12px;
|
||||
}
|
||||
|
||||
.footer-center {
|
||||
flex: 0 60%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/*
|
||||
* New diff- syntax
|
||||
*/
|
||||
pre[class*="language-diff-"] {
|
||||
--eleventy-code-padding: 1.25em;
|
||||
padding-left: var(--eleventy-code-padding);
|
||||
padding-right: var(--eleventy-code-padding);
|
||||
}
|
||||
.token.deleted {
|
||||
background-color: hsl(0, 51%, 37%);
|
||||
color: inherit;
|
||||
}
|
||||
.token.inserted {
|
||||
background-color: hsl(126, 31%, 39%);
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
/* Make the + and - characters unselectable for copy/paste */
|
||||
.token.prefix.unchanged,
|
||||
.token.prefix.inserted,
|
||||
.token.prefix.deleted {
|
||||
-webkit-user-select: none;
|
||||
user-select: none;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding-top: 2px;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
.token.prefix.inserted,
|
||||
.token.prefix.deleted {
|
||||
width: var(--eleventy-code-padding);
|
||||
background-color: rgba(0,0,0,.2);
|
||||
}
|
||||
|
||||
/* Optional: full-width background color */
|
||||
.token.inserted:not(.prefix),
|
||||
.token.deleted:not(.prefix) {
|
||||
display: block;
|
||||
margin-left: calc(-1 * var(--eleventy-code-padding));
|
||||
margin-right: calc(-1 * var(--eleventy-code-padding));
|
||||
text-decoration: none; /* override del, ins, mark defaults */
|
||||
color: inherit; /* override del, ins, mark defaults */
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 1200px) {
|
||||
main {
|
||||
max-width: 100%;
|
||||
flex-direction: column;
|
||||
padding-top: 1rem;
|
||||
}
|
||||
.main-content{
|
||||
max-width: 100%;
|
||||
}
|
||||
.right-side {
|
||||
width: 100%;
|
||||
padding-left: 0;
|
||||
padding-top: 5rem;
|
||||
}
|
||||
.main-footer {
|
||||
flex-direction: column-reverse;
|
||||
height: auto;
|
||||
padding: 23px 0;
|
||||
}
|
||||
.post-nav ul {
|
||||
flex-direction: column;
|
||||
}
|
||||
.footer-contact {
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
padding: 0 23px;
|
||||
width: 100%;
|
||||
}
|
||||
.footer-center {
|
||||
padding: 0 23px 23px;
|
||||
}
|
||||
}
|
1
src/assets/js/index.js
Normal file
1
src/assets/js/index.js
Normal file
@@ -0,0 +1 @@
|
||||
import '../css/index.scss';
|
BIN
src/images/blog/kitty_1.jpeg
Normal file
BIN
src/images/blog/kitty_1.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
BIN
src/images/blog/kitty_2.jpeg
Normal file
BIN
src/images/blog/kitty_2.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
1
src/images/favicon.svg
Normal file
1
src/images/favicon.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 4.9 KiB |
1
src/images/logo.svg
Normal file
1
src/images/logo.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg width="165" height="33" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3 3.346h2.72v26.455H3zM9.262 5.943V3.346h14.942v2.587h-6.078V29.8H15.34V5.943zM31.254 13.222l-1.425-.796c.464-.911.788-1.623.95-2.136.162-.514.28-1.184.356-2h-1.63V3.345h3.358v3.09c0 1.55-.108 2.764-.324 3.644-.227.88-.648 1.927-1.285 3.142zM51.184 11.86l-1.663 1.676c-1.392-1.309-2.742-1.958-4.07-1.958-.842 0-1.565.272-2.17.806s-.907 1.173-.907 1.885c0 .64.248 1.236.745 1.812.497.587 1.533 1.278 3.12 2.074 1.933.974 3.25 1.906 3.94 2.806a5.024 5.024 0 011.026 3.08c0 1.602-.583 2.963-1.749 4.084-1.166 1.11-2.623 1.676-4.361 1.676a7.97 7.97 0 01-3.336-.734 7.226 7.226 0 01-2.624-2.031l1.63-1.802c1.328 1.456 2.732 2.179 4.222 2.179 1.036 0 1.922-.325 2.656-.974.734-.65 1.101-1.414 1.101-2.283 0-.723-.238-1.362-.723-1.927-.486-.555-1.577-1.247-3.272-2.084-1.824-.912-3.055-1.812-3.714-2.702-.658-.89-.982-1.896-.982-3.038 0-1.487.518-2.723 1.565-3.707 1.048-.984 2.365-1.477 3.963-1.477 1.857 0 3.724.88 5.603 2.64z" fill="#004953"/><path d="M80.851 26.948c1.219.058 4.115-1.686 5.513-3.363 1.388-1.67 2.258-5.025 1.67-7.315-.239-.917-3.962-3.33-6.944-3.33-3.63 0-6.305 1.909-7.378 3.24-.392.495-.443 3.925 1.048 6.529 1.678 2.925 5.078 4.19 6.091 4.24z" fill="#57c183"/><path d="M82.964 28.378c-5.93 0-10.76-4.686-10.76-10.438 0-5.752 4.83-10.438 10.76-10.438s10.76 4.686 10.76 10.438c0 5.752-4.821 10.438-10.76 10.438zm0-20.67c-5.819 0-10.547 4.587-10.547 10.232s4.728 10.232 10.547 10.232c5.82 0 10.548-4.587 10.548-10.232S88.783 7.708 82.964 7.708z" fill="#004953"/><path d="M78.543 28.378c-5.93 0-10.761-4.686-10.761-10.438 0-5.752 4.822-10.438 10.76-10.438 5.939 0 10.761 4.686 10.761 10.438 0 5.752-4.83 10.438-10.76 10.438zm0-20.67c-5.82 0-10.548 4.587-10.548 10.232s4.728 10.232 10.548 10.232c5.819 0 10.547-4.587 10.547-10.232S84.362 7.708 78.543 7.708z" fill="#004953"/><path d="M80.766 32.783c-5.93 0-10.76-4.686-10.76-10.438 0-5.752 4.822-10.438 10.76-10.438 5.939 0 10.76 4.686 10.76 10.438 0 5.752-4.83 10.438-10.76 10.438zm0-20.67c-5.819 0-10.547 4.587-10.547 10.232s4.728 10.232 10.547 10.232c5.82 0 10.548-4.587 10.548-10.232 0-5.636-4.729-10.232-10.548-10.232z" fill="#004953"/><path d="M80.843 8.832c.536 0 .971-.422.971-.942s-.435-.942-.971-.942c-.537 0-.971.422-.971.942s.434.942.97.942z" fill="#fff"/><path d="M80.843 9.047c-.656 0-1.184-.512-1.184-1.149 0-.636.536-1.157 1.184-1.157.647 0 1.184.513 1.184 1.15 0 .636-.528 1.156-1.184 1.156zm0-1.892a.749.749 0 00-.758.735c0 .405.34.736.758.736.417 0 .758-.33.758-.736a.743.743 0 00-.758-.735z" fill="#004953"/><path d="M91.28 25.428c.536 0 .971-.422.971-.943 0-.52-.435-.942-.971-.942-.537 0-.972.422-.972.942s.435.943.972.943z" fill="#fff"/><path d="M91.28 25.643c-.656 0-1.185-.521-1.185-1.15 0-.627.537-1.148 1.185-1.148.647 0 1.184.52 1.184 1.149 0 .628-.528 1.149-1.184 1.149zm0-1.893a.749.749 0 00-.759.735c0 .405.341.736.759.736.417 0 .758-.33.758-.736a.743.743 0 00-.758-.735z" fill="#004953"/><path d="M70.355 25.428c.536 0 .971-.422.971-.943 0-.52-.435-.942-.971-.942s-.971.422-.971.942.435.943.971.943z" fill="#fff"/><path d="M70.355 25.643c-.656 0-1.184-.521-1.184-1.15 0-.627.536-1.148 1.184-1.148.647 0 1.184.52 1.184 1.149 0 .628-.537 1.149-1.184 1.149zm0-1.893a.749.749 0 00-.758.735c0 .405.34.736.758.736.417 0 .758-.33.758-.736a.749.749 0 00-.758-.735zM97.293 10.227h2.59v3.508c1.037-1.34 2.193-2.346 3.445-3.016 1.263-.67 2.634-.995 4.114-.995 1.51 0 2.85.367 4.016 1.11a6.766 6.766 0 012.59 3.006c.562 1.257.832 3.215.832 5.886V29.8h-2.591v-9.332c0-2.251-.097-3.76-.291-4.514-.303-1.298-.875-2.272-1.728-2.922-.853-.649-1.965-.984-3.336-.984-1.565 0-2.98.503-4.221 1.508-1.242 1.006-2.063 2.252-2.462 3.739-.248.974-.367 2.744-.367 5.32v7.174h-2.591z" fill="#004953"/><path d="M131.752 9.52h2.303v11.866c0 1.408.027 2.287.091 2.63.11.778.383 1.424.804 1.945.42.521 1.06.957 1.928 1.307.868.35 1.745.53 2.622.53.768 0 1.5-.14 2.193-.413a4.744 4.744 0 001.755-1.152c.476-.49.813-1.081 1.032-1.774.156-.498.238-1.525.238-3.073V9.52h2.303v11.866c0 1.758-.201 3.174-.603 4.256-.402 1.081-1.206 2.023-2.412 2.824-1.206.802-2.669 1.199-4.386 1.199-1.865 0-3.455-.382-4.79-1.137-1.324-.754-2.22-1.758-2.667-3.003-.284-.762-.42-2.147-.42-4.14z" fill="#004953" stroke="#004953" stroke-width=".272"/><path d="M161.978 11.86l-1.673 1.676c-1.393-1.309-2.742-1.958-4.07-1.958-.842 0-1.566.272-2.17.806-.605.534-.896 1.173-.896 1.885 0 .64.248 1.236.745 1.812.496.587 1.533 1.278 3.12 2.074 1.932.974 3.249 1.906 3.94 2.806a5.019 5.019 0 011.026 3.08c0 1.602-.583 2.963-1.749 4.084-1.166 1.11-2.623 1.676-4.362 1.676a7.97 7.97 0 01-3.336-.734 7.116 7.116 0 01-2.623-2.031l1.63-1.802c1.328 1.456 2.731 2.179 4.221 2.179 1.037 0 1.933-.325 2.656-.974.724-.65 1.101-1.414 1.101-2.283 0-.723-.237-1.362-.723-1.927-.486-.555-1.576-1.247-3.271-2.084-1.825-.912-3.056-1.812-3.714-2.702-.659-.89-.983-1.896-.983-3.038 0-1.487.519-2.723 1.566-3.707 1.047-.984 2.364-1.477 3.962-1.477 1.857 0 3.725.88 5.603 2.64z" fill="#004953"/></svg>
|
After Width: | Height: | Size: 4.9 KiB |
Reference in New Issue
Block a user