From b0a4130229542d2d522b11e5d3720d3236d55fde Mon Sep 17 00:00:00 2001 From: Kamran Ahmed Date: Sun, 4 Jun 2023 23:00:35 +0100 Subject: [PATCH] Update code review pyramid --- package.json | 8 +- pnpm-lock.yaml | 273 ++++++++++++++++++++----- public/jsons/roadmaps/code-review.json | 2 +- 3 files changed, 227 insertions(+), 56 deletions(-) diff --git a/package.json b/package.json index a34f263bf..c6c0d5401 100644 --- a/package.json +++ b/package.json @@ -21,12 +21,12 @@ "test:e2e": "playwright test" }, "dependencies": { - "@astrojs/preact": "^2.2.0", - "@astrojs/sitemap": "^1.3.1", + "@astrojs/preact": "^2.2.1", + "@astrojs/sitemap": "^1.3.3", "@astrojs/tailwind": "^3.1.3", "@fingerprintjs/fingerprintjs": "^3.4.1", "@nanostores/preact": "^0.5.0", - "astro": "^2.5.5", + "astro": "^2.5.7", "astro-compress": "^1.1.46", "jose": "^4.14.4", "js-cookie": "^3.0.5", @@ -48,7 +48,7 @@ "markdown-it": "^13.0.1", "openai": "^3.2.1", "prettier": "^2.8.8", - "prettier-plugin-astro": "^0.9.1", + "prettier-plugin-astro": "^0.10.0", "prettier-plugin-tailwindcss": "^0.3.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e8018c03e..973b61e89 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,15 +1,15 @@ lockfileVersion: 5.4 specifiers: - '@astrojs/preact': ^2.2.0 - '@astrojs/sitemap': ^1.3.1 + '@astrojs/preact': ^2.2.1 + '@astrojs/sitemap': ^1.3.3 '@astrojs/tailwind': ^3.1.3 '@fingerprintjs/fingerprintjs': ^3.4.1 '@nanostores/preact': ^0.5.0 '@playwright/test': ^1.34.3 '@tailwindcss/typography': ^0.5.9 '@types/js-cookie': ^3.0.3 - astro: ^2.5.5 + astro: ^2.5.7 astro-compress: ^1.1.46 csv-parser: ^3.0.0 gh-pages: ^5.0.0 @@ -23,19 +23,19 @@ specifiers: openai: ^3.2.1 preact: ^10.15.1 prettier: ^2.8.8 - prettier-plugin-astro: ^0.9.1 + prettier-plugin-astro: ^0.10.0 prettier-plugin-tailwindcss: ^0.3.0 rehype-external-links: ^2.1.0 roadmap-renderer: ^1.0.6 tailwindcss: ^3.3.2 dependencies: - '@astrojs/preact': 2.2.0_preact@10.15.1 - '@astrojs/sitemap': 1.3.1 - '@astrojs/tailwind': 3.1.3_w4mihal45edfrnncnioktvfyqy + '@astrojs/preact': 2.2.1_preact@10.15.1 + '@astrojs/sitemap': 1.3.3 + '@astrojs/tailwind': 3.1.3_cyxi2rbbvaq22julk2hkhgjf7u '@fingerprintjs/fingerprintjs': 3.4.1 '@nanostores/preact': 0.5.0_m2wbkjxz7237icvaxqi7ignbgm - astro: 2.5.5 + astro: 2.5.7 astro-compress: 1.1.46 jose: 4.14.4 js-cookie: 3.0.5 @@ -57,8 +57,8 @@ devDependencies: markdown-it: 13.0.1 openai: 3.2.1 prettier: 2.8.8 - prettier-plugin-astro: 0.9.1 - prettier-plugin-tailwindcss: 0.3.0_lt2urjvx44zpywt7u6o2ilexia + prettier-plugin-astro: 0.10.0 + prettier-plugin-tailwindcss: 0.3.0_pe5dke5lusx3jwzlx77xu7mxju packages: @@ -76,12 +76,16 @@ packages: /@astrojs/compiler/1.4.2: resolution: {integrity: sha512-xoRp7JpiMZPK/beUcZEM5kM44Z/h20wwwQcl54duPqQMyySG9vZ5xMM6dYiQmn7b3XzpZs0cT6TRDoJJ5gwHAQ==} + dev: false + + /@astrojs/compiler/1.5.0: + resolution: {integrity: sha512-k04X/7nlMklU0HQUScxbCTf5n8/Vr+0U0bawb9QWulWxd6qJf3FmBrNATgTYiltjB4pc5HBqmmttAfFi7m4lLg==} /@astrojs/language-server/1.0.0: resolution: {integrity: sha512-oEw7AwJmzjgy6HC9f5IdrphZ1GVgfV/+7xQuyf52cpTiRWd/tJISK3MsKP0cDkVlfodmNABNFnAaAWuLZEiiiA==} hasBin: true dependencies: - '@astrojs/compiler': 1.4.2 + '@astrojs/compiler': 1.5.0 '@jridgewell/trace-mapping': 0.3.18 '@vscode/emmet-helper': 2.8.7 events: 3.3.0 @@ -97,13 +101,13 @@ packages: vscode-uri: 3.0.7 dev: false - /@astrojs/markdown-remark/2.2.1_astro@2.5.5: + /@astrojs/markdown-remark/2.2.1_astro@2.5.7: resolution: {integrity: sha512-VF0HRv4GpC1XEMLnsKf6jth7JSmlt9qpqP0josQgA2eSpCIAC/Et+y94mgdBIZVBYH/yFnMoIxgKVe93xfO2GA==} peerDependencies: astro: ^2.5.0 dependencies: '@astrojs/prism': 2.1.2 - astro: 2.5.5 + astro: 2.5.7 github-slugger: 1.5.0 import-meta-resolve: 2.2.2 rehype-raw: 6.1.1 @@ -120,8 +124,8 @@ packages: - supports-color dev: false - /@astrojs/preact/2.2.0_preact@10.15.1: - resolution: {integrity: sha512-SP8ODC/ywPFytVF9jX0Nrf9JoMFgXdsRPritLV9v4zPnarIwypW0kIFgm3rjT4ot8CQQj9J5cztqmD+hrDOvMg==} + /@astrojs/preact/2.2.1_preact@10.15.1: + resolution: {integrity: sha512-lObgrX/qfK2sEnGDWoyQ8KojFJ54FIKB4TeywWmgj4ZTg0yLnvvOz6ReyPQ8VfR/1MU+vWs22jE4cuZJ/vPnOA==} engines: {node: '>=16.12.0'} peerDependencies: preact: ^10.6.5 @@ -143,21 +147,21 @@ packages: prismjs: 1.29.0 dev: false - /@astrojs/sitemap/1.3.1: - resolution: {integrity: sha512-4ZBug4ml+2Nl5/Uh4VSja8Kij/DU7/RaNMciXCNm1EzQkP/jm+nqMG1liDDcQK5zXPAoLeaat06IbhNlruvQjg==} + /@astrojs/sitemap/1.3.3: + resolution: {integrity: sha512-TPyyb/hKxc+bHPpSoNPhsuI0QOTVzq2tueg2r0CTH1HqigYIAA2LQkCBlQzz85R+LrOZpv4kXYmhxdDcSkJCmA==} dependencies: sitemap: 7.1.1 zod: 3.21.4 dev: false - /@astrojs/tailwind/3.1.3_w4mihal45edfrnncnioktvfyqy: + /@astrojs/tailwind/3.1.3_cyxi2rbbvaq22julk2hkhgjf7u: resolution: {integrity: sha512-10S1omrv5K5HRVAZ0fBgN5vQykn2HRL332LAVFyBASMn1Ff6gDfSK+CPUeUu94eZUOEaPnECLK8EHAqZ8iY9CA==} peerDependencies: astro: ^2.5.0 tailwindcss: ^3.0.24 dependencies: '@proload/core': 0.3.3 - astro: 2.5.5 + astro: 2.5.7 autoprefixer: 10.4.14_postcss@8.4.23 postcss: 8.4.23 postcss-load-config: 4.0.1_postcss@8.4.23 @@ -182,8 +186,8 @@ packages: - supports-color dev: false - /@astrojs/webapi/2.1.1: - resolution: {integrity: sha512-mHZ7VgPNMeV3TYIw3SGHTKaJosBxA8bTzZ3QhNw509qvCJca4Lkjes8JywimuwTn+TMjEiv7ksNfwRluad3jqA==} + /@astrojs/webapi/2.2.0: + resolution: {integrity: sha512-mHAOApWyjqSe5AQMOUD9rsZJqbMQqe3Wosb1a40JV6Okvyxj1G6GTlthwYadWCymq/lbgwh0PLiY8Fr4eFxtuQ==} dependencies: undici: 5.22.0 dev: false @@ -200,6 +204,11 @@ packages: engines: {node: '>=6.9.0'} dev: false + /@babel/compat-data/7.22.3: + resolution: {integrity: sha512-aNtko9OPOwVESUFp3MZfD8Uzxl7JzSeJpd7npIoxCasU37PFbAQRpKglkaKwlHOyeJdrREpo8TW8ldrkYWwvIQ==} + engines: {node: '>=6.9.0'} + dev: false + /@babel/core/7.21.5: resolution: {integrity: sha512-9M398B/QH5DlfCOTKDZT1ozXr0x8uBEeFd+dJraGUZGiaNpGCDVGCc14hZexsMblw3XxltJ+6kSvogp9J+5a9g==} engines: {node: '>=6.9.0'} @@ -223,6 +232,29 @@ packages: - supports-color dev: false + /@babel/core/7.22.1: + resolution: {integrity: sha512-Hkqu7J4ynysSXxmAahpN1jjRwVJ+NdpraFLIWflgjpVob3KNyK3/tIUc7Q7szed8WMp0JNa7Qtd1E9Oo22F9gA==} + engines: {node: '>=6.9.0'} + dependencies: + '@ampproject/remapping': 2.2.1 + '@babel/code-frame': 7.21.4 + '@babel/generator': 7.22.3 + '@babel/helper-compilation-targets': 7.22.1_@babel+core@7.22.1 + '@babel/helper-module-transforms': 7.22.1 + '@babel/helpers': 7.22.3 + '@babel/parser': 7.22.4 + '@babel/template': 7.21.9 + '@babel/traverse': 7.22.4 + '@babel/types': 7.22.4 + convert-source-map: 1.9.0 + debug: 4.3.4 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.0 + transitivePeerDependencies: + - supports-color + dev: false + /@babel/generator/7.21.5: resolution: {integrity: sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==} engines: {node: '>=6.9.0'} @@ -233,6 +265,16 @@ packages: jsesc: 2.5.2 dev: false + /@babel/generator/7.22.3: + resolution: {integrity: sha512-C17MW4wlk//ES/CJDL51kPNwl+qiBQyN7b9SKyVp11BLGFeSPoVaHrv+MNt8jwQFhQWowW88z1eeBx3pFz9v8A==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.22.4 + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.18 + jsesc: 2.5.2 + dev: false + /@babel/helper-annotate-as-pure/7.18.6: resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==} engines: {node: '>=6.9.0'} @@ -254,24 +296,43 @@ packages: semver: 6.3.0 dev: false + /@babel/helper-compilation-targets/7.22.1_@babel+core@7.22.1: + resolution: {integrity: sha512-Rqx13UM3yVB5q0D/KwQ8+SPfX/+Rnsy1Lw1k/UwOC4KC6qrzIQoY3lYnBu5EHKBlEHHcj0M0W8ltPSkD8rqfsQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/compat-data': 7.22.3 + '@babel/core': 7.22.1 + '@babel/helper-validator-option': 7.21.0 + browserslist: 4.21.5 + lru-cache: 5.1.1 + semver: 6.3.0 + dev: false + /@babel/helper-environment-visitor/7.21.5: resolution: {integrity: sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==} engines: {node: '>=6.9.0'} dev: false + /@babel/helper-environment-visitor/7.22.1: + resolution: {integrity: sha512-Z2tgopurB/kTbidvzeBrc2To3PUP/9i5MUe+fU6QJCQDyPwSH2oRapkLw3KGECDYSjhQZCNxEvNvZlLw8JjGwA==} + engines: {node: '>=6.9.0'} + dev: false + /@babel/helper-function-name/7.21.0: resolution: {integrity: sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.20.7 - '@babel/types': 7.21.5 + '@babel/template': 7.21.9 + '@babel/types': 7.22.4 dev: false /@babel/helper-hoist-variables/7.18.6: resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.22.4 dev: false /@babel/helper-module-imports/7.21.4: @@ -297,6 +358,22 @@ packages: - supports-color dev: false + /@babel/helper-module-transforms/7.22.1: + resolution: {integrity: sha512-dxAe9E7ySDGbQdCVOY/4+UcD8M9ZFqZcZhSPsPacvCG4M+9lwtDDQfI2EoaSvmf7W/8yCBkGU0m7Pvt1ru3UZw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-environment-visitor': 7.22.1 + '@babel/helper-module-imports': 7.21.4 + '@babel/helper-simple-access': 7.21.5 + '@babel/helper-split-export-declaration': 7.18.6 + '@babel/helper-validator-identifier': 7.19.1 + '@babel/template': 7.21.9 + '@babel/traverse': 7.22.4 + '@babel/types': 7.22.4 + transitivePeerDependencies: + - supports-color + dev: false + /@babel/helper-plugin-utils/7.21.5: resolution: {integrity: sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==} engines: {node: '>=6.9.0'} @@ -342,6 +419,17 @@ packages: - supports-color dev: false + /@babel/helpers/7.22.3: + resolution: {integrity: sha512-jBJ7jWblbgr7r6wYZHMdIqKc73ycaTcCaWRq4/2LpuPHcx7xMlZvpGQkOYc9HeSjn6rcx15CPlgVcBtZ4WZJ2w==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.21.9 + '@babel/traverse': 7.22.4 + '@babel/types': 7.22.4 + transitivePeerDependencies: + - supports-color + dev: false + /@babel/highlight/7.18.6: resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} engines: {node: '>=6.9.0'} @@ -356,7 +444,15 @@ packages: engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.22.4 + dev: false + + /@babel/parser/7.22.4: + resolution: {integrity: sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA==} + engines: {node: '>=6.0.0'} + hasBin: true + dependencies: + '@babel/types': 7.22.4 dev: false /@babel/plugin-syntax-jsx/7.21.4_@babel+core@7.21.5: @@ -369,6 +465,16 @@ packages: '@babel/helper-plugin-utils': 7.21.5 dev: false + /@babel/plugin-syntax-jsx/7.21.4_@babel+core@7.22.1: + resolution: {integrity: sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.22.1 + '@babel/helper-plugin-utils': 7.21.5 + dev: false + /@babel/plugin-transform-react-jsx/7.21.5_@babel+core@7.21.5: resolution: {integrity: sha512-ELdlq61FpoEkHO6gFRpfj0kUgSwQTGoaEU8eMRoS8Dv3v6e7BjEAj5WMtIBRdHUeAioMhKP5HyxNzNnP+heKbA==} engines: {node: '>=6.9.0'} @@ -383,6 +489,20 @@ packages: '@babel/types': 7.21.5 dev: false + /@babel/plugin-transform-react-jsx/7.21.5_@babel+core@7.22.1: + resolution: {integrity: sha512-ELdlq61FpoEkHO6gFRpfj0kUgSwQTGoaEU8eMRoS8Dv3v6e7BjEAj5WMtIBRdHUeAioMhKP5HyxNzNnP+heKbA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.22.1 + '@babel/helper-annotate-as-pure': 7.18.6 + '@babel/helper-module-imports': 7.21.4 + '@babel/helper-plugin-utils': 7.21.5 + '@babel/plugin-syntax-jsx': 7.21.4_@babel+core@7.22.1 + '@babel/types': 7.21.5 + dev: false + /@babel/template/7.20.7: resolution: {integrity: sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==} engines: {node: '>=6.9.0'} @@ -392,18 +512,45 @@ packages: '@babel/types': 7.21.5 dev: false + /@babel/template/7.21.9: + resolution: {integrity: sha512-MK0X5k8NKOuWRamiEfc3KEJiHMTkGZNUjzMipqCGDDc6ijRl/B7RGSKVGncu4Ro/HdyzzY6cmoXuKI2Gffk7vQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.21.4 + '@babel/parser': 7.22.4 + '@babel/types': 7.22.4 + dev: false + /@babel/traverse/7.21.5: resolution: {integrity: sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.21.4 - '@babel/generator': 7.21.5 + '@babel/generator': 7.22.3 '@babel/helper-environment-visitor': 7.21.5 '@babel/helper-function-name': 7.21.0 '@babel/helper-hoist-variables': 7.18.6 '@babel/helper-split-export-declaration': 7.18.6 - '@babel/parser': 7.21.5 - '@babel/types': 7.21.5 + '@babel/parser': 7.22.4 + '@babel/types': 7.22.4 + debug: 4.3.4 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@babel/traverse/7.22.4: + resolution: {integrity: sha512-Tn1pDsjIcI+JcLKq1AVlZEr4226gpuAQTsLMorsYg9tuS/kG7nuwwJ4AB8jfQuEgb/COBwR/DqJxmoiYFu5/rQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.21.4 + '@babel/generator': 7.22.3 + '@babel/helper-environment-visitor': 7.22.1 + '@babel/helper-function-name': 7.21.0 + '@babel/helper-hoist-variables': 7.18.6 + '@babel/helper-split-export-declaration': 7.18.6 + '@babel/parser': 7.22.4 + '@babel/types': 7.22.4 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: @@ -419,6 +566,15 @@ packages: to-fast-properties: 2.0.0 dev: false + /@babel/types/7.22.4: + resolution: {integrity: sha512-Tx9x3UBHTTsMSW85WB2kphxYQVvrZ/t1FxD88IpSgIjiUJlCm9z+xWIDwyo1vffTwSqteqyznB8ZE9vYYk16zA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': 7.21.5 + '@babel/helper-validator-identifier': 7.19.1 + to-fast-properties: 2.0.0 + dev: false + /@colors/colors/1.5.0: resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} @@ -810,6 +966,7 @@ packages: picocolors: 1.0.0 tiny-glob: 0.2.9 tslib: 2.5.0 + dev: false /@playwright/test/1.34.3: resolution: {integrity: sha512-zPLef6w9P6T/iT6XDYG3mvGOqOyb6eHaV9XtkunYs0+OzxBtrPAAaHotc0X+PJ00WPPnLfFBTl7mf45Mn8DBmw==} @@ -918,8 +1075,8 @@ packages: /@types/babel__core/7.20.0: resolution: {integrity: sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==} dependencies: - '@babel/parser': 7.21.5 - '@babel/types': 7.21.5 + '@babel/parser': 7.22.4 + '@babel/types': 7.22.4 '@types/babel__generator': 7.6.4 '@types/babel__template': 7.4.1 '@types/babel__traverse': 7.18.5 @@ -928,20 +1085,20 @@ packages: /@types/babel__generator/7.6.4: resolution: {integrity: sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==} dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.22.4 dev: false /@types/babel__template/7.4.1: resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==} dependencies: - '@babel/parser': 7.21.5 - '@babel/types': 7.21.5 + '@babel/parser': 7.22.4 + '@babel/types': 7.22.4 dev: false /@types/babel__traverse/7.18.5: resolution: {integrity: sha512-enCvTL8m/EHS/zIvJno9nE+ndYPh1/oNFzRYRmtUqJICG2VnCSBzMLW5VN2KCQU91f23tsNKR8v7VJJQMatl7Q==} dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.22.4 dev: false /@types/css-tree/2.3.1: @@ -1186,8 +1343,8 @@ packages: terser: 5.17.6 dev: false - /astro/2.5.5: - resolution: {integrity: sha512-VRwnlfRtPALeOxfE4e7To5Vlu9pGwlTRWN1zkn1QTizwfg0rLirFTm6t2MCG/fUhlu/p3QO9tz8SpAIyDq53/Q==} + /astro/2.5.7: + resolution: {integrity: sha512-qYKMIN4tXAOAsm10vU4f+Q7LfC05JmEbQiJmSBqIEhp+wnQcEUFkGLrHMSsps3oBzMtjErUdDDW5tGJcn5eVlA==} engines: {node: '>=16.12.0', npm: '>=6.14.0'} hasBin: true peerDependencies: @@ -1198,13 +1355,13 @@ packages: dependencies: '@astrojs/compiler': 1.4.2 '@astrojs/language-server': 1.0.0 - '@astrojs/markdown-remark': 2.2.1_astro@2.5.5 + '@astrojs/markdown-remark': 2.2.1_astro@2.5.7 '@astrojs/telemetry': 2.1.1 - '@astrojs/webapi': 2.1.1 - '@babel/core': 7.21.5 + '@astrojs/webapi': 2.2.0 + '@babel/core': 7.22.1 '@babel/generator': 7.21.5 '@babel/parser': 7.21.5 - '@babel/plugin-transform-react-jsx': 7.21.5_@babel+core@7.21.5 + '@babel/plugin-transform-react-jsx': 7.21.5_@babel+core@7.22.1 '@babel/traverse': 7.21.5 '@babel/types': 7.21.5 '@types/babel__core': 7.20.0 @@ -1754,6 +1911,7 @@ packages: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 + dev: false /crypto-random-string/4.0.0: resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} @@ -1872,6 +2030,7 @@ packages: /define-lazy-prop/2.0.0: resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} engines: {node: '>=8'} + dev: false /delayed-stream/1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} @@ -2421,6 +2580,7 @@ packages: /globalyzer/0.1.0: resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==} + dev: false /globby/11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} @@ -2447,6 +2607,7 @@ packages: /globrex/0.1.2: resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} + dev: false /got/12.6.0: resolution: {integrity: sha512-WTcaQ963xV97MN3x0/CbAriXFZcXCfgxVp91I+Ze6pawQOa7SgzwSx2zIJJsX+kTajMnVs0xcFD1TxZKFqhdnQ==} @@ -2790,6 +2951,7 @@ packages: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} engines: {node: '>=8'} hasBin: true + dev: false /is-docker/3.0.0: resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} @@ -2877,6 +3039,7 @@ packages: engines: {node: '>=8'} dependencies: is-docker: 2.2.1 + dev: false /is-yarn-global/0.4.1: resolution: {integrity: sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ==} @@ -2885,6 +3048,7 @@ packages: /isexe/2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + dev: false /jackspeak/2.1.1: resolution: {integrity: sha512-juf9stUEwUaILepraGOWIJTLwg48bUnBmRqd2ln2Os1sW987zeoj/hzhbvRB95oMuS2ZTpjULmdwHNX4rzZIZw==} @@ -4042,6 +4206,7 @@ packages: define-lazy-prop: 2.0.0 is-docker: 2.2.1 is-wsl: 2.2.0 + dev: false /openai/3.2.1: resolution: {integrity: sha512-762C9BNlJPbjjlWZi4WYK9iM2tAVAv0uUp1UmI34vb0CN5T2mjB/qM6RYBmNKMh/dN9fC+bxqPwWJZUTWW052A==} @@ -4209,6 +4374,7 @@ packages: /path-key/3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} + dev: false /path-key/4.0.0: resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} @@ -4399,27 +4565,26 @@ packages: which-pm: 2.0.0 dev: false - /prettier-plugin-astro/0.8.0: - resolution: {integrity: sha512-kt9wk33J7HvFGwFaHb8piwy4zbUmabC8Nu+qCw493jhe96YkpjscqGBPy4nJ9TPy9pd7+kEx1zM81rp+MIdrXg==} + /prettier-plugin-astro/0.10.0: + resolution: {integrity: sha512-dPzop0gKZyVGpTDQmfy+e7FKXC9JT3mlpfYA2diOVz+Ui+QR1U4G/s+OesKl2Hib2JJOtAYJs/l+ovgT0ljlFA==} engines: {node: ^14.15.0 || >=16.0.0, pnpm: '>=7.14.0'} dependencies: - '@astrojs/compiler': 1.4.2 + '@astrojs/compiler': 1.5.0 prettier: 2.8.8 sass-formatter: 0.7.6 - synckit: 0.8.5 - dev: false + dev: true - /prettier-plugin-astro/0.9.1: - resolution: {integrity: sha512-pYZXSbdq0eElvzoIMArzv1SBn1NUXzopjlcnt6Ql8VW32PjC12NovwBjXJ6rh8qQLi7vF8jNqAbraKW03UPfag==} + /prettier-plugin-astro/0.8.0: + resolution: {integrity: sha512-kt9wk33J7HvFGwFaHb8piwy4zbUmabC8Nu+qCw493jhe96YkpjscqGBPy4nJ9TPy9pd7+kEx1zM81rp+MIdrXg==} engines: {node: ^14.15.0 || >=16.0.0, pnpm: '>=7.14.0'} dependencies: - '@astrojs/compiler': 1.4.2 + '@astrojs/compiler': 1.5.0 prettier: 2.8.8 sass-formatter: 0.7.6 synckit: 0.8.5 - dev: true + dev: false - /prettier-plugin-tailwindcss/0.3.0_lt2urjvx44zpywt7u6o2ilexia: + /prettier-plugin-tailwindcss/0.3.0_pe5dke5lusx3jwzlx77xu7mxju: resolution: {integrity: sha512-009/Xqdy7UmkcTBpwlq7jsViDqXAYSOMLDrHAdTMlVZOrKfM2o9Ci7EMWTMZ7SkKBFTG04UM9F9iM2+4i6boDA==} engines: {node: '>=12.17.0'} peerDependencies: @@ -4472,7 +4637,7 @@ packages: optional: true dependencies: prettier: 2.8.8 - prettier-plugin-astro: 0.9.1 + prettier-plugin-astro: 0.10.0 dev: true /prettier/2.8.8: @@ -4929,10 +5094,12 @@ packages: engines: {node: '>=8'} dependencies: shebang-regex: 3.0.0 + dev: false /shebang-regex/3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} + dev: false /shiki/0.14.2: resolution: {integrity: sha512-ltSZlSLOuSY0M0Y75KA+ieRaZ0Trf5Wl3gutE7jzLuIcWxLp5i/uEnLoQWNvgKXQ5OMpGkJnVMRLAuzjc0LJ2A==} @@ -5254,6 +5421,7 @@ packages: dependencies: '@pkgr/utils': 2.3.1 tslib: 2.5.0 + dev: false /tailwindcss/3.3.2: resolution: {integrity: sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==} @@ -5345,6 +5513,7 @@ packages: dependencies: globalyzer: 0.1.0 globrex: 0.1.2 + dev: false /to-fast-properties/2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} @@ -5388,6 +5557,7 @@ packages: /tslib/2.5.0: resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} + dev: false /tuf-js/1.1.4: resolution: {integrity: sha512-Lw2JRM3HTYhEtQJM2Th3aNCPbnXirtWMl065BawwmM2pX6XStH/ZO9e8T2hh0zk/HUa+1i6j+Lv6eDitKTau6A==} @@ -5770,6 +5940,7 @@ packages: hasBin: true dependencies: isexe: 2.0.0 + dev: false /which/3.0.0: resolution: {integrity: sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==} diff --git a/public/jsons/roadmaps/code-review.json b/public/jsons/roadmaps/code-review.json index bcf96f1b9..35e1d2b2a 100644 --- a/public/jsons/roadmaps/code-review.json +++ b/public/jsons/roadmaps/code-review.json @@ -1 +1 @@ -{"mockup":{"controls":{"control":[{"ID":"3197","typeID":"Label","zOrder":"7","measuredW":"150","measuredH":"28","x":"1834","y":"831","properties":{"size":"20","text":"Smaller effort for"}},{"ID":"3198","typeID":"Label","zOrder":"8","measuredW":"156","measuredH":"28","x":"1834","y":"858","properties":{"size":"20","text":"changes later on."}},{"ID":"3217","typeID":"Label","zOrder":"9","measuredW":"143","measuredH":"28","x":"1834","y":"1177","properties":{"size":"20","text":"Higher effort for"}},{"ID":"3218","typeID":"Label","zOrder":"10","measuredW":"156","measuredH":"28","x":"1834","y":"1204","properties":{"size":"20","text":"changes later on."}},{"ID":"3231","typeID":"Label","zOrder":"13","measuredW":"134","measuredH":"28","x":"827","y":"871","properties":{"size":"20","text":"Automate here"}},{"ID":"3236","typeID":"Label","zOrder":"15","measuredW":"139","measuredH":"28","x":"823","y":"1079","properties":{"size":"20","text":"Focus on these"}},{"ID":"3242","typeID":"__group__","zOrder":"12","measuredW":"302","measuredH":"190","w":"302","h":"190","x":"987","y":"784","children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"256","h":"190","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"6710886","borderColor":"6710886"}},{"ID":"1","typeID":"Canvas","zOrder":"1","w":"237","h":"86","measuredW":"100","measuredH":"70","x":"65","y":"0","properties":{"color":"6710886","borderColor":"6710886"}}]}}},{"ID":"3243","typeID":"__group__","zOrder":"14","measuredW":"190","measuredH":"293","w":"190","h":"293","x":"986","y":"985","children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"54","h":"293","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"4473924","borderColor":"4473924"}},{"ID":"1","typeID":"Canvas","zOrder":"1","w":"87","h":"181","measuredW":"100","measuredH":"70","x":"38","y":"0","properties":{"color":"4473924","borderColor":"4473924"}},{"ID":"2","typeID":"Canvas","zOrder":"2","w":"86","h":"89","measuredW":"100","measuredH":"70","x":"104","y":"0","properties":{"color":"4473924","borderColor":"4473924"}}]}}},{"ID":"3250","typeID":"Label","zOrder":"0","measuredW":"76","measuredH":"26","x":"919","y":"1329","properties":{"text":"Also visit ","size":"18"}},{"ID":"3256","typeID":"Label","zOrder":"17","measuredW":"9","measuredH":"26","x":"1254","y":"1329","properties":{"size":"18","text":"/","color":"10066329"}},{"ID":"3258","typeID":"Label","zOrder":"18","measuredW":"59","measuredH":"26","x":"1707","y":"1329","properties":{"size":"18","text":"Credits"}},{"ID":"3261","typeID":"Arrow","zOrder":"20","w":"152","h":"1","measuredW":"150","measuredH":"100","x":"796","y":"919","properties":{"curvature":"0","leftArrow":"false","rightArrow":"false","color":"16382715","p0":{"x":152,"y":0},"p1":{"x":0.49999999999999994,"y":0},"p2":{"x":0.048133037535308176,"y":0}}},{"ID":"3268","typeID":"Label","zOrder":"21","measuredW":"9","measuredH":"26","x":"1679","y":"1329","properties":{"size":"18","text":"/","color":"10066329"}},{"ID":"3269","typeID":"Label","zOrder":"22","measuredW":"150","measuredH":"26","x":"1289","y":"1329","properties":{"size":"18","text":"Interactive version"}},{"ID":"3270","typeID":"Arrow","zOrder":"23","w":"123","h":"1","measuredW":"150","measuredH":"100","x":"1412","y":"1388","properties":{"curvature":"0","leftArrow":"false","rightArrow":"false","p0":{"x":123,"y":0},"p1":{"x":0.49999999999999994,"y":0},"p2":{"x":0.2922777153748939,"y":0},"color":"16382715"}},{"ID":"3271","typeID":"Arrow","zOrder":"24","w":"170","h":"1","measuredW":"150","measuredH":"100","x":"1888","y":"919","properties":{"curvature":"0","leftArrow":"false","rightArrow":"false","color":"16382715","p0":{"x":170.17433009674505,"y":0},"p1":{"x":0.5,"y":0},"p2":{"x":0.2922777153748939,"y":0}}},{"ID":"3284","typeID":"__group__","zOrder":"1","measuredW":"232","measuredH":"26","w":"232","h":"26","x":"1001","y":"1329","properties":{"controlName":"ext_link:roadmap.sh/best-practices/code-review"},"children":{"controls":{"control":[{"ID":"0","typeID":"Label","zOrder":"0","measuredW":"232","measuredH":"26","x":"0","y":"0","properties":{"color":"10027263","size":"18","text":"Code Review Best Practices"}}]}}},{"ID":"3285","typeID":"__group__","zOrder":"16","measuredW":"202","measuredH":"26","w":"202","h":"26","x":"1451","y":"1329","properties":{"controlName":"ext_link:roadmap.sh/code-review"},"children":{"controls":{"control":[{"ID":"0","typeID":"Label","zOrder":"0","measuredW":"202","measuredH":"26","x":"0","y":"0","properties":{"color":"10027263","size":"18","text":"roadmap.sh/code-review"}}]}}},{"ID":"3286","typeID":"__group__","zOrder":"19","measuredW":"135","measuredH":"26","w":"135","h":"26","x":"1776","y":"1329","properties":{"controlName":"ext_link:www.morling.dev/blog/the-code-review-pyramid/"},"children":{"controls":{"control":[{"ID":"0","typeID":"Label","zOrder":"0","measuredW":"135","measuredH":"26","x":"0","y":"0","properties":{"size":"18","color":"10027263","text":"@gunnarmorling"}}]}}},{"ID":"3287","typeID":"__group__","zOrder":"3","measuredW":"196","measuredH":"102","w":"196","h":"102","x":"1304","y":"784","properties":{"controlName":"100-code-style"},"children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"196","h":"102","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"16770457"}},{"ID":"1","typeID":"Label","zOrder":"1","measuredW":"98","measuredH":"28","x":"49","y":"37","properties":{"size":"20","text":"Code Style"}}]}}},{"ID":"3288","typeID":"__group__","zOrder":"2","measuredW":"287","measuredH":"102","w":"287","h":"102","x":"1258","y":"883","properties":{"controlName":"101-tests"},"children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"287","h":"102","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"16770457"}},{"ID":"1","typeID":"Label","zOrder":"1","measuredW":"48","measuredH":"28","x":"120","y":"37","properties":{"size":"20","text":"Tests"}}]}}},{"ID":"3289","typeID":"__group__","zOrder":"4","measuredW":"424","measuredH":"102","w":"424","h":"102","x":"1190","y":"982","properties":{"controlName":"102-documentation"},"children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"424","h":"102","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"16776960"}},{"ID":"1","typeID":"Label","zOrder":"1","measuredW":"138","measuredH":"28","x":"143","y":"37","properties":{"size":"20","text":"Documentation"}}]}}},{"ID":"3290","typeID":"__group__","zOrder":"5","measuredW":"556","measuredH":"102","w":"556","h":"102","x":"1124","y":"1081","properties":{"controlName":"103-implementation-semantics"},"children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"556","h":"102","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"16776960"}},{"ID":"1","typeID":"Label","zOrder":"1","measuredW":"241","measuredH":"28","x":"157","y":"37","properties":{"size":"20","text":"Implementation Semantics"}}]}}},{"ID":"3291","typeID":"__group__","zOrder":"6","measuredW":"699","measuredH":"102","w":"699","h":"102","x":"1052","y":"1176","properties":{"controlName":"104-api-semantics"},"children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"699","h":"102","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"16776960"}},{"ID":"1","typeID":"Label","zOrder":"1","measuredW":"131","measuredH":"28","x":"284","y":"37","properties":{"size":"20","text":"API Semantics"}}]}}},{"ID":"3292","typeID":"__group__","zOrder":"11","measuredW":"14","measuredH":"487","w":"14","h":"487","x":"1798","y":"799","children":{"controls":{"control":[{"ID":"0","typeID":"Label","zOrder":"0","measuredW":"14","measuredH":"36","x":"0","y":"451","properties":{"text":"v","size":"28"}},{"ID":"1","typeID":"Arrow","zOrder":"1","w":"1","h":"473","measuredW":"150","measuredH":"100","x":"7","y":"0","properties":{"curvature":"0","leftArrow":"false","rightArrow":"false","p0":{"x":0,"y":-0.14389738910188044},"p1":{"x":0.49999999999999994,"y":0},"p2":{"x":0,"y":472.82713475857486}}}]}}}]},"attributes":{"name":"New Wireframe 9 copy 7","order":1000156.2209166192,"parentID":null,"notes":null},"branchID":"Master","resourceID":"057DB19F-D6AC-44FC-8C5C-52D4D800A91B","mockupH":"605","mockupW":"1262","measuredW":"2058","measuredH":"1389","version":"1.0"},"groupOffset":{"x":0,"y":0},"dependencies":[],"projectID":"file:///Users/kamranahmed/Desktop/AWS%20Roadmap.bmpr"} \ No newline at end of file +{"mockup":{"controls":{"control":[{"ID":"3197","typeID":"Label","zOrder":"7","measuredW":"150","measuredH":"28","x":"1834","y":"831","properties":{"size":"20","text":"Smaller effort for"}},{"ID":"3198","typeID":"Label","zOrder":"8","measuredW":"156","measuredH":"28","x":"1834","y":"858","properties":{"size":"20","text":"changes later on."}},{"ID":"3217","typeID":"Label","zOrder":"9","measuredW":"143","measuredH":"28","x":"1834","y":"1177","properties":{"size":"20","text":"Higher effort for"}},{"ID":"3218","typeID":"Label","zOrder":"10","measuredW":"156","measuredH":"28","x":"1834","y":"1204","properties":{"size":"20","text":"changes later on."}},{"ID":"3231","typeID":"Label","zOrder":"13","measuredW":"134","measuredH":"28","x":"827","y":"871","properties":{"size":"20","text":"Automate here"}},{"ID":"3236","typeID":"Label","zOrder":"15","measuredW":"139","measuredH":"28","x":"823","y":"1079","properties":{"size":"20","text":"Focus on these"}},{"ID":"3242","typeID":"__group__","zOrder":"12","measuredW":"302","measuredH":"190","w":"302","h":"190","x":"987","y":"784","children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"256","h":"190","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"6710886","borderColor":"6710886"}},{"ID":"1","typeID":"Canvas","zOrder":"1","w":"237","h":"86","measuredW":"100","measuredH":"70","x":"65","y":"0","properties":{"color":"6710886","borderColor":"6710886"}}]}}},{"ID":"3243","typeID":"__group__","zOrder":"14","measuredW":"190","measuredH":"293","w":"190","h":"293","x":"986","y":"985","children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"54","h":"293","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"4473924","borderColor":"4473924"}},{"ID":"1","typeID":"Canvas","zOrder":"1","w":"87","h":"181","measuredW":"100","measuredH":"70","x":"38","y":"0","properties":{"color":"4473924","borderColor":"4473924"}},{"ID":"2","typeID":"Canvas","zOrder":"2","w":"86","h":"89","measuredW":"100","measuredH":"70","x":"104","y":"0","properties":{"color":"4473924","borderColor":"4473924"}}]}}},{"ID":"3250","typeID":"Label","zOrder":"0","measuredW":"76","measuredH":"26","x":"919","y":"1329","properties":{"text":"Also visit ","size":"18"}},{"ID":"3256","typeID":"Label","zOrder":"17","measuredW":"9","measuredH":"26","x":"1254","y":"1329","properties":{"size":"18","text":"/","color":"10066329"}},{"ID":"3258","typeID":"Label","zOrder":"18","measuredW":"59","measuredH":"26","x":"1707","y":"1329","properties":{"size":"18","text":"Credits"}},{"ID":"3261","typeID":"Arrow","zOrder":"20","w":"152","h":"1","measuredW":"150","measuredH":"100","x":"796","y":"919","properties":{"curvature":"0","leftArrow":"false","rightArrow":"false","p0":{"x":152,"y":0},"p1":{"x":0.49999999999999994,"y":0},"p2":{"x":0.048133037535308176,"y":0},"color":"16382715"}},{"ID":"3268","typeID":"Label","zOrder":"21","measuredW":"9","measuredH":"26","x":"1679","y":"1329","properties":{"size":"18","text":"/","color":"10066329"}},{"ID":"3269","typeID":"Label","zOrder":"22","measuredW":"150","measuredH":"26","x":"1289","y":"1329","properties":{"size":"18","text":"Interactive version"}},{"ID":"3270","typeID":"Arrow","zOrder":"23","w":"123","h":"1","measuredW":"150","measuredH":"100","x":"1412","y":"1448","properties":{"curvature":"0","leftArrow":"false","rightArrow":"false","p0":{"x":123,"y":0},"p1":{"x":0.49999999999999994,"y":0},"p2":{"x":0.2922777153748939,"y":0},"color":"16382715"}},{"ID":"3271","typeID":"Arrow","zOrder":"24","w":"170","h":"1","measuredW":"150","measuredH":"100","x":"1888","y":"919","properties":{"curvature":"0","leftArrow":"false","rightArrow":"false","p0":{"x":170.17433009674505,"y":0},"p1":{"x":0.5,"y":0},"p2":{"x":0.2922777153748939,"y":0},"color":"16382715"}},{"ID":"3284","typeID":"__group__","zOrder":"1","measuredW":"232","measuredH":"26","w":"232","h":"26","x":"1001","y":"1329","properties":{"controlName":"ext_link:roadmap.sh/best-practices/code-review"},"children":{"controls":{"control":[{"ID":"0","typeID":"Label","zOrder":"0","measuredW":"232","measuredH":"26","x":"0","y":"0","properties":{"color":"10027263","size":"18","text":"Code Review Best Practices"}}]}}},{"ID":"3285","typeID":"__group__","zOrder":"16","measuredW":"202","measuredH":"26","w":"202","h":"26","x":"1451","y":"1329","properties":{"controlName":"ext_link:roadmap.sh/code-review"},"children":{"controls":{"control":[{"ID":"0","typeID":"Label","zOrder":"0","measuredW":"202","measuredH":"26","x":"0","y":"0","properties":{"color":"10027263","size":"18","text":"roadmap.sh/code-review"}}]}}},{"ID":"3286","typeID":"__group__","zOrder":"19","measuredW":"135","measuredH":"26","w":"135","h":"26","x":"1776","y":"1329","properties":{"controlName":"ext_link:www.morling.dev/blog/the-code-review-pyramid/"},"children":{"controls":{"control":[{"ID":"0","typeID":"Label","zOrder":"0","measuredW":"135","measuredH":"26","x":"0","y":"0","properties":{"size":"18","color":"10027263","text":"@gunnarmorling"}}]}}},{"ID":"3287","typeID":"__group__","zOrder":"3","measuredW":"196","measuredH":"102","w":"196","h":"102","x":"1304","y":"784","properties":{"controlName":"100-code-style"},"children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"196","h":"102","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"16770457"}},{"ID":"1","typeID":"Label","zOrder":"1","measuredW":"98","measuredH":"28","x":"49","y":"37","properties":{"size":"20","text":"Code Style"}}]}}},{"ID":"3288","typeID":"__group__","zOrder":"2","measuredW":"287","measuredH":"102","w":"287","h":"102","x":"1258","y":"883","properties":{"controlName":"101-tests"},"children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"287","h":"102","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"16770457"}},{"ID":"1","typeID":"Label","zOrder":"1","measuredW":"48","measuredH":"28","x":"120","y":"37","properties":{"size":"20","text":"Tests"}}]}}},{"ID":"3289","typeID":"__group__","zOrder":"4","measuredW":"424","measuredH":"102","w":"424","h":"102","x":"1190","y":"982","properties":{"controlName":"102-documentation"},"children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"424","h":"102","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"16776960"}},{"ID":"1","typeID":"Label","zOrder":"1","measuredW":"138","measuredH":"28","x":"143","y":"37","properties":{"size":"20","text":"Documentation"}}]}}},{"ID":"3290","typeID":"__group__","zOrder":"5","measuredW":"556","measuredH":"102","w":"556","h":"102","x":"1124","y":"1081","properties":{"controlName":"103-implementation-semantics"},"children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"556","h":"102","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"16776960"}},{"ID":"1","typeID":"Label","zOrder":"1","measuredW":"241","measuredH":"28","x":"157","y":"37","properties":{"size":"20","text":"Implementation Semantics"}}]}}},{"ID":"3291","typeID":"__group__","zOrder":"6","measuredW":"699","measuredH":"102","w":"699","h":"102","x":"1052","y":"1176","properties":{"controlName":"104-api-semantics"},"children":{"controls":{"control":[{"ID":"0","typeID":"Canvas","zOrder":"0","w":"699","h":"102","measuredW":"100","measuredH":"70","x":"0","y":"0","properties":{"color":"16776960"}},{"ID":"1","typeID":"Label","zOrder":"1","measuredW":"131","measuredH":"28","x":"284","y":"37","properties":{"size":"20","text":"API Semantics"}}]}}},{"ID":"3292","typeID":"__group__","zOrder":"11","measuredW":"14","measuredH":"487","w":"14","h":"487","x":"1798","y":"799","children":{"controls":{"control":[{"ID":"0","typeID":"Label","zOrder":"0","measuredW":"14","measuredH":"36","x":"0","y":"451","properties":{"text":"v","size":"28"}},{"ID":"1","typeID":"Arrow","zOrder":"1","w":"1","h":"473","measuredW":"150","measuredH":"100","x":"7","y":"0","properties":{"curvature":"0","leftArrow":"false","rightArrow":"false","p0":{"x":0,"y":-0.14389738910188044},"p1":{"x":0.49999999999999994,"y":0},"p2":{"x":0,"y":472.82713475857486}}}]}}},{"ID":"3293","typeID":"Arrow","zOrder":"25","w":"123","h":"1","measuredW":"150","measuredH":"100","x":"1328","y":"759","properties":{"curvature":"0","leftArrow":"false","rightArrow":"false","p0":{"x":123,"y":0},"p1":{"x":0.49999999999999994,"y":0},"p2":{"x":0.2922777153748939,"y":0},"color":"16382715"}}]},"attributes":{"name":"New Wireframe 9 copy 7","order":1000156.2209166192,"parentID":null,"notes":null},"branchID":"Master","resourceID":"057DB19F-D6AC-44FC-8C5C-52D4D800A91B","mockupH":"690","mockupW":"1262","measuredW":"2058","measuredH":"1449","version":"1.0"},"groupOffset":{"x":0,"y":0},"dependencies":[],"projectID":"file:///Users/kamranahmed/Desktop/AWS%20Roadmap.bmpr"} \ No newline at end of file