monitoring-jekyll-theme 0.6.1 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +127 -21
  3. data/_includes/accessibility.html +8 -2
  4. data/_includes/actions/energy.html +24 -13
  5. data/_includes/actions/quality.html +7 -1
  6. data/_includes/competitors.html +23 -16
  7. data/_includes/index/badge.html +9 -9
  8. data/_includes/index/energy.html +2 -2
  9. data/_includes/index/loading.html +1 -1
  10. data/_includes/index/position.html +8 -1
  11. data/_includes/index/score.html +9 -3
  12. data/_includes/index/security.html +12 -7
  13. data/_includes/index/styles.html +4 -4
  14. data/_includes/keywords.html +23 -7
  15. data/_includes/seo.html +18 -8
  16. data/_includes/statistiques.html +1 -1
  17. data/_includes/styles.html +25 -15
  18. data/_includes/value/lastfiledate.html +15 -2
  19. data/_includes/value/loadingdata.html +15 -11
  20. data/_layouts/default.html +12 -41
  21. data/_layouts/monitoring.html +4 -2
  22. data/_layouts/rank.html +2 -2
  23. data/assets/css/styles.css +183 -106
  24. data/assets/favicons/android-icon-144x144.png +0 -0
  25. data/assets/favicons/android-icon-192x192.png +0 -0
  26. data/assets/favicons/android-icon-36x36.png +0 -0
  27. data/assets/favicons/android-icon-48x48.png +0 -0
  28. data/assets/favicons/android-icon-72x72.png +0 -0
  29. data/assets/favicons/android-icon-96x96.png +0 -0
  30. data/assets/favicons/apple-icon-114x114.png +0 -0
  31. data/assets/favicons/apple-icon-120x120.png +0 -0
  32. data/assets/favicons/apple-icon-144x144.png +0 -0
  33. data/assets/favicons/apple-icon-152x152.png +0 -0
  34. data/assets/favicons/apple-icon-180x180.png +0 -0
  35. data/assets/favicons/apple-icon-57x57.png +0 -0
  36. data/assets/favicons/apple-icon-60x60.png +0 -0
  37. data/assets/favicons/apple-icon-72x72.png +0 -0
  38. data/assets/favicons/apple-icon-76x76.png +0 -0
  39. data/assets/favicons/apple-icon-precomposed.png +0 -0
  40. data/assets/favicons/apple-icon.png +0 -0
  41. data/assets/favicons/browserconfig.xml +2 -0
  42. data/assets/favicons/favicon-16x16.png +0 -0
  43. data/assets/favicons/favicon-32x32.png +0 -0
  44. data/assets/favicons/favicon-96x96.png +0 -0
  45. data/assets/favicons/favicon-original.png +0 -0
  46. data/assets/favicons/favicon.ico +0 -0
  47. data/assets/favicons/manifest.json +41 -0
  48. data/assets/favicons/ms-icon-144x144.png +0 -0
  49. data/assets/favicons/ms-icon-150x150.png +0 -0
  50. data/assets/favicons/ms-icon-310x310.png +0 -0
  51. data/assets/favicons/ms-icon-70x70.png +0 -0
  52. data/assets/images/loowtus-card.svg +114 -0
  53. data/assets/images/lotus.svg +1 -18
  54. data/assets/images/lowtus.png +0 -0
  55. data/assets/images/lowtus.svg +1 -0
  56. data/scripts/package.sh +13 -0
  57. data/scripts/perftest.sh +306 -0
  58. metadata +34 -4
  59. data/_plugins/humanize.rb +0 -258
  60. data/assets/favicons/favicon.png +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e48528e29eb01eca6279cfa0e027591ab5012a15cf078cb649da472abde9788d
4
- data.tar.gz: 664854d71ae82ad631487547273aef3c68c18b2a0964456958d2a3ec51f88245
3
+ metadata.gz: 12dba1d99668139af46a318273d4d62f37e906db0546c43c55076c669e18e14c
4
+ data.tar.gz: 116f98141759cc7108a6b3dcc8205a79d61102417fdbed1fae26ece5e9ab9dfb
5
5
  SHA512:
6
- metadata.gz: 2e2f5f1a7c1e28beb7ad7f78b8553fa2f73c4ab68c5d48a80df13d42a5f5a1a8efe62e2264be25e7df713f9539c1570bcd8b6666d34ab64f8b069f821c1427be
7
- data.tar.gz: c9a6c2bc63c27a44565379511425e6096ed4dd03fe53e5c99e57f83d2e2df0c754406fa0e3bf71e4a8b457dfbcba760dc15c8add2a2882705f09a132c3967eaf
6
+ metadata.gz: 804d72c9b76c63714238c9e3fb1e43495a6d5f31160d731d24e865a3cace16d3bcf6e2f6cd27576784643ad285bb7c4d3d6ba5916d41bfd1b39d4ed4e96dab59
7
+ data.tar.gz: e4552248f8f083f0bc67f0733fd15b5b4dab1666ed97d3f163b33ccdd30bdfa01c4133a4d8c16e056e81c5139d17eb2a9480adc3b4a9548f557e4160ba8c52cf
data/README.md CHANGED
@@ -1,34 +1,81 @@
1
1
  # Monitoring Tool for website
2
2
 
3
- ## Reste à faire
3
+ Voici, les ressource et actions concernant l’outils Lowtus. L'évolution de cet outil doit se faire sur des principes simples et économes.
4
+
5
+ Ce fichier doit donc représenter l’état du projet. Ainsi, il liste : des actions à faire, des idées à tester, des ressources à étudier… des classements de sites.
6
+
7
+ ## Esprit de l’outil
8
+
9
+ 1. Lisible par des "non techniciens"
10
+ 2. Favorise l’action
11
+ 3. Modulable
12
+ 4. Semi-automatique // (action humaine fait partie du processus)
13
+ 5. Global
14
+ 6. Répicable
15
+
16
+ ## Reste à faire - (plugin TODO+ sur VSCode)
4
17
 
5
18
  ✔ Afficher une jauge pour les scores sur 100 @done(19-09-12 09:15)
6
19
  ✔ Ajouter l’écoindex @done(19-09-12 09:15)
7
20
  ✔ Ajouter la liste de corrections à appliquer => pour gagner des points @done(19-09-16 15:11)
8
- Lister les valeurs avec du potential saving et estimer le gain en point.
9
- Ne plus faire appel à Yellow lab tool :: trop lourd
10
- ☐ S’inspirer de l’écometer
11
- ☐ Micro format et schema detection
21
+ Ne plus faire appel à Yellow lab tool :: trop lourd @done(19-10-11 17:23)
22
+ Lister les valeurs avec du potential saving et estimer le gain en point. // Partiellement fait
23
+ ☐ S’inspirer de l’écometer (?)
24
+ Test des Micro formats et schema
25
+ ☐ curl -s -D- <https://example.com/> | grep -i Strict // ??
26
+ ☐ Automatiser la correction de JSON incorrects
27
+ ☐ Performance budget de Lighthouse
28
+ ☐ Multiplier le chargement des bytes de Javascript
29
+ ☐ <https://developer.mozilla.org/en-US/docs/Web/API/Long_Tasks_API>
30
+ ☐ Droits utilisateurs - sous thèmes - générer des sous pages de tests
12
31
 
13
- ## A mettre en place
32
+ ## À mettre en place
33
+
34
+ - Création d’indicateurs
35
+ - HTML rewrite et service workers testing - <https://justmarkup.com/articles/2017-11-02-network-based-image-loading/> - <https://calendar.perfplanet.com/2019/prototyping-optimizations-with-cloudflare-workers-and-webpagetest/>
36
+
37
+ ### Test de la fabrication de plugins LightHouse
38
+
39
+ - <https://engineering.q42.nl/making-a-lighthouse-plugin-work-with-lighthouse-ci/>
40
+
41
+ ### Tests automatisés
14
42
 
15
- - <https://codepen.io/pbakaus/pen/OJLNNvm>
16
43
  - <https://www.npmjs.com/package/google>
17
- - <https://raphaelfabeni.com/ui-interactions/>
18
- - <https://www.ekopedia.fr/wiki/H%C3%A9bergement_Internet>
44
+ - <https://webhint.io/>
45
+ - <https://www.ssllabs.com>
46
+
47
+ ### Test erreurs de sécurités
48
+
49
+ - <https://github.com/lirantal/is-website-vulnerable>
50
+ - <https://github.com/qazbnm456/awesome-web-security>
51
+
52
+ ### Coût du site
53
+
54
+ - <https://www.websitecarbon.com/>
55
+ - <https://whatdoesmysitecost.com/>
56
+
57
+ ### Afficher les couleurs sous un mode graphique
58
+
59
+ - <https://una.im/css-color-theming/> // Sass
60
+ - <https://css-tricks.com/a-handy-sass-powered-tool-for-making-balanced-color-palettes/> // Variables CSS
61
+ - <https://medium.com/@NateBaldwin/leonardo-an-open-source-contrast-based-color-generator-92d61b6521d2>
62
+
63
+ ### Test automatisés de contraste de boutons
64
+
19
65
  - <https://www.aditus.io/button-contrast-checker/>
20
- - <https://github.com/sethblack/python-seo-analyzer>
21
66
 
22
- ## Annuaires Immobilier
67
+ ### Animation de l’interface
23
68
 
24
- - <https://www.avendrealouer.fr/>
25
- - <http://www.ma-cabane.fr/>
26
- - <http://www.lecoute.com/>
27
- - <https://www.hannuaire.fr/>
69
+ - <https://raphaelfabeni.com/ui-interactions/>
70
+ - <https://codepen.io/pbakaus/pen/OJLNNvm>
71
+
72
+ ### Autres
73
+
74
+ - <https://developers.google.com/web/tools/chrome-devtools/network/reference> // has response header encoding
28
75
 
29
76
  ## Commandes
30
77
 
31
- ### Caractères à remplacer
78
+ ### Caractères à remplacer de manière manuelle
32
79
 
33
80
  _Regular expression in all files_
34
81
 
@@ -49,6 +96,26 @@ replace \\/ => / seocli
49
96
 
50
97
  ## Ressources
51
98
 
99
+ ### Connexion utilisateur
100
+
101
+ - <https://www.stackbit.com/blog/open-authoring-netlifycms/>
102
+ - <https://www.zachleat.com/web/eleventy-contributors/>
103
+ - <https://www.smashingmagazine.com/2019/12/dynamic-async-functionality-jamsstack-websites/>
104
+ - <https://github.com/chromeos/static-site-scaffold>
105
+
106
+ ### Security
107
+
108
+ - <https://github.com/nico3333fr/CSP-useful>
109
+ - <https://sslmate.com/certspotter/api/>
110
+
111
+ ### Accessibilité
112
+
113
+ - <https://www.w3.org/WAI/test-evaluate/>
114
+
115
+ ### Performance
116
+
117
+ - <https://github.com/Pixboost/lighthouse-ci-docker>
118
+
52
119
  ### Statistiques
53
120
 
54
121
  - <https://httparchive.org/reports/state-of-the-web>
@@ -58,7 +125,13 @@ replace \\/ => / seocli
58
125
  - <https://github.com/bartveneman/constyble>
59
126
  - <https://github.com/sethblack/python-seo-analyzer>
60
127
 
61
- ### Articles
128
+ ### Curl & Grep & JSON
129
+
130
+ - <https://medium.com/@LiliSousa/web-scraping-with-bash-690e4ee7f98d>
131
+ - <https://css-tricks.com/query-json-documents-in-the-terminal-with-groq/>
132
+ - <https://github.com/KilledByAPixel/JSONCrush>
133
+
134
+ ### Articles & divers
62
135
 
63
136
  - <https://www.smashingmagazine.com/2019/01/front-end-performance-checklist-2019-pdf-pages/>
64
137
  - <https://css-tricks.com/in-search-of-a-stack-that-monitors-the-quality-and-complexity-of-css/>
@@ -74,7 +147,40 @@ replace \\/ => / seocli
74
147
  - <http://www.ecoindex.fr/>
75
148
  - <https://snapboard.io>
76
149
  - <https://v8.dev/blog/cost-of-javascript-2019>
77
-
78
- ### Curl & Grep
79
-
80
- - <https://medium.com/@LiliSousa/web-scraping-with-bash-690e4ee7f98d>
150
+ - <https://openclassrooms.com/fr/courses/6227476-appliquez-les-principes-du-green-it-dans-votre-entreprise/6699431-decouvrez-limpact-du-numerique-sur-lenvironnement>
151
+ - <https://www.ekopedia.fr/wiki/H%C3%A9bergement_Internet>
152
+ - <https://dev.to/addyosmani/loading-web-pages-fast-on-a-20-feature-phone-8h6>
153
+ - <https://www.smashingmagazine.com/2020/01/front-end-performance-checklist-2020-pdf-pages/>
154
+ - <https://calendar.perfplanet.com/2019/prototyping-optimizations-with-cloudflare-workers-and-webpagetest/>
155
+ - <https://dev.to/addyosmani/monitoring-performance-with-the-pagespeed-insights-api-33k7>
156
+ - <https://www.udacity.com/course/offline-web-applications--ud899>
157
+ - <https://dev.to/devteam/instant-webpages-and-terabytes-of-data-savings-through-the-magic-of-service-workers-1mkc>
158
+ - <https://snyk.io/blog/77-percent-of-sites-use-vulnerable-js-libraries/>
159
+ - <https://24ways.org/2019/twelve-days-of-front-end-testing/?mc_cid=4596c5b43a&mc_eid=971aa7dfa4>
160
+ - <https://ux-speed-calculator.netlify.com/>
161
+
162
+ ### Videos
163
+
164
+ - <https://www.youtube.com/watch?v=cXLOIIJ1UaE>
165
+ - <https://www.youtube.com/watch?v=JvJ0v5OohNg>
166
+
167
+ ## Note d’interntion
168
+
169
+ ### Evolutions possibles
170
+
171
+ 1. Remonter des indicateurs plus diverses (sécurité, SEO, RGPD (?)…)
172
+ 2. Construire des composants plus parlants : couleurs, comparatif entre page clefs.
173
+ 3. Axer le tableau sur des scores forts et pertinents: énergie, coût, sécurité…
174
+ 4. Modulariser le fonctionnement
175
+ 5. Rendre le code réplicable
176
+
177
+ ### R&D technique
178
+
179
+ 1. Porter le site sous Eleventy (pour plus de performance sur les gros volumes)
180
+ 2. Construire des plugins LightHouse
181
+ 3. Tester des librairies pour remonter des scores plus variés
182
+ 4. Rendre l’outil déployable (contexte d’intégration continue)
183
+ 5. Création d’un bookmarklet pour lancer un audit à la main.
184
+ 6. Coder une API pour le calcul des scores forts
185
+ 7. Lancer des tests depuis des pays spécifiques.
186
+ 8. Permettre la génération multi-rapports par instance (et pas un seul rapport par instance)
@@ -1,10 +1,16 @@
1
- {% for website in site.pagestested %}
1
+ {% for website in pagestested %}
2
+
3
+ {% if site.data %}
4
+ {% assign axe = site.data.[website].axe[datelastcrawl] %}
5
+ {% else %}
6
+ {% assign axe = [website].axe[datelastcrawl] %}
7
+ {% endif %}
2
8
 
3
9
  <h3 class="js-expandmore mb0 mt0" data-hideshow-prefix-class="animated">{{ website }} - Impact : Critical</h3>
4
10
  <div class="js-to_expand">
5
11
 
6
12
  <div class="axe flex-list">
7
- {% for a11y in site.data.[website].axe[datelastcrawl] limit: 1 %}
13
+ {% for a11y in axe limit: 1 %}
8
14
 
9
15
  {% for a11ylist in a11y %}
10
16
  {% for a11yvalue in a11ylist %}
@@ -1,6 +1,12 @@
1
1
  <div class="list-actions list-actions-table">
2
- {% for website in site.pagestested limit: 1 %}
2
+ {% for website in pagestested limit: 1 %}
3
+
4
+ {% if site.data %}
3
5
  {% assign lighthouse = site.data.[website].lighthouse[datelastcrawl] %}
6
+ {% else %}
7
+ {% assign lighthouse = [website].lighthouse[datelastcrawl] %}
8
+ {% endif %}
9
+
4
10
  {% assign total = 0 %}
5
11
  {% assign networkrequests = lighthouse.audits.["network-requests"].details.items %}
6
12
  {% if networkrequests.resourceType != 'Document' %}{% if networkrequests.resourceType != 'Other' %}
@@ -18,21 +24,26 @@
18
24
 
19
25
  <h3 class="js-expandmore mb0 mt0" data-hideshow-prefix-class="animated" id="diagnostic-energy">Points energie</h3>
20
26
  <div class="js-to_expand">
21
- {% for website in site.pagestested limit: 1 %}
27
+ {% for website in pagestested limit: 1 %}
28
+
29
+ {% if site.data %}
22
30
  {% assign lighthouse = site.data.[website].lighthouse[datelastcrawl] %}
31
+ {% else %}
32
+ {% assign lighthouse = [website].lighthouse[datelastcrawl] %}
33
+ {% endif %}
23
34
 
24
- {% assign networkrequests = lighthouse.audits.["network-requests"].details.items | group_by: "resourceType" %}
25
- {% for items in networkrequests %}
26
- {% if items.items %}
27
- {% if items.items %}<h3>{{ items.name }}</h3>{% endif %}
28
- <ul>
29
- {% assign requests = items.items | sort: 'transferSize'%}
30
- {% for request in requests reversed %}
31
- <li><a href="{{ request.url }}" title="{{ request.url }}">{{ request.url | slice: 0, 100 }}</a><b>{{ request.transferSize | filesize }}</b><b class="pointseco">{{ request.transferSize | times: 1.00 | times: 5 | divided_by: 6 | times: 100 | divided_by: ecoworth | round: 0 }}</b></li>
32
- {% endfor %}
33
- </ul>
34
- {% endif %}
35
+ {% assign networkrequests = lighthouse.audits.["network-requests"].details.items | group_by: "resourceType" %}
36
+ {% for items in networkrequests %}
37
+ {% if items.items %}
38
+ {% if items.items %}<h3>{{ items.name }}</h3>{% endif %}
39
+ <ul>
40
+ {% assign requests = items.items | sort: 'transferSize'%}
41
+ {% for request in requests reversed %}
42
+ <li><a href="{{ request.url }}" title="{{ request.url }}">{{ request.url | slice: 0, 100 }}</a><b>{{ request.transferSize}}</b><b class="pointseco">{{ request.transferSize | times: 1.00 | times: 5 | divided_by: 6 | times: 100 | divided_by: ecoworth | round: 0 }}</b></li>
35
43
  {% endfor %}
44
+ </ul>
45
+ {% endif %}
46
+ {% endfor %}
36
47
  {% endfor %}
37
48
  </div>
38
49
  </div>
@@ -1,9 +1,15 @@
1
1
  <div class="list-actions list-actions-title">
2
- {% for website in site.pagestested limit: 1 %}
2
+ {% for website in pagestested limit: 1 %}
3
3
  <h3 class="js-expandmore mb0 mt0" data-hideshow-prefix-class="animated" id="diagnostic-quality">Points de conformite</h3>
4
4
  <div class="js-to_expand">
5
5
  <ul>
6
+
7
+ {% if site.data %}
6
8
  {% assign lighthouse = site.data.[website].lighthouse[datelastcrawl] %}
9
+ {% else %}
10
+ {% assign lighthouse = [website].lighthouse[datelastcrawl] %}
11
+ {% endif %}
12
+
7
13
  {% assign categories = lighthouse.categories %}
8
14
  {% for audit in lighthouse.audits %}
9
15
  {% for value in audit %}
@@ -1,17 +1,24 @@
1
- {% for website in site.pagestested limit:1 %}
2
- {% assign serpstat = site.data.[website].serpstat[datelastcrawl] %}
3
- {% if serpstat %}
4
- <h3>Concurrents</h3>
5
- <div class="list-actions list-actions-grid">
6
- <ol>
7
- {% for value in serpstat %}
8
- <li><a href="{{ value.domain }}">{{ value.domain }}</a> {% if value.FBshare %}<b>{{ value.FBshare }} {% include svg/facebook.svg %}</b>{% endif %}</li>
9
- {% endfor %}
10
- </ol>
11
- </div>
12
- <h3>Graphique de similarité</h3>
13
- <div class="center">
14
- {% include competitorsgraph.html %}
15
- </div>
16
- {% endif %}
1
+ {% for website in pagestested limit:1 %}
2
+
3
+
4
+ {% if site.data %}
5
+ {% assign serpstat = site.data.[website].serpstat[datelastcrawl] %}
6
+ {% else %}
7
+ {% assign serpstat = [website].serpstat[datelastcrawl] %}
8
+ {% endif %}
9
+
10
+ {% if serpstat %}
11
+ <h3>Concurrents</h3>
12
+ <div class="list-actions list-actions-grid">
13
+ <ol>
14
+ {% for value in serpstat %}
15
+ <li><a href="{{ value.domain }}">{{ value.domain }}</a> {% if value.FBshare %}<b>{{ value.FBshare }} {% include svg/facebook.svg %}</b>{% endif %}</li>
16
+ {% endfor %}
17
+ </ol>
18
+ </div>
19
+ <h3>Graphique de similarité</h3>
20
+ <div class="center">
21
+ {% include competitorsgraph.html %}
22
+ </div>
23
+ {% endif %}
17
24
  {% endfor %}
@@ -7,9 +7,9 @@
7
7
  </div>
8
8
  <div>
9
9
  <ul>
10
- {% if site.data.[website].greenweb[datelastcrawl] %}
11
- <li>
12
- <svg width="48" viewBox="0 0 512 512" fill="{% if site.data.[website].greenweb[datelastcrawl].green == false %}#22961e{% else %}#b00202{% endif %}">
10
+ {% if greenweb %}
11
+ <li>
12
+ <svg width="48" viewBox="0 0 512 512" fill="{% if greenweb.green == false %}#22961e{% else %}#b00202{% endif %}">
13
13
  <path d="M298.667 443.733h-85.333a8.536 8.536 0 00-8.533 8.533 8.536 8.536 0 008.533 8.533h85.333a8.536 8.536 0 008.533-8.533 8.536 8.536 0 00-8.533-8.533zM98.133 17.067H42.667C19.14 17.067 0 36.207 0 59.733V435.2c0 23.526 19.14 42.667 42.667 42.667h51.2c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.533-8.533-8.533h-51.2c-14.114 0-25.6-11.486-25.6-25.6V59.733c0-14.114 11.486-25.6 25.6-25.6h55.467a8.536 8.536 0 008.533-8.533c0-4.71-3.823-8.533-8.534-8.533zM298.667 409.6h-85.333c-4.71 0-8.533 3.823-8.533 8.533s3.823 8.533 8.533 8.533h85.333c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.533-8.533-8.533zM349.867 238.933H162.133c-4.71 0-8.533 3.823-8.533 8.533s3.823 8.533 8.533 8.533h187.733c4.71 0 8.533-3.823 8.533-8.533s-3.822-8.533-8.532-8.533zM264.789 213.333a8.53 8.53 0 00-8.533-8.533h-.085c-4.71 0-8.491 3.823-8.491 8.533 0 4.71 3.866 8.533 8.576 8.533a8.53 8.53 0 008.533-8.533zM273.067 358.4c0-9.412-7.654-17.067-17.067-17.067-9.412 0-17.067 7.654-17.067 17.067s7.654 17.067 17.067 17.067c9.412 0 17.067-7.655 17.067-17.067z"/>
14
14
  <path d="M94.123 68.267h-.085c-4.71 0-8.491 3.823-8.491 8.533s3.866 8.533 8.576 8.533c4.719 0 8.533-3.823 8.533-8.533s-3.814-8.533-8.533-8.533zM93.867 409.6H76.8c-4.71 0-8.533 3.823-8.533 8.533s3.823 8.533 8.533 8.533h17.067c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.533-8.533-8.533zM94.123 136.533h-.085c-4.71 0-8.491 3.823-8.491 8.533 0 4.71 3.866 8.533 8.576 8.533a8.53 8.53 0 008.533-8.533 8.53 8.53 0 00-8.533-8.533zM93.867 375.467H76.8c-4.71 0-8.533 3.823-8.533 8.533s3.823 8.533 8.533 8.533h17.067c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.533-8.533-8.533zM93.867 238.933h-51.2c-4.71 0-8.533 3.823-8.533 8.533S37.956 256 42.667 256h51.2c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.534-8.533-8.534zM42.667 187.733h51.2c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.533-8.533-8.533h-51.2c-4.71 0-8.533 3.823-8.533 8.533s3.822 8.533 8.533 8.533zM94.123 204.8h-.085c-4.71 0-8.491 3.823-8.491 8.533 0 4.71 3.866 8.533 8.576 8.533a8.53 8.53 0 008.533-8.533 8.53 8.53 0 00-8.533-8.533zM42.667 119.467h51.2c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.533-8.533-8.533h-51.2c-4.71 0-8.533 3.823-8.533 8.533s3.822 8.533 8.533 8.533zM349.867 0H162.133c-23.526 0-42.667 19.14-42.667 42.667v426.667c0 23.526 19.14 42.667 42.667 42.667h187.733c23.526 0 42.667-19.14 42.667-42.667V42.667C392.533 19.14 373.393 0 349.867 0zm25.6 469.333c0 14.114-11.486 25.6-25.6 25.6H162.133c-14.114 0-25.6-11.486-25.6-25.6V42.667c0-14.114 11.486-25.6 25.6-25.6h187.733c14.114 0 25.6 11.486 25.6 25.6v426.666zM418.133 187.733h51.2c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.533-8.533-8.533h-51.2c-4.71 0-8.533 3.823-8.533 8.533s3.823 8.533 8.533 8.533zM418.304 136.533c-4.71 0-8.491 3.823-8.491 8.533 0 4.71 3.866 8.533 8.576 8.533a8.53 8.53 0 008.533-8.533 8.53 8.53 0 00-8.533-8.533h-.085zM418.304 204.8c-4.71 0-8.491 3.823-8.491 8.533 0 4.71 3.866 8.533 8.576 8.533a8.53 8.53 0 008.533-8.533 8.53 8.53 0 00-8.533-8.533h-.085zM418.389 85.333c4.719 0 8.533-3.823 8.533-8.533s-3.814-8.533-8.533-8.533h-.085c-4.71 0-8.491 3.823-8.491 8.533s3.866 8.533 8.576 8.533zM418.133 256h51.2c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.533-8.533-8.533h-51.2c-4.71 0-8.533 3.823-8.533 8.533s3.823 8.533 8.533 8.533zM418.133 426.667H435.2c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.533-8.533-8.533h-17.067c-4.71 0-8.533 3.823-8.533 8.533s3.823 8.533 8.533 8.533zM418.133 392.533H435.2c4.71 0 8.533-3.823 8.533-8.533s-3.823-8.533-8.533-8.533h-17.067c-4.71 0-8.533 3.823-8.533 8.533s3.823 8.533 8.533 8.533z"/>
15
15
  <path d="M469.333 17.067h-55.467a8.536 8.536 0 00-8.533 8.533 8.536 8.536 0 008.533 8.533h55.467c14.114 0 25.6 11.486 25.6 25.6V435.2c0 14.114-11.486 25.6-25.6 25.6h-51.2c-4.71 0-8.533 3.823-8.533 8.533s3.823 8.533 8.533 8.533h51.2c23.526 0 42.667-19.14 42.667-42.667V59.733c0-23.526-19.14-42.666-42.667-42.666zM264.789 76.8a8.53 8.53 0 00-8.533-8.533h-.085c-4.71 0-8.491 3.823-8.491 8.533s3.866 8.533 8.576 8.533a8.53 8.53 0 008.533-8.533zM349.867 102.4H162.133c-4.71 0-8.533 3.823-8.533 8.533s3.823 8.533 8.533 8.533h187.733c4.71 0 8.533-3.823 8.533-8.533s-3.822-8.533-8.532-8.533zM264.789 145.067a8.53 8.53 0 00-8.533-8.533h-.085c-4.71 0-8.491 3.823-8.491 8.533 0 4.71 3.866 8.533 8.576 8.533a8.53 8.53 0 008.533-8.533z"/>
@@ -19,20 +19,20 @@
19
19
  Green Hosting
20
20
  </li>
21
21
  {% endif %}
22
- {% if site.data.[website].pa11y[datelastcrawl] %}
22
+ {% if pa11y %}
23
23
  <li>
24
- {% if site.data.[website].pa11y[datelastcrawl].errors > 20 %}
24
+ {% if pa11y.errors > 20 %}
25
25
  <svg xmlns="http://www.w3.org/2000/svg" width="48" viewBox="0 0 24 24" fill="none" stroke="#b00202" stroke-width="3.5" stroke-linecap="square" stroke-linejoin="bevel"><polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12" y2="16"></line></svg>
26
26
  {% else %}
27
27
  <svg xmlns="http://www.w3.org/2000/svg" width="48" viewBox="0 0 24 24" fill="none" stroke="#22961e" stroke-width="3.5" stroke-linecap="square" stroke-linejoin="bevel"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
28
28
  {% endif %}
29
29
  <br><br>
30
- {{ site.data.[website].pa11y[datelastcrawl].errors }} A11y erreurs
30
+ {{ pa11y.errors }} A11y erreurs
31
31
  </li>
32
32
  {% endif %}
33
- {% if site.data.[website].observatory[datelastcrawl] %}
33
+ {% if observatory %}
34
34
  <li>
35
- {% if site.data.[website].observatory[datelastcrawl].content-security-policy %}
35
+ {% if observatory.content-security-policy %}
36
36
  <svg xmlns="http://www.w3.org/2000/svg" width="48" viewBox="0 0 24 24" fill="none" stroke="#b00202" stroke-width="3.5" stroke-linecap="square" stroke-linejoin="bevel"><polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12" y2="16"></line></svg>
37
37
  {% else %}
38
38
  <svg xmlns="http://www.w3.org/2000/svg" width="48" viewBox="0 0 24 24" fill="none" stroke="#22961e" stroke-width="3.5" stroke-linecap="square" stroke-linejoin="bevel"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
@@ -44,4 +44,4 @@
44
44
  </ul>
45
45
  </div>
46
46
  </div>
47
- {% endif %}
47
+ {% endif %}
@@ -10,13 +10,13 @@
10
10
  <div>
11
11
  <!-- <div class="progress-bar-tooltip" style="transform: translate(50%,-50%);background: rgba(34,150,30,1);">Max</div> -->
12
12
  <div class="progress-bar-tooltip" style="left: {{ ecoaverageposition }}%;">Moyenne grands sites</div>
13
- <div class="progress-bar-tooltip" style="left: {{ ecoposition }}%;z-index:2">{{ website }}</div>
13
+ <div class="progress-bar-tooltip" style="left: {{ ecoposition }}%;z-index:2">{{ pages.name }}</div>
14
14
  <!-- <div class="progress-bar-tooltip" style="background: rgba(176,2,2,1);">Min</div> -->
15
15
  </div>
16
16
  <div>
17
17
  <!-- <div class="progress-bar-score" style="transform: translate(50%,35%);color: rgba(34,150,30,1);">Good</div> -->
18
18
  <div class="progress-bar-score" style="left: {{ ecoaverageposition }}%;">{{ ecoaverage }}</div>
19
- <div class="progress-bar-score" style="left: {{ ecoposition }}%;z-index:2">{{ eco }}</div>
19
+ <div class="progress-bar-score" style="left: {{ ecoposition }}%;z-index:2">{{ eco }}</div>
20
20
  <!-- <div class="progress-bar-score" style="color: rgba(176,2,2,1);">Bad</div> -->
21
21
  </div>
22
22
  </div>
@@ -13,7 +13,7 @@
13
13
  <b>{{ lighthouse.audits["dom-size"].details.items[0].value | replace: ",","" }}</b><br>
14
14
  Elements DOM
15
15
  </li>
16
- <li><b>{{ lighthouse.audits.diagnostics.details.items[0].totalByteWeight | times: 1 | filesize }}</b><br>Poids
16
+ <li><b>{{ lighthouse.audits.diagnostics.details.items[0].totalByteWeight | times: 1 | filesizeconvert }}</b><br>Poids
17
17
  de la page</li>
18
18
  </ul>
19
19
  </div>
@@ -3,7 +3,14 @@
3
3
  <div><h4>Position</h4></div>
4
4
  <div>
5
5
  <ul>
6
- {% for authority in site.data.[website].moz[datelastcrawl] %}
6
+
7
+ {% if site.data %}
8
+ {% assign moz = site.data.[website].moz[datelastcrawl] %}
9
+ {% else %}
10
+ {% assign moz = [website].moz[datelastcrawl] %}
11
+ {% endif %}
12
+
13
+ {% for authority in moz %}
7
14
  {% for element in authority limit: 2 %}
8
15
  {% assign score = element[1] | times: 1 %}
9
16
  <li data-name="{{ element[0] }}" data-percent="{{ score }}">
@@ -1,13 +1,13 @@
1
1
  <div class="js-tabs" data-existing-hx="h2" data-tabs-prefix-class="tabs">
2
2
  <ul class="js-tablist">
3
- {% for website in site.pagestested %}
3
+ {% for website in pagestested %}
4
4
  <li class="js-tablist__item">
5
5
  <a href="#id_{{ forloop.index }}" class="js-tablist__link">{{ website }}</a>
6
6
  </li>
7
7
  {% endfor %}
8
8
  </ul>
9
9
 
10
- {% for website in site.pagestested %}
10
+ {% for website in pagestested %}
11
11
 
12
12
  {% assign labels = "" | split: ',' %}
13
13
  {% assign ttfb = "" | split: ',' %}
@@ -18,7 +18,7 @@
18
18
  {% if site.data.[website].gpagespeed[data] %}
19
19
  {% assign date = data | date: "%d/%m/%y" | prepend: "'" | append: "'" %}
20
20
  {% assign labels = labels | push: date %}
21
- {% assign interactive = site.data.[website].lighthouse[data].audits.metrics.details.items[0].observedLastVisualChange | round: 0 %}
21
+ {% assign interactive = site.data.[website].lighthouse[data].audits.metrics.details.items[0].observedLoad | round: 0 %}
22
22
  {% assign tti = tti | push: interactive %}
23
23
  {% assign score = score | push: site.data.[website].gpagespeed[data].ruleGroups.SPEED.score %}
24
24
  {% endif %}
@@ -82,9 +82,15 @@
82
82
 
83
83
  {% for data in file %}
84
84
 
85
+ {% if site.data %}
85
86
  {% assign gpagespeed = site.data.[website].gpagespeed[data] %}
86
87
  {% assign yellowlabtools = site.data.[website].yellowlabtools[data] %}
87
88
  {% assign lighthouse = site.data.[website].lighthouse[data] %}
89
+ {% else %}
90
+ {% assign gpagespeed = [website].gpagespeed[data] %}
91
+ {% assign yellowlabtools = [website].yellowlabtools[data] %}
92
+ {% assign lighthouse = [website].lighthouse[data] %}
93
+ {% endif %}
88
94
 
89
95
  {% if gpagespeed %}
90
96