Merge branch 'main' of github.com:jcalixte/blog into main

This commit is contained in:
Julien Calixte
2022-09-15 17:06:24 +02:00
10 changed files with 72 additions and 69 deletions

1
.npmrc
View File

@@ -1 +1,2 @@
shamefully-hoist=true shamefully-hoist=true
strict-peer-dependencies=false

12
__unconfig_iles.config.ts Normal file
View File

@@ -0,0 +1,12 @@
let __unconfig_data;
let __unconfig_stub = function (data = {}) { __unconfig_data = data };
__unconfig_stub.default = (data = {}) => { __unconfig_data = data };
import { defineConfig } from "iles";
const __unconfig_default = defineConfig({
siteUrl: "https://juliencalixte.eu",
modules: ["@islands/headings"],
});
if (typeof __unconfig_default === "function") __unconfig_default(...[{"command":"serve","mode":"development"}]);export default __unconfig_data;

2
components.d.ts vendored
View File

@@ -7,7 +7,7 @@ declare module 'vue' {
AboutMe: typeof import('./src/components/presentation/AboutMe.vue')['default'] AboutMe: typeof import('./src/components/presentation/AboutMe.vue')['default']
AppHeader: typeof import('./src/components/AppHeader.vue')['default'] AppHeader: typeof import('./src/components/AppHeader.vue')['default']
BlogPosts: typeof import('./src/components/posts/BlogPosts.vue')['default'] BlogPosts: typeof import('./src/components/posts/BlogPosts.vue')['default']
Island: typeof import('./node_modules/.pnpm/iles@0.7.38_sass@1.51.0/node_modules/iles/dist/client/app/components/Island.vue')['default'] Island: typeof import('./node_modules/.pnpm/iles@0.7.40_sass@1.53.0/node_modules/iles/dist/client/app/components/Island.vue')['default']
JulienCalixte: typeof import('./src/components/core/JulienCalixte.vue')['default'] JulienCalixte: typeof import('./src/components/core/JulienCalixte.vue')['default']
ProductionFlow: typeof import('./src/components/flow/ProductionFlow.vue')['default'] ProductionFlow: typeof import('./src/components/flow/ProductionFlow.vue')['default']
Welcome: typeof import('./src/components/Welcome.vue')['default'] Welcome: typeof import('./src/components/Welcome.vue')['default']

View File

@@ -1,15 +1,14 @@
{ {
"name": "iles-app", "name": "jcalixte-blog",
"version": "0.0.0", "version": "1.0.0",
"scripts": { "scripts": {
"dev": "iles dev", "dev": "iles dev",
"build": "iles build", "build": "iles build",
"preview": "iles preview --port 5050", "preview": "iles preview --port 5050",
"test": "iles test",
"typecheck": "vue-tsc --noEmit" "typecheck": "vue-tsc --noEmit"
}, },
"engines": { "engines": {
"node": "^14.18 || >= 16.0.0" "node": ">= 16.0.0"
}, },
"devDependencies": { "devDependencies": {
"@islands/headings": "^0.8.0", "@islands/headings": "^0.8.0",

25
pnpm-lock.yaml generated
View File

@@ -40,7 +40,6 @@ packages:
/@babel/helper-validator-identifier/7.16.7: /@babel/helper-validator-identifier/7.16.7:
resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==} resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
dev: true
/@babel/parser/7.17.3: /@babel/parser/7.17.3:
resolution: {integrity: sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==} resolution: {integrity: sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==}
@@ -48,7 +47,6 @@ packages:
hasBin: true hasBin: true
dependencies: dependencies:
'@babel/types': 7.17.0 '@babel/types': 7.17.0
dev: true
/@babel/types/7.17.0: /@babel/types/7.17.0:
resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==} resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==}
@@ -56,7 +54,6 @@ packages:
dependencies: dependencies:
'@babel/helper-validator-identifier': 7.16.7 '@babel/helper-validator-identifier': 7.16.7
to-fast-properties: 2.0.0 to-fast-properties: 2.0.0
dev: true
/@esbuild/linux-loong64/0.15.7: /@esbuild/linux-loong64/0.15.7:
resolution: {integrity: sha512-IKznSJOsVUuyt7cDzzSZyqBEcZe+7WlBqTVXiF1OXP/4Nm387ToaXZ0fyLwI1iBlI/bzpxVq411QE2/Bt2XWWw==} resolution: {integrity: sha512-IKznSJOsVUuyt7cDzzSZyqBEcZe+7WlBqTVXiF1OXP/4Nm387ToaXZ0fyLwI1iBlI/bzpxVq411QE2/Bt2XWWw==}
@@ -311,14 +308,12 @@ packages:
'@vue/shared': 3.2.39 '@vue/shared': 3.2.39
estree-walker: 2.0.2 estree-walker: 2.0.2
source-map: 0.6.1 source-map: 0.6.1
dev: true
/@vue/compiler-dom/3.2.39: /@vue/compiler-dom/3.2.39:
resolution: {integrity: sha512-HMFI25Be1C8vLEEv1hgEO1dWwG9QQ8LTTPmCkblVJY/O3OvWx6r1+zsox5mKPMGvqYEZa6l8j+xgOfUspgo7hw==} resolution: {integrity: sha512-HMFI25Be1C8vLEEv1hgEO1dWwG9QQ8LTTPmCkblVJY/O3OvWx6r1+zsox5mKPMGvqYEZa6l8j+xgOfUspgo7hw==}
dependencies: dependencies:
'@vue/compiler-core': 3.2.39 '@vue/compiler-core': 3.2.39
'@vue/shared': 3.2.39 '@vue/shared': 3.2.39
dev: true
/@vue/compiler-sfc/3.2.39: /@vue/compiler-sfc/3.2.39:
resolution: {integrity: sha512-fqAQgFs1/BxTUZkd0Vakn3teKUt//J3c420BgnYgEOoVdTwYpBTSXCMJ88GOBCylmUBbtquGPli9tVs7LzsWIA==} resolution: {integrity: sha512-fqAQgFs1/BxTUZkd0Vakn3teKUt//J3c420BgnYgEOoVdTwYpBTSXCMJ88GOBCylmUBbtquGPli9tVs7LzsWIA==}
@@ -333,14 +328,12 @@ packages:
magic-string: 0.25.7 magic-string: 0.25.7
postcss: 8.4.13 postcss: 8.4.13
source-map: 0.6.1 source-map: 0.6.1
dev: true
/@vue/compiler-ssr/3.2.39: /@vue/compiler-ssr/3.2.39:
resolution: {integrity: sha512-EoGCJ6lincKOZGW+0Ky4WOKsSmqL7hp1ZYgen8M7u/mlvvEQUaO9tKKOy7K43M9U2aA3tPv0TuYYQFrEbK2eFQ==} resolution: {integrity: sha512-EoGCJ6lincKOZGW+0Ky4WOKsSmqL7hp1ZYgen8M7u/mlvvEQUaO9tKKOy7K43M9U2aA3tPv0TuYYQFrEbK2eFQ==}
dependencies: dependencies:
'@vue/compiler-dom': 3.2.39 '@vue/compiler-dom': 3.2.39
'@vue/shared': 3.2.39 '@vue/shared': 3.2.39
dev: true
/@vue/devtools-api/6.2.1: /@vue/devtools-api/6.2.1:
resolution: {integrity: sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ==} resolution: {integrity: sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ==}
@@ -353,7 +346,6 @@ packages:
'@vue/shared': 3.2.39 '@vue/shared': 3.2.39
estree-walker: 2.0.2 estree-walker: 2.0.2
magic-string: 0.25.7 magic-string: 0.25.7
dev: true
/@vue/reactivity/3.2.38: /@vue/reactivity/3.2.38:
resolution: {integrity: sha512-6L4myYcH9HG2M25co7/BSo0skKFHpAN8PhkNPM4xRVkyGl1K5M3Jx4rp5bsYhvYze2K4+l+pioN4e6ZwFLUVtw==} resolution: {integrity: sha512-6L4myYcH9HG2M25co7/BSo0skKFHpAN8PhkNPM4xRVkyGl1K5M3Jx4rp5bsYhvYze2K4+l+pioN4e6ZwFLUVtw==}
@@ -365,14 +357,12 @@ packages:
resolution: {integrity: sha512-vlaYX2a3qMhIZfrw3Mtfd+BuU+TZmvDrPMa+6lpfzS9k/LnGxkSuf0fhkP0rMGfiOHPtyKoU9OJJJFGm92beVQ==} resolution: {integrity: sha512-vlaYX2a3qMhIZfrw3Mtfd+BuU+TZmvDrPMa+6lpfzS9k/LnGxkSuf0fhkP0rMGfiOHPtyKoU9OJJJFGm92beVQ==}
dependencies: dependencies:
'@vue/shared': 3.2.39 '@vue/shared': 3.2.39
dev: true
/@vue/runtime-core/3.2.39: /@vue/runtime-core/3.2.39:
resolution: {integrity: sha512-xKH5XP57JW5JW+8ZG1khBbuLakINTgPuINKL01hStWLTTGFOrM49UfCFXBcFvWmSbci3gmJyLl2EAzCaZWsx8g==} resolution: {integrity: sha512-xKH5XP57JW5JW+8ZG1khBbuLakINTgPuINKL01hStWLTTGFOrM49UfCFXBcFvWmSbci3gmJyLl2EAzCaZWsx8g==}
dependencies: dependencies:
'@vue/reactivity': 3.2.39 '@vue/reactivity': 3.2.39
'@vue/shared': 3.2.39 '@vue/shared': 3.2.39
dev: true
/@vue/runtime-dom/3.2.39: /@vue/runtime-dom/3.2.39:
resolution: {integrity: sha512-4G9AEJP+sLhsqf5wXcyKVWQKUhI+iWfy0hWQgea+CpaTD7BR0KdQzvoQdZhwCY6B3oleSyNLkLAQwm0ya/wNoA==} resolution: {integrity: sha512-4G9AEJP+sLhsqf5wXcyKVWQKUhI+iWfy0hWQgea+CpaTD7BR0KdQzvoQdZhwCY6B3oleSyNLkLAQwm0ya/wNoA==}
@@ -380,7 +370,6 @@ packages:
'@vue/runtime-core': 3.2.39 '@vue/runtime-core': 3.2.39
'@vue/shared': 3.2.39 '@vue/shared': 3.2.39
csstype: 2.6.19 csstype: 2.6.19
dev: true
/@vue/server-renderer/3.2.39_vue@3.2.39: /@vue/server-renderer/3.2.39_vue@3.2.39:
resolution: {integrity: sha512-1yn9u2YBQWIgytFMjz4f/t0j43awKytTGVptfd3FtBk76t1pd8mxbek0G/DrnjJhd2V7mSTb5qgnxMYt8Z5iSQ==} resolution: {integrity: sha512-1yn9u2YBQWIgytFMjz4f/t0j43awKytTGVptfd3FtBk76t1pd8mxbek0G/DrnjJhd2V7mSTb5qgnxMYt8Z5iSQ==}
@@ -390,7 +379,6 @@ packages:
'@vue/compiler-ssr': 3.2.39 '@vue/compiler-ssr': 3.2.39
'@vue/shared': 3.2.39 '@vue/shared': 3.2.39
vue: 3.2.39 vue: 3.2.39
dev: true
/@vue/shared/3.2.38: /@vue/shared/3.2.38:
resolution: {integrity: sha512-dTyhTIRmGXBjxJE+skC8tTWCGLCVc4wQgRRLt8+O9p5ewBAjoBwtCAkLPrtToSr1xltoe3st21Pv953aOZ7alg==} resolution: {integrity: sha512-dTyhTIRmGXBjxJE+skC8tTWCGLCVc4wQgRRLt8+O9p5ewBAjoBwtCAkLPrtToSr1xltoe3st21Pv953aOZ7alg==}
@@ -398,7 +386,6 @@ packages:
/@vue/shared/3.2.39: /@vue/shared/3.2.39:
resolution: {integrity: sha512-D3dl2ZB9qE6mTuWPk9RlhDeP1dgNRUKC3NJxji74A4yL8M2MwlhLKUC/49WHjrNzSPug58fWx/yFbaTzGAQSBw==} resolution: {integrity: sha512-D3dl2ZB9qE6mTuWPk9RlhDeP1dgNRUKC3NJxji74A4yL8M2MwlhLKUC/49WHjrNzSPug58fWx/yFbaTzGAQSBw==}
dev: true
/@vueuse/head/0.7.5_vue@3.2.39: /@vueuse/head/0.7.5_vue@3.2.39:
resolution: {integrity: sha512-L+XQ5Act0nT/ZyO8Qo10J4FyM1qPOyQb6MT4MMn6+AITzrStpmKs/nUDDLJKD/rCcNWl/65XbdQm4T2vKp3VOQ==} resolution: {integrity: sha512-L+XQ5Act0nT/ZyO8Qo10J4FyM1qPOyQb6MT4MMn6+AITzrStpmKs/nUDDLJKD/rCcNWl/65XbdQm4T2vKp3VOQ==}
@@ -550,7 +537,6 @@ packages:
/csstype/2.6.19: /csstype/2.6.19:
resolution: {integrity: sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==} resolution: {integrity: sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==}
dev: true
/debug/4.3.3: /debug/4.3.3:
resolution: {integrity: sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==} resolution: {integrity: sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==}
@@ -920,7 +906,6 @@ packages:
/estree-walker/2.0.2: /estree-walker/2.0.2:
resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
dev: true
/estree-walker/3.0.1: /estree-walker/3.0.1:
resolution: {integrity: sha512-woY0RUD87WzMBUiZLx8NsYr23N5BKsOMZHhu2hoNRVh6NXGfoiT1KOL8G3UHlJAnEDGmfa5ubNA/AacfG+Kb0g==} resolution: {integrity: sha512-woY0RUD87WzMBUiZLx8NsYr23N5BKsOMZHhu2hoNRVh6NXGfoiT1KOL8G3UHlJAnEDGmfa5ubNA/AacfG+Kb0g==}
@@ -1454,7 +1439,6 @@ packages:
resolution: {integrity: sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==} resolution: {integrity: sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==}
dependencies: dependencies:
sourcemap-codec: 1.4.8 sourcemap-codec: 1.4.8
dev: true
/magic-string/0.26.2: /magic-string/0.26.2:
resolution: {integrity: sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==} resolution: {integrity: sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==}
@@ -1903,7 +1887,6 @@ packages:
resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==}
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true hasBin: true
dev: true
/normalize-path/3.0.0: /normalize-path/3.0.0:
resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
@@ -2013,7 +1996,6 @@ packages:
/picocolors/1.0.0: /picocolors/1.0.0:
resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
dev: true
/picomatch/2.3.1: /picomatch/2.3.1:
resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
@@ -2045,7 +2027,6 @@ packages:
nanoid: 3.3.4 nanoid: 3.3.4
picocolors: 1.0.0 picocolors: 1.0.0
source-map-js: 1.0.2 source-map-js: 1.0.2
dev: true
/postcss/8.4.16: /postcss/8.4.16:
resolution: {integrity: sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==} resolution: {integrity: sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==}
@@ -2209,12 +2190,10 @@ packages:
/source-map-js/1.0.2: /source-map-js/1.0.2:
resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
engines: {node: '>=0.10.0'} engines: {node: '>=0.10.0'}
dev: true
/source-map/0.6.1: /source-map/0.6.1:
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
engines: {node: '>=0.10.0'} engines: {node: '>=0.10.0'}
dev: true
/source-map/0.7.3: /source-map/0.7.3:
resolution: {integrity: sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==} resolution: {integrity: sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==}
@@ -2223,7 +2202,6 @@ packages:
/sourcemap-codec/1.4.8: /sourcemap-codec/1.4.8:
resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
dev: true
/space-separated-tokens/2.0.1: /space-separated-tokens/2.0.1:
resolution: {integrity: sha512-ekwEbFp5aqSPKaqeY1PGrlGQxPNaq+Cnx4+bE2D8sciBQrHpbwoBbawqTN2+6jPs9IdWxxiUcN0K2pkczD3zmw==} resolution: {integrity: sha512-ekwEbFp5aqSPKaqeY1PGrlGQxPNaq+Cnx4+bE2D8sciBQrHpbwoBbawqTN2+6jPs9IdWxxiUcN0K2pkczD3zmw==}
@@ -2298,7 +2276,6 @@ packages:
/to-fast-properties/2.0.0: /to-fast-properties/2.0.0:
resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
engines: {node: '>=4'} engines: {node: '>=4'}
dev: true
/to-regex-range/5.0.1: /to-regex-range/5.0.1:
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
@@ -2320,7 +2297,6 @@ packages:
resolution: {integrity: sha512-goMHfm00nWPa8UvR/CPSvykqf6dVV8x/dp0c5mFTMTIu0u0FlGWRioyy7Nn0PGAdHxpJZnuO/ut+PpQ8UiHAig==} resolution: {integrity: sha512-goMHfm00nWPa8UvR/CPSvykqf6dVV8x/dp0c5mFTMTIu0u0FlGWRioyy7Nn0PGAdHxpJZnuO/ut+PpQ8UiHAig==}
engines: {node: '>=4.2.0'} engines: {node: '>=4.2.0'}
hasBin: true hasBin: true
dev: true
/unbox-primitive/1.0.1: /unbox-primitive/1.0.1:
resolution: {integrity: sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==} resolution: {integrity: sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==}
@@ -2602,7 +2578,6 @@ packages:
'@vue/runtime-dom': 3.2.39 '@vue/runtime-dom': 3.2.39
'@vue/server-renderer': 3.2.39_vue@3.2.39 '@vue/server-renderer': 3.2.39_vue@3.2.39
'@vue/shared': 3.2.39 '@vue/shared': 3.2.39
dev: true
/webpack-sources/3.2.3: /webpack-sources/3.2.3:
resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}

View File

@@ -11,7 +11,7 @@ export default defineApp({
link: [ link: [
{ {
rel: "stylesheet", rel: "stylesheet",
href: "https://fonts.googleapis.com/css2?family=Fenix&family=Meow+Script&display=swap", href: "https://fonts.googleapis.com/css2?family=Gulzar&family=Meow+Script&display=swap",
}, },
], ],
}; };

View File

@@ -66,7 +66,7 @@ body {
background: var(--color-background); background: var(--color-background);
transition: color 0.5s, background-color 0.5s; transition: color 0.5s, background-color 0.5s;
line-height: 1.6; line-height: 1.6;
font-family: "Fenix", BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, font-family: "Gulzar", BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu,
serif; serif;
font-size: 22px; font-size: 22px;
text-rendering: optimizeLegibility; text-rendering: optimizeLegibility;
@@ -88,7 +88,18 @@ h6 {
color: var(--primary); color: var(--primary);
} }
.julien-calixte { h1 {
font-family: "Meow Script", "Lucida Sans", "Lucida Sans Regular", font-size: 1.8em;
"Lucida Grande", "Lucida Sans Unicode", Geneva, Verdana, sans-serif;
} }
h2 {
font-size: 1.2em;
}
.julien-calixte {
font-family: "Meow Script", "Lucida Sans", "Lucida Sans Regular", Geneva, Verdana, sans-serif;
}
strong {
font-weight: bold;
}

View File

@@ -0,0 +1,39 @@
---
title: An introduction to feature factory
layout: post
---
# {title}
From my experience, project failures mainly come by having mistrust between teams. Lead time due to team availability to solve dependencies increases.
In this post, I would like to tell you what helped me, how we succeed to engage all the skills needed to develop a product. We will talk about agility, lean.
## It always comes to **showing**
## Showing where we are
## Showing where are the problems
## Showing what next the team has to do
Talking is hard, comprehension between two people is hard. How many times a developper came back to the product owner to ask a few questions left in his ticket? How many times a designer was asked to update a design to see how the app will react in case of an edge case?
Dear developers, how clear is it for you the way you build an app?
You may answer "Easy! There are few steps:"
1. Talking to the client
2. Getting the design
3. Coding
4. deploying to users
But how exactly? What does "talking to the client" really mean? And "coding" ?
In lean, one particular important concept is **Visual Management**: *doing by seeing*. For that, we want to be clear on how we work.
May I ask you some questions?
First, can you name your different step before having your app in production?
<ProductionFlow client:visible />

View File

@@ -1,25 +0,0 @@
---
title: An introduction to production flow
layout: post
---
# {title}
Dear developers, how clear is it for you the way you build an app?
You may answer "Easy! There are few steps:"
1. Talking to the client
2. Getting the design
3. Coding
4. deploying to users
But how exactly? What does "talking to the client" really mean? And "coding" ?
In lean, one particular important concept is **Visual Management**: *doing by seeing*. For that, we want to be clear on how we work.
May I ask you some questions?
First, can you name your different step before having your app in production?
<ProductionFlow client:visible />

View File

@@ -1,9 +0,0 @@
import { test, describe, expect } from 'vitest'
import Index from '../src/pages/index.mdx'
describe('example test', () => {
test('stub default layout', () => {
expect(Index.title).toEqual('You did it!')
})
})