OXMerge branch 'master' into lucie-margaria

This commit is contained in:
Florent Le Saout 2023-01-23 16:05:40 +01:00
commit 10ea7b3763
18 changed files with 393 additions and 186 deletions

350
package-lock.json generated
View File

@ -48,30 +48,30 @@
"integrity": "sha512-5R+DsT9LJ9tXiSQ4y+KLFppCkQyXhzAm1AIuBWE/sbU0hSXY5pkhoqQYEcPJQFg/nglL+wD55iv2j+7O96UAvg=="
},
"node_modules/@11ty/eleventy": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@11ty/eleventy/-/eleventy-1.0.1.tgz",
"integrity": "sha512-2fJDHVBkRr1SB7CqBexwoLdiOGUE0f22O+Ie1TT/FI65XQZWshgHVZzvmZfmtKvQW4qtaC/FuJG3wMxkXfel7w==",
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@11ty/eleventy/-/eleventy-1.0.2.tgz",
"integrity": "sha512-03ER4zukR6BgwppI5DHRE11lc+8B0fWsBrqacVWo3o49QkdEFXnEWjhyI9qd9LrPlgQHK2/MYyxuOvNwecyCLQ==",
"dependencies": {
"@11ty/dependency-tree": "^2.0.1",
"@11ty/eleventy-utils": "^1.0.1",
"@iarna/toml": "^2.2.5",
"@sindresorhus/slugify": "^1.1.2",
"browser-sync": "^2.27.9",
"browser-sync": "^2.27.10",
"chokidar": "^3.5.3",
"cross-spawn": "^7.0.3",
"debug": "^4.3.4",
"dependency-graph": "^0.11.0",
"ejs": "^3.1.6",
"ejs": "^3.1.8",
"fast-glob": "^3.2.11",
"graceful-fs": "^4.2.10",
"gray-matter": "^4.0.3",
"hamljs": "^0.6.2",
"handlebars": "^4.7.7",
"is-glob": "^4.0.3",
"kleur": "^4.1.4 ",
"liquidjs": "^9.36.1",
"kleur": "^4.1.5",
"liquidjs": "^9.40.0",
"lodash": "^4.17.21",
"luxon": "^2.3.2",
"luxon": "^2.5.0",
"markdown-it": "^12.3.2",
"minimist": "^1.2.6",
"moo": "^0.5.1",
@ -79,7 +79,7 @@
"mustache": "^4.2.0",
"normalize-path": "^3.0.0",
"nunjucks": "^3.2.3",
"path-to-regexp": "^6.2.0",
"path-to-regexp": "^6.2.1",
"please-upgrade-node": "^3.2.0",
"pretty": "^2.0.0",
"pug": "^3.0.2",
@ -157,9 +157,9 @@
}
},
"node_modules/@11ty/eleventy/node_modules/luxon": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-2.3.2.tgz",
"integrity": "sha512-MlAQQVMFhGk4WUA6gpfsy0QycnKP0+NlCBJRVRNPxxSIbjrCbQ65nrpJD3FVyJNZLuJ0uoqL57ye6BmDYgHaSw==",
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-2.5.2.tgz",
"integrity": "sha512-Yg7/RDp4nedqmLgyH0LwgGRvMEKVzKbUdkBYyCosbHgJ+kaOUx0qzSiSatVc3DFygnirTPYnMM2P5dg2uH1WvA==",
"engines": {
"node": ">=12"
}
@ -790,9 +790,9 @@
}
},
"node_modules/async": {
"version": "3.2.3",
"resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz",
"integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g=="
"version": "3.2.4",
"resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz",
"integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ=="
},
"node_modules/async-each-series": {
"version": "0.1.1",
@ -957,12 +957,12 @@
"integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw=="
},
"node_modules/browser-sync": {
"version": "2.27.10",
"resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.27.10.tgz",
"integrity": "sha512-xKm+6KJmJu6RuMWWbFkKwOCSqQOxYe3nOrFkKI5Tr/ZzjPxyU3pFShKK3tWnazBo/3lYQzN7fzjixG8fwJh1Xw==",
"version": "2.27.11",
"resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.27.11.tgz",
"integrity": "sha512-U5f9u97OYJH66T0MGWWzG9rOQTW6ZmDMj97vsmtqwNS03JAwdLVES8eel2lD3rvAqQCNAFqaJ74NMacBI57vJg==",
"dependencies": {
"browser-sync-client": "^2.27.10",
"browser-sync-ui": "^2.27.10",
"browser-sync-client": "^2.27.11",
"browser-sync-ui": "^2.27.11",
"bs-recipes": "1.3.4",
"bs-snippet-injector": "^2.0.1",
"chokidar": "^3.5.1",
@ -980,7 +980,7 @@
"micromatch": "^4.0.2",
"opn": "5.3.0",
"portscanner": "2.2.0",
"qs": "6.2.3",
"qs": "^6.11.0",
"raw-body": "^2.3.2",
"resp-modifier": "6.0.2",
"rx": "4.1.0",
@ -1000,9 +1000,9 @@
}
},
"node_modules/browser-sync-client": {
"version": "2.27.10",
"resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.27.10.tgz",
"integrity": "sha512-KCFKA1YDj6cNul0VsA28apohtBsdk5Wv8T82ClOZPZMZWxPj4Ny5AUbrj9UlAb/k6pdxE5HABrWDhP9+cjt4HQ==",
"version": "2.27.11",
"resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.27.11.tgz",
"integrity": "sha512-okMNfD2NasL/XD1/BclP3onXjhahisk3e/kTQ5HPDT/lLqdBqNDd6QFcjI5I1ak7na2hxKQSLjryql+7fp5gKQ==",
"dependencies": {
"etag": "1.8.1",
"fresh": "0.5.2",
@ -1015,9 +1015,9 @@
}
},
"node_modules/browser-sync-ui": {
"version": "2.27.10",
"resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.27.10.tgz",
"integrity": "sha512-elbJILq4Uo6OQv6gsvS3Y9vRAJlWu+h8j0JDkF0X/ua+3S6SVbbiWnZc8sNOFlG7yvVGIwBED3eaYQ0iBo1Dtw==",
"version": "2.27.11",
"resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.27.11.tgz",
"integrity": "sha512-1T/Y8Pp1R68aUL7zVSFq0nxtr258xWd/nTasCAHX2M6EsGaswVOFtXsw3bKqsr35z+J+LfVfOdz1HFLYKxdgrA==",
"dependencies": {
"async-each-series": "0.1.1",
"connect-history-api-fallback": "^1",
@ -2242,9 +2242,9 @@
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
},
"node_modules/ejs": {
"version": "3.1.7",
"resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.7.tgz",
"integrity": "sha512-BIar7R6abbUxDA3bfXrO4DSgwo8I+fB5/1zgujl3HLLjwd6+9iOnrT+t3grn2qbk9vOgBubXOFwX2m9axoFaGw==",
"version": "3.1.8",
"resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz",
"integrity": "sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==",
"dependencies": {
"jake": "^10.8.5"
},
@ -2304,9 +2304,9 @@
}
},
"node_modules/engine.io-client": {
"version": "6.2.2",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.2.2.tgz",
"integrity": "sha512-8ZQmx0LQGRTYkHuogVZuGSpDqYZtCM/nv8zQ68VZ+JkOpazJ7ICdsSpaO6iXwvaU30oFg5QJOJWj8zWqhbKjkQ==",
"version": "6.2.3",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.2.3.tgz",
"integrity": "sha512-aXPtgF1JS3RuuKcpSrBtimSjYvrbhKW9froICH4s0F3XQWLxsKNxqzG39nnvQZQnva4CMvUK63T7shevxRyYHw==",
"dependencies": {
"@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.1",
@ -2610,11 +2610,30 @@
}
},
"node_modules/filelist": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.2.tgz",
"integrity": "sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==",
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz",
"integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==",
"dependencies": {
"minimatch": "^3.0.4"
"minimatch": "^5.0.1"
}
},
"node_modules/filelist/node_modules/brace-expansion": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
"dependencies": {
"balanced-match": "^1.0.0"
}
},
"node_modules/filelist/node_modules/minimatch": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz",
"integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==",
"dependencies": {
"brace-expansion": "^2.0.1"
},
"engines": {
"node": ">=10"
}
},
"node_modules/fill-range": {
@ -3320,7 +3339,7 @@
"node_modules/immutable": {
"version": "3.8.2",
"resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz",
"integrity": "sha1-wkOZUUVbs5kT2vKBN28VMOEErfM=",
"integrity": "sha512-15gZoQ38eYjEjxkorfbcgBKBL6R7T459OuK+CpcWt7O3KF4uPCx2tD0uFETlUDIyo+1789crbMhTvQBSR5yBMg==",
"engines": {
"node": ">=0.10.0"
}
@ -3799,9 +3818,9 @@
}
},
"node_modules/kleur": {
"version": "4.1.4",
"resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.4.tgz",
"integrity": "sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA==",
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
"integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==",
"engines": {
"node": ">=6"
}
@ -4054,9 +4073,9 @@
}
},
"node_modules/liquidjs": {
"version": "9.37.0",
"resolved": "https://registry.npmjs.org/liquidjs/-/liquidjs-9.37.0.tgz",
"integrity": "sha512-qDj9iiNdB+QNZTR4iKjiQzoHQma7V8Itx5oZG/ZCP7xjebh1LI+s5IG2ZYUbs1ALO6hBzmW36Ptd8RR4eohuDA==",
"version": "9.43.0",
"resolved": "https://registry.npmjs.org/liquidjs/-/liquidjs-9.43.0.tgz",
"integrity": "sha512-qZZuL5Emja2UgCqiLewiw9bvwZQwm19TTGFxDkonVzB4YSTOZ8tuTVo/7Uu/AeW1cL2Qb/at3DSoV8wwyFXQCw==",
"bin": {
"liquid": "bin/liquid.js",
"liquidjs": "bin/liquid.js"
@ -4257,9 +4276,9 @@
"dev": true
},
"node_modules/luxon": {
"version": "1.16.0",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-1.16.0.tgz",
"integrity": "sha512-qaqB+JwpGwtl7UbIXng3A/l4W/ySBr8drQvwtMLZBMiLD2V+0fEnPWMrs+UjnIy9PsktazQaKvwDUCLzoWz0Hw==",
"version": "1.28.1",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-1.28.1.tgz",
"integrity": "sha512-gYHAa180mKrNIUJCbwpmD0aTu9kV0dREDrwNnuyFAsO1Wt0EVYSZelPnJlbj9HplzXX/YWXHFTL45kvZ53M0pw==",
"engines": {
"node": "*"
}
@ -4966,6 +4985,14 @@
"node": ">=0.10.0"
}
},
"node_modules/object-inspect": {
"version": "1.12.2",
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz",
"integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==",
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/object-keys": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.2.0.tgz",
@ -5210,9 +5237,9 @@
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
},
"node_modules/path-to-regexp": {
"version": "6.2.0",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.0.tgz",
"integrity": "sha512-f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg=="
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz",
"integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw=="
},
"node_modules/path-type": {
"version": "4.0.0",
@ -5699,11 +5726,17 @@
}
},
"node_modules/qs": {
"version": "6.2.3",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz",
"integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=",
"version": "6.11.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
"integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
"dependencies": {
"side-channel": "^1.0.4"
},
"engines": {
"node": ">=0.6"
},
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/queue": {
@ -5983,9 +6016,9 @@
"integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4="
},
"node_modules/request/node_modules/qs": {
"version": "6.5.2",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
"integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==",
"version": "6.5.3",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
"integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==",
"engines": {
"node": ">=0.6"
}
@ -6412,7 +6445,7 @@
"node_modules/server-destroy": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz",
"integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0="
"integrity": "sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ=="
},
"node_modules/set-blocking": {
"version": "2.0.0",
@ -6458,6 +6491,19 @@
"node": ">=0.10.0"
}
},
"node_modules/side-channel": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
"integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
"dependencies": {
"call-bind": "^1.0.0",
"get-intrinsic": "^1.0.2",
"object-inspect": "^1.9.0"
},
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/sigmund": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
@ -6523,14 +6569,14 @@
"integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg=="
},
"node_modules/socket.io-client": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.5.0.tgz",
"integrity": "sha512-HW61c1G7OrYGxaI79WRn17+b03iBCdvhBj4iqyXHBoL5M8w2MSO/vChsjA93knG4GYEai1/vbXWJna9dzxXtSg==",
"version": "4.5.4",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.5.4.tgz",
"integrity": "sha512-ZpKteoA06RzkD32IbqILZ+Cnst4xewU7ZYK12aS1mzHftFFjpoMz69IuhP/nL25pJfao/amoPI527KnuhFm01g==",
"dependencies": {
"@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.2",
"engine.io-client": "~6.2.1",
"socket.io-parser": "~4.2.0"
"engine.io-client": "~6.2.3",
"socket.io-parser": "~4.2.1"
},
"engines": {
"node": ">=10.0.0"
@ -6718,7 +6764,7 @@
"node_modules/stream-throttle": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/stream-throttle/-/stream-throttle-0.1.3.tgz",
"integrity": "sha1-rdV8jXzHOoFjDTHNVdOWHPr7qcM=",
"integrity": "sha512-889+B9vN9dq7/vLbGyuHeZ6/ctf5sNuGWsDy89uNxkFTAgzy0eK7+w5fL3KLNRTkLle7EgZGvHUphZW0Q26MnQ==",
"dependencies": {
"commander": "^2.2.0",
"limiter": "^1.0.5"
@ -7147,7 +7193,7 @@
"node_modules/symbol-observable": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz",
"integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=",
"integrity": "sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==",
"engines": {
"node": ">=0.10.0"
}
@ -7456,9 +7502,9 @@
}
},
"node_modules/typescript": {
"version": "4.6.4",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz",
"integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==",
"version": "4.9.4",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz",
"integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==",
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
@ -7963,30 +8009,30 @@
"integrity": "sha512-5R+DsT9LJ9tXiSQ4y+KLFppCkQyXhzAm1AIuBWE/sbU0hSXY5pkhoqQYEcPJQFg/nglL+wD55iv2j+7O96UAvg=="
},
"@11ty/eleventy": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@11ty/eleventy/-/eleventy-1.0.1.tgz",
"integrity": "sha512-2fJDHVBkRr1SB7CqBexwoLdiOGUE0f22O+Ie1TT/FI65XQZWshgHVZzvmZfmtKvQW4qtaC/FuJG3wMxkXfel7w==",
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@11ty/eleventy/-/eleventy-1.0.2.tgz",
"integrity": "sha512-03ER4zukR6BgwppI5DHRE11lc+8B0fWsBrqacVWo3o49QkdEFXnEWjhyI9qd9LrPlgQHK2/MYyxuOvNwecyCLQ==",
"requires": {
"@11ty/dependency-tree": "^2.0.1",
"@11ty/eleventy-utils": "^1.0.1",
"@iarna/toml": "^2.2.5",
"@sindresorhus/slugify": "^1.1.2",
"browser-sync": "^2.27.9",
"browser-sync": "^2.27.10",
"chokidar": "^3.5.3",
"cross-spawn": "^7.0.3",
"debug": "^4.3.4",
"dependency-graph": "^0.11.0",
"ejs": "^3.1.6",
"ejs": "^3.1.8",
"fast-glob": "^3.2.11",
"graceful-fs": "^4.2.10",
"gray-matter": "^4.0.3",
"hamljs": "^0.6.2",
"handlebars": "^4.7.7",
"is-glob": "^4.0.3",
"kleur": "^4.1.4 ",
"liquidjs": "^9.36.1",
"kleur": "^4.1.5",
"liquidjs": "^9.40.0",
"lodash": "^4.17.21",
"luxon": "^2.3.2",
"luxon": "^2.5.0",
"markdown-it": "^12.3.2",
"minimist": "^1.2.6",
"moo": "^0.5.1",
@ -7994,7 +8040,7 @@
"mustache": "^4.2.0",
"normalize-path": "^3.0.0",
"nunjucks": "^3.2.3",
"path-to-regexp": "^6.2.0",
"path-to-regexp": "^6.2.1",
"please-upgrade-node": "^3.2.0",
"pretty": "^2.0.0",
"pug": "^3.0.2",
@ -8022,9 +8068,9 @@
}
},
"luxon": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-2.3.2.tgz",
"integrity": "sha512-MlAQQVMFhGk4WUA6gpfsy0QycnKP0+NlCBJRVRNPxxSIbjrCbQ65nrpJD3FVyJNZLuJ0uoqL57ye6BmDYgHaSw=="
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-2.5.2.tgz",
"integrity": "sha512-Yg7/RDp4nedqmLgyH0LwgGRvMEKVzKbUdkBYyCosbHgJ+kaOUx0qzSiSatVc3DFygnirTPYnMM2P5dg2uH1WvA=="
},
"path-key": {
"version": "3.1.1",
@ -8550,9 +8596,9 @@
"dev": true
},
"async": {
"version": "3.2.3",
"resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz",
"integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g=="
"version": "3.2.4",
"resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz",
"integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ=="
},
"async-each-series": {
"version": "0.1.1",
@ -8692,12 +8738,12 @@
"integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw=="
},
"browser-sync": {
"version": "2.27.10",
"resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.27.10.tgz",
"integrity": "sha512-xKm+6KJmJu6RuMWWbFkKwOCSqQOxYe3nOrFkKI5Tr/ZzjPxyU3pFShKK3tWnazBo/3lYQzN7fzjixG8fwJh1Xw==",
"version": "2.27.11",
"resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.27.11.tgz",
"integrity": "sha512-U5f9u97OYJH66T0MGWWzG9rOQTW6ZmDMj97vsmtqwNS03JAwdLVES8eel2lD3rvAqQCNAFqaJ74NMacBI57vJg==",
"requires": {
"browser-sync-client": "^2.27.10",
"browser-sync-ui": "^2.27.10",
"browser-sync-client": "^2.27.11",
"browser-sync-ui": "^2.27.11",
"bs-recipes": "1.3.4",
"bs-snippet-injector": "^2.0.1",
"chokidar": "^3.5.1",
@ -8715,7 +8761,7 @@
"micromatch": "^4.0.2",
"opn": "5.3.0",
"portscanner": "2.2.0",
"qs": "6.2.3",
"qs": "^6.11.0",
"raw-body": "^2.3.2",
"resp-modifier": "6.0.2",
"rx": "4.1.0",
@ -8775,9 +8821,9 @@
}
},
"browser-sync-client": {
"version": "2.27.10",
"resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.27.10.tgz",
"integrity": "sha512-KCFKA1YDj6cNul0VsA28apohtBsdk5Wv8T82ClOZPZMZWxPj4Ny5AUbrj9UlAb/k6pdxE5HABrWDhP9+cjt4HQ==",
"version": "2.27.11",
"resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.27.11.tgz",
"integrity": "sha512-okMNfD2NasL/XD1/BclP3onXjhahisk3e/kTQ5HPDT/lLqdBqNDd6QFcjI5I1ak7na2hxKQSLjryql+7fp5gKQ==",
"requires": {
"etag": "1.8.1",
"fresh": "0.5.2",
@ -8787,9 +8833,9 @@
}
},
"browser-sync-ui": {
"version": "2.27.10",
"resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.27.10.tgz",
"integrity": "sha512-elbJILq4Uo6OQv6gsvS3Y9vRAJlWu+h8j0JDkF0X/ua+3S6SVbbiWnZc8sNOFlG7yvVGIwBED3eaYQ0iBo1Dtw==",
"version": "2.27.11",
"resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.27.11.tgz",
"integrity": "sha512-1T/Y8Pp1R68aUL7zVSFq0nxtr258xWd/nTasCAHX2M6EsGaswVOFtXsw3bKqsr35z+J+LfVfOdz1HFLYKxdgrA==",
"requires": {
"async-each-series": "0.1.1",
"connect-history-api-fallback": "^1",
@ -9745,9 +9791,9 @@
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
},
"ejs": {
"version": "3.1.7",
"resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.7.tgz",
"integrity": "sha512-BIar7R6abbUxDA3bfXrO4DSgwo8I+fB5/1zgujl3HLLjwd6+9iOnrT+t3grn2qbk9vOgBubXOFwX2m9axoFaGw==",
"version": "3.1.8",
"resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz",
"integrity": "sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==",
"requires": {
"jake": "^10.8.5"
}
@ -9803,9 +9849,9 @@
}
},
"engine.io-client": {
"version": "6.2.2",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.2.2.tgz",
"integrity": "sha512-8ZQmx0LQGRTYkHuogVZuGSpDqYZtCM/nv8zQ68VZ+JkOpazJ7ICdsSpaO6iXwvaU30oFg5QJOJWj8zWqhbKjkQ==",
"version": "6.2.3",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.2.3.tgz",
"integrity": "sha512-aXPtgF1JS3RuuKcpSrBtimSjYvrbhKW9froICH4s0F3XQWLxsKNxqzG39nnvQZQnva4CMvUK63T7shevxRyYHw==",
"requires": {
"@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.1",
@ -10017,11 +10063,29 @@
}
},
"filelist": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.2.tgz",
"integrity": "sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==",
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz",
"integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==",
"requires": {
"minimatch": "^3.0.4"
"minimatch": "^5.0.1"
},
"dependencies": {
"brace-expansion": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
"requires": {
"balanced-match": "^1.0.0"
}
},
"minimatch": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz",
"integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==",
"requires": {
"brace-expansion": "^2.0.1"
}
}
}
},
"fill-range": {
@ -10575,7 +10639,7 @@
"immutable": {
"version": "3.8.2",
"resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz",
"integrity": "sha1-wkOZUUVbs5kT2vKBN28VMOEErfM="
"integrity": "sha512-15gZoQ38eYjEjxkorfbcgBKBL6R7T459OuK+CpcWt7O3KF4uPCx2tD0uFETlUDIyo+1789crbMhTvQBSR5yBMg=="
},
"import-fresh": {
"version": "3.3.0",
@ -10953,9 +11017,9 @@
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw=="
},
"kleur": {
"version": "4.1.4",
"resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.4.tgz",
"integrity": "sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA=="
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
"integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ=="
},
"known-css-properties": {
"version": "0.24.0",
@ -11186,9 +11250,9 @@
}
},
"liquidjs": {
"version": "9.37.0",
"resolved": "https://registry.npmjs.org/liquidjs/-/liquidjs-9.37.0.tgz",
"integrity": "sha512-qDj9iiNdB+QNZTR4iKjiQzoHQma7V8Itx5oZG/ZCP7xjebh1LI+s5IG2ZYUbs1ALO6hBzmW36Ptd8RR4eohuDA=="
"version": "9.43.0",
"resolved": "https://registry.npmjs.org/liquidjs/-/liquidjs-9.43.0.tgz",
"integrity": "sha512-qZZuL5Emja2UgCqiLewiw9bvwZQwm19TTGFxDkonVzB4YSTOZ8tuTVo/7Uu/AeW1cL2Qb/at3DSoV8wwyFXQCw=="
},
"list-to-array": {
"version": "1.1.0",
@ -11350,9 +11414,9 @@
"dev": true
},
"luxon": {
"version": "1.16.0",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-1.16.0.tgz",
"integrity": "sha512-qaqB+JwpGwtl7UbIXng3A/l4W/ySBr8drQvwtMLZBMiLD2V+0fEnPWMrs+UjnIy9PsktazQaKvwDUCLzoWz0Hw=="
"version": "1.28.1",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-1.28.1.tgz",
"integrity": "sha512-gYHAa180mKrNIUJCbwpmD0aTu9kV0dREDrwNnuyFAsO1Wt0EVYSZelPnJlbj9HplzXX/YWXHFTL45kvZ53M0pw=="
},
"magic-string": {
"version": "0.25.7",
@ -11879,6 +11943,11 @@
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
},
"object-inspect": {
"version": "1.12.2",
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz",
"integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ=="
},
"object-keys": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.2.0.tgz",
@ -12074,9 +12143,9 @@
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
},
"path-to-regexp": {
"version": "6.2.0",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.0.tgz",
"integrity": "sha512-f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg=="
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz",
"integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw=="
},
"path-type": {
"version": "4.0.0",
@ -12484,9 +12553,12 @@
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
},
"qs": {
"version": "6.2.3",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz",
"integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4="
"version": "6.11.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
"integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
"requires": {
"side-channel": "^1.0.4"
}
},
"queue": {
"version": "6.0.1",
@ -12698,9 +12770,9 @@
"integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4="
},
"qs": {
"version": "6.5.2",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
"integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA=="
"version": "6.5.3",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
"integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA=="
},
"tough-cookie": {
"version": "2.4.3",
@ -13073,7 +13145,7 @@
"server-destroy": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz",
"integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0="
"integrity": "sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ=="
},
"set-blocking": {
"version": "2.0.0",
@ -13110,6 +13182,16 @@
"integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
"dev": true
},
"side-channel": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
"integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
"requires": {
"call-bind": "^1.0.0",
"get-intrinsic": "^1.0.2",
"object-inspect": "^1.9.0"
}
},
"sigmund": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
@ -13160,14 +13242,14 @@
"integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg=="
},
"socket.io-client": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.5.0.tgz",
"integrity": "sha512-HW61c1G7OrYGxaI79WRn17+b03iBCdvhBj4iqyXHBoL5M8w2MSO/vChsjA93knG4GYEai1/vbXWJna9dzxXtSg==",
"version": "4.5.4",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.5.4.tgz",
"integrity": "sha512-ZpKteoA06RzkD32IbqILZ+Cnst4xewU7ZYK12aS1mzHftFFjpoMz69IuhP/nL25pJfao/amoPI527KnuhFm01g==",
"requires": {
"@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.2",
"engine.io-client": "~6.2.1",
"socket.io-parser": "~4.2.0"
"engine.io-client": "~6.2.3",
"socket.io-parser": "~4.2.1"
}
},
"socket.io-parser": {
@ -13322,7 +13404,7 @@
"stream-throttle": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/stream-throttle/-/stream-throttle-0.1.3.tgz",
"integrity": "sha1-rdV8jXzHOoFjDTHNVdOWHPr7qcM=",
"integrity": "sha512-889+B9vN9dq7/vLbGyuHeZ6/ctf5sNuGWsDy89uNxkFTAgzy0eK7+w5fL3KLNRTkLle7EgZGvHUphZW0Q26MnQ==",
"requires": {
"commander": "^2.2.0",
"limiter": "^1.0.5"
@ -13644,7 +13726,7 @@
"symbol-observable": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz",
"integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ="
"integrity": "sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw=="
},
"symbol-tree": {
"version": "3.2.4",
@ -13885,9 +13967,9 @@
}
},
"typescript": {
"version": "4.6.4",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz",
"integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg=="
"version": "4.9.4",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz",
"integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg=="
},
"ua-parser-js": {
"version": "1.0.2",

View File

@ -1,7 +1,7 @@
{
"size-scale": {
"base": "1rem",
"300": "0.8rem",
"300": ".8rem",
"500": "1.25rem",
"600": "1.56rem",
"700": "1.95rem",

View File

@ -1,6 +1,12 @@
<?php
require("/usr/share/php/libphp-phpmailer/autoload.php");
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
$mail = new PHPMailer(true);
$errors = '';
$myEmail = 'contact-form@astrolabe.coop'; // email address to send form content
$myEmail = getenv('ASTRO_SMTP_FROM');
if(empty($_POST['namezzz']) || empty($_POST['emailzzz']) || empty($_POST['message'])) {
$errors .= "\n Error: all fields are required";
@ -8,7 +14,7 @@
if(!empty($_POST['name']) && !empty($_POST['email'])) {
$errors .= "\n Error: spam";
}
}
$name = $_POST['namezzz'];
$emailAddress = $_POST['emailzzz'];
@ -21,14 +27,6 @@
}
if( empty($errors)) {
$headers = array(
"From: " .$myEmail,
"Reply-To: " .$emailAddress,
"MIME-Version: 1.0",
"Content-Type: text/html;charset=UTF-8",
"Content-Transfer-Encoding:8bit"
);
$to = $myEmail;
$emailSubject = "[Formulaire Astrolabe] Nouveau message";
@ -49,15 +47,35 @@
$purpose = "Autre demande";
}
$messageWrap = wordwrap($message, 70, "\r\n", false);
$emailBody = "Vous avez reçu un nouveau message depuis le formulaire du site Astrolabe :".
"\r\n\r\nNom: $name \r\nEmail: $emailAddress \r\nRaison: $purpose\r\nSubscribe: $subscribe\r\n\r\n$messageWrap";
"\r\n\r\nNom: $name \r\nEmail: $emailAddress \r\nRaison: $purpose\r\nSubscribe: $subscribe\r\n\r\n$message";
$emailBodyHTML = str_replace("\r\n", "<br>", $emailBody);
// send the email
mail($to, $emailSubject, $emailBodyHTML, implode("\r\n", $headers));
$mail->isSMTP();
$mail->Host = getenv('ASTRO_SMTP_HOSTNAME');
$mail->SMTPAuth = true;
$mail->Username = getenv('ASTRO_SMTP_USERNAME');
$mail->Password = getenv('ASTRO_SMTP_PASSWORD');
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port = 587;
//Options
$mail->CharSet = 'UTF-8';
$mail->WordWrap = 70;
//Recipients
$mail->setFrom($myEmail);
$mail->addAddress($myEmail);
$mail->addReplyTo($emailAddress, $name);
// Content
$mail->isHTML(true);
$mail->Subject = $emailSubject;
$mail->Body = $emailBodyHTML;
$mail->AltBody = $emailBody;
$mail->send();
// if subscribe add to mailing list
if(!empty($subscribe)) {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 221 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

View File

@ -0,0 +1,19 @@
---
name: 'Alex Bathily'
position: 'Stagiaire en comptabilité'
positionInternal: 'Support'
date: '2023-01-01'
profile: '/images/profiles/alb-profile.jpeg'
url: '/members/alex-bathily'
tags: [ Comptabilité, Comptabilité Analytique, Gestion, Tenue des comptes, Pack Libre, Pack Office, ExactOnline, EnDI ]
location: [48.1122,-1.6788]
---
À la suite dun apprentissage familial très jeune de la comptabilité, jai étudié au campus de Beaulieu à Rennes. En formation au DUT GEA (Gestion des Entreprises et des Administrations) spécialité Gestion-Comptabilité-Finance, jai pu effectuer mon stage de fin détudes à Astrolabe CAE. La raison de mon choix de me tourner vers Astrolabe CAE a été tout dabord lenvie de découvrir les jeunes entreprises mais aussi de trouver un aboutissement dans mon parcours universitaire dont le projet final fut tourné vers les entreprises coopératives.
À lorigine partie pour une voie plus tournée vers la Banque à lIAE de Nantes, les aléas des eaux mont ramené vers Astrolabe pour une durée de 6 mois. Aujourdhui aux côtés de Nelly Le Flem et Vincent Génieux, je valide quotidiennement les factures et notes de frais en tout genre des entrepreneurs et assure la bonne tenue des comptes.
Avec léquipe comptabilité, les entrepreneurs nont pas à surveiller continuellement leurs arrières.
N.B : Si vous ne me trouvez pas dans les locaux dAstrolabe, cest que je suis certainement en pleine dégustation à Vodkalab.

View File

@ -1,22 +0,0 @@
---
name: 'Allan Grouas'
position: 'Designer graphique'
positionInternal: 'Membre'
date: '2020-12-21'
profile: '/images/profiles/ag-profile.jpg'
personalSite: 'https://www.behance.net/allan_grouas'
socialLinkedin: 'https://www.linkedin.com/in/allan-grouas/'
url: '/members/allan-grouas'
tags: [ design, web, webdesign]
location: [48.84297, 2.418638]
---
Je suis designer graphique 360, jaccompagne mes clients pour leurs apporter les meilleurs solutions de communication adaptés.
Jinterviens en tant que designer web sous la marque létabli, spécialisé dans la création de site web et laccompagnement, que nous avons créé avec Fabien, Léna et Laura en automne 2020.
Créer des choses utiles et belles, tel est mon crédo. Partir dune idée, un croquis ou même une sensation pour aboutir à une création graphique concrète.
Je propose mes services comme graphiste allant de projet web au print en passant par lidentité visuelle.
À côté du travail, je fais de la sérigraphie et de la peinture.

View File

@ -0,0 +1,22 @@
---
name: 'Jérémy Dufraisse'
position: 'Développeur web'
positionInternal: 'Membre'
date: '2023-01-01'
profile: '/images/profiles/jeremy-dufraisse-profile.jpg'
socialLinkedin: 'https://www.linkedin.com/in/jeremydufraisse'
socialGithub: 'https://github.com/J9rem'
url: '/members/jeremy-dufraisse'
tags: [ dev, web, libre, PHP, Vue.js, symfony, html, css, react, reactjs, javascript, fullstack, animation, gouvernance-partagée, développeur, open-source, composer, SQL, yunohost-on-raspberrypi-at-home]
location: [47.74403,-3.36597]
---
Passionné de programmation informatique, je suis **développeur fullstack web** depuis 2020 autour des technologies [`php`](https://www.php.net/), [`symfony`](https://symfony.com/), [`VueJs`](https://vuejs.org/).
J'ai principalement participé à des projets dans le monde libre autour de la communauté du [CMS](https://fr.wikipedia.org/wiki/Syst%C3%A8me_de_gestion_de_contenu) [YesWiki](https://yeswiki.net). Je m'adapte à toutes les contraintes (_backend_, _frontend_, ...) et mes différentes expériences ([`php`](https://www.php.net/), [`symfony`](https://symfony.com/), [`composer`](https://getcomposer.org/), [`VueJs`](https://vuejs.org/), [`ReactJs`](https://fr.reactjs.org/), [`ReactAdmin`](https://marmelab.com/react-admin/), ...) permettent de m'adapter aux demandes diverses et variées du monde du web. Je suis particulièrement intéressé par les prestations me permettant de monter en compétences en [`symfony`](https://symfony.com/), [`ReactJs`](https://fr.reactjs.org/) ou [`laravel`](https://laravel.com/).
Après deux années en auto-entreprise proposant des prestations de personnalisation ou d'amélioration de [YesWiki](https://yeswiki.net), je deviens membre d'Astrolabe début 2023, ayant enfin trouvé une CAE qui correspond à mes attentes.
Je peux aussi proposer des accompagnements pour installer, personnaliser, animer un site internet en YesWiki, y compris le développement d'extensions non officielles pour répondre à vos demandes les plus pointues.
Régulièrement impliqué dans les associations de la transition écologique du pays de Lorient, je peux aussi partager mon expérience sur la mise en place de la gouvernance partagée et l'animation de communauté.

View File

@ -0,0 +1,22 @@
---
name: 'Quentin Dufour'
position: 'Développeur Rust, Site Reliability Engineer'
positionInternal: 'Membre'
date: '2023-01-04'
profile: '/images/profiles/qd-profile.jpg'
personalSite: 'https://quentin.dufour.io'
url: '/members/quentin-dufour'
tags: [ Rust, SRE, Kubernetes, Golang, Linux, Docker, Réseau, Object Storage, S3, Cloud ]
location: [45.7570,4.8319]
---
Mon parcours, composé d'un diplôme d'ingénieur informatique à l'INSA Rennes et d'une thèse en système distribuée réalisée à l'INRIA, me donne une double approche ingénierie et recherche en informatique. Ces dernières années, j'ai mobilisé ces qualifications pour me spécialiser sur deux aspects spécifiques de l'informatique : le développement système et réseau en Rust et une démarche de Site Reliability Engineering.
Concernant le développement, je suis contributeur et co-créateur d'un ensemble de logiciels principalement écrits en Rust : Garage, Aerogramme, Bottin, etc. dont plusieurs ont obtenu des financements européens Horizon 2020 pour soutenir leur développement. Je suis particulièrement intéressé par le développement de logiciels distribués pour résoudre des problèmes de passage à l'échelle et de disponibilité. Plus largement, j'ai aussi des contributions mineures à des projets importants comme LXC, Jenkins ou Plume. En somme, que vous ayez besoin d'un support sur mesure pour des logiciels libres existants, d'aide pour développer votre logiciel en Rust, de conseils sur des systèmes distribués (S3, Cassandra, etc.), je me ferai un plaisir de vous accompagner dans vos projets.
L'autre aspect de mon activité, la démarche de Site Reliability Engineering vise la partie opérationnelle de l'informatique. Une fois le code écrit, il faut encore le faire fonctionner sur des machines physiques faillibles, reliées à un réseau public, Internet, pour qu'il soit utile. Afin d'assurer un maximum de fiabilité, il est important de concevoir le système en amont, d'être capable de mettre en place, voire développer, des outils d'automatisation, et être capable d'observer et débugguer ces systèmes efficacement. À ces fins, je connais et maîtrise Linux, Kubernetes, les outils d'observability, Docker, etc. J'ai pu mettre en place des systèmes fonctionnels pour plusieurs milliers de personnes, que ce soit dans le cadre d'évènements (InsaLan, Stunfest), de jeu mobile (Rapsodie) ou d'hébergement web (Deuxfleurs.fr), que ce soit dans des environnements on-premise, cloud privé ou cloud public.
En somme, si vous avez des problématiques de conception cloud, de développement backend, de disponibilité, fiabilité, de scalability logiciel, de maintenance de logiciel libre, je peux vous accompagner. Et si votre problème ne rentre pas tout à fait dans les cases, mais qu'il est susceptible d'exciter ma curiosité, n'hésitez pas à m'en parler non plus, je suis curieux et pourrai peut-être vous aider !

View File

@ -0,0 +1,30 @@
---
name: 'Valérie Le Merrer'
position: 'Ingénieure Cybersécurité'
positionInternal: 'Membre'
date: '2023-01-20'
profile: '/images/profiles/vlm-profile.jpg'
socialLinkedin: 'https://www.linkedin.com/in/valerie-le-merrer/'
url: '/members/valerie-le-merrer'
tags: [ cybersécurité, analyse de Risque, audit, conseil, sensibilisation ]
location: [48.213983, -1.505285]
---
**Ma motivation**
Anticiper, Renforcer la cybersécurité
**Mes principales missions**
Analyse de Risque, Conseil, Sensibilisation
**Mes atouts**
Une expérience en développement et intégration logiciel, une formation mastère spécialisé cybersécurité, mon expérience de la méthode EBIOS RM, mon esprit d'équipe, mes capacités découte et ma bienveillance.
<br />
<br />

View File

@ -1,11 +0,0 @@
---
title: Titre de mon super article
date: '2022-12-25'
type: 'news'
illustration: '/images/posts/image-de-mon-article.png'
---
## Mon super article
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.

View File

@ -24,13 +24,13 @@ Venez nous rencontrer lors de cette réunion d'information de fin d'année et ai
- Lieu : En visio libre et décentralisée (lien envoyé par email quelques jours avant la réunion)
<br><br>
<!---->
<!--
**_Pensez à vous inscrire via le formulaire suivant (si cela ne s'affiche pas correctement [suivez ce lien](https://framaforms.org/reunion-dinformation-scop-astrolabe-cae-du-mardi-13-decembre-a-18h30-1591805443))_**
<br><br>
<iframe src="https://framaforms.org/reunion-dinformation-scop-astrolabe-cae-du-mardi-13-decembre-a-18h30-1591805443" width="100%" height="2450" border="0"></iframe>
<!---->
-->
____
En attendant, vous pouvez bien sur vous documenter sur le sujet :

View File

@ -0,0 +1,47 @@
---
title: Réunion d'information Astrolabe Janvier 2023 en visio
date: '2023-01-08'
eventDate: '2023-01-24'
eventTime: '18:30'
author: 'Florent Le Saout'
type: 'event'
illustration: '/images/posts/reunion-24-06-2020.jpeg'
---
<br><br>
Vous êtes en quête de sens dans votre métier ? Vous travaillez dans le numérique ?
Vous voulez vous lancer en indépendant·e mais sans les tracasseries administratives ? Vous souhaitez travailler en Freelance mais pas seul·e ?
Vous vous demandez ce qu'est une #SCOP #CAE ? Le statut d'entrepreneur salarié #CESA est-il fait pour vous ?
<br><br>
Venez nous rencontrer lors de cette réunion d'information de nouvelle année et ainsi nous essaierons de répondre à ces questions (et bien d'autres) :
- Date : Mardi 24 Janvier 2023 à 18h30
- Lieu : En visio libre et décentralisée (lien envoyé par email quelques jours avant la réunion)
<br><br>
**_Pensez à vous inscrire via le formulaire suivant (si cela ne s'affiche pas correctement [suivez ce lien](https://framaforms.org/reunion-dinformation-scop-astrolabe-cae-du-mardi-24-janvier-a-18h30-1591805443))_**
<br><br>
<iframe src="https://framaforms.org/reunion-dinformation-scop-astrolabe-cae-du-mardi-24-janvier-a-18h30-1591805443" width="100%" height="2450" border="0"></iframe>
<!---->
____
En attendant, vous pouvez bien sur vous documenter sur le sujet :
- [Site de la fédération des CAE](https://www.les-cae.coop/)
- [Qu'est ce qu'une CAE sur le site de COPEA](https://www.copea.fr/index.php/rejoindre-une-cae/qu-est-ce-qu-une-cae)
- [Contrat CAPE sur le site service-public.fr](https://www.service-public.fr/particuliers/vosdroits/F11299)
- [Information ESS sur economie.gouv.fr](https://www.economie.gouv.fr/cedef/economie-sociale-et-solidaire)
- [Site de promotion de l'ESS dans la région Rennaise](http://www.resosolidaire.fr/)
____
**Carte des membres de la fédération des CAE en France metropolitaine :**
[<img src="/images/posts/Carte_CAE_France_Metro.jpg">](https://www.les-cae.coop/trouver-une-cae-0)

View File

@ -46,7 +46,7 @@ img {
:focus {
outline: 1px solid var(--color-dark);
outline-offset: 0.25rem;
outline-offset: .25rem;
}
/**