Compare commits
102 Commits
fix/auth-c
...
fix/layout
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
52018e7030 | ||
|
|
95d70c521a | ||
|
|
852622f5ac | ||
|
|
03173f6017 | ||
|
|
5c1e3cae3f | ||
|
|
a3f9c8e5e2 | ||
|
|
43f9412dd4 | ||
|
|
58e11afc94 | ||
|
|
854c39ec39 | ||
|
|
907391b34c | ||
|
|
5a56b0f753 | ||
|
|
5fb4d3e2dc | ||
|
|
0a89057823 | ||
|
|
add0db5514 | ||
|
|
2eec44303c | ||
|
|
84fc0e40b5 | ||
|
|
d3ee18e2a1 | ||
|
|
4988ba0604 | ||
|
|
fd48e980cd | ||
|
|
dd728b526e | ||
|
|
f8f29d2a17 | ||
|
|
5bdfe48cad | ||
|
|
e4e0f9ac98 | ||
|
|
40c8bfc312 | ||
|
|
3479201e20 | ||
|
|
1092528de0 | ||
|
|
45086a6314 | ||
|
|
b6798ea3a2 | ||
|
|
1cb29d0fc7 | ||
|
|
1d9adf742b | ||
|
|
625d9a1f5b | ||
|
|
08bc4c38ae | ||
|
|
cabbf51150 | ||
|
|
730af9b973 | ||
|
|
4e96a58e54 | ||
|
|
5230ae22be | ||
|
|
18deef46db | ||
|
|
e6bea59ab5 | ||
|
|
66e4f3c97c | ||
|
|
9511de967c | ||
|
|
038bdb0e7d | ||
|
|
8a1f5d1bb4 | ||
|
|
3e8af3bd0f | ||
|
|
08a3970d08 | ||
|
|
e4f9b9fe01 | ||
|
|
2ab7690271 | ||
|
|
cdb9a87c85 | ||
|
|
0d43103323 | ||
|
|
77d67e29eb | ||
|
|
4a00a7bc79 | ||
|
|
ff2c13947b | ||
|
|
d880f84e0a | ||
|
|
7cffcccfe8 | ||
|
|
88ddeeb5fb | ||
|
|
812a39154c | ||
|
|
6e6489bc4c | ||
|
|
696e4f1890 | ||
|
|
37c18ec3cc | ||
|
|
9e3d50a84d | ||
|
|
01c65084b5 | ||
|
|
05fe51ca33 | ||
|
|
59c0a7d451 | ||
|
|
d0bd4d6faf | ||
|
|
ec9d2d4c74 | ||
|
|
1eb5a9c49d | ||
|
|
c3a61e7f34 | ||
|
|
f838b5dac7 | ||
|
|
64cfe503af | ||
|
|
5b7e7b9767 | ||
|
|
58a5d27854 | ||
|
|
18db62748c | ||
|
|
c9703c8589 | ||
|
|
da526fa684 | ||
|
|
cd6232035f | ||
|
|
09cb1ea827 | ||
|
|
d5fdc62343 | ||
|
|
44d3724880 | ||
|
|
9d4aae10b5 | ||
|
|
070d04334b | ||
|
|
7040b6637c | ||
|
|
cfa8d2a986 | ||
|
|
d2f372fd6f | ||
|
|
f6cd6419be | ||
|
|
dcef07d7c6 | ||
|
|
bd3fd8bfe2 | ||
|
|
44b62c2b2d | ||
|
|
d958a29862 | ||
|
|
37ffc2cc62 | ||
|
|
dd3a46e972 | ||
|
|
9f8fcb8265 | ||
|
|
6c99127fc4 | ||
|
|
9157e18ec7 | ||
|
|
84093e3525 | ||
|
|
04d0f7c0b1 | ||
|
|
f1f56408d5 | ||
|
|
d847eb0685 | ||
|
|
d697707384 | ||
|
|
fdee813a0b | ||
|
|
707f0097dc | ||
|
|
27e98b0eba | ||
|
|
8d677f3a22 | ||
|
|
a9734c7eeb |
5
.astro/settings.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"devToolbar": {
|
||||
"enabled": false
|
||||
}
|
||||
}
|
||||
@@ -29,7 +29,7 @@ export default defineConfig({
|
||||
'mailto:',
|
||||
'https://github.com/kamranahmedse',
|
||||
'https://thenewstack.io',
|
||||
'https://cs.fyi',
|
||||
'https://kamranahmed.info',
|
||||
'https://roadmap.sh',
|
||||
];
|
||||
if (whiteListedStarts.some((start) => href.startsWith(start))) {
|
||||
|
||||
46
package.json
@@ -19,51 +19,63 @@
|
||||
"generate-renderer": "sh scripts/generate-renderer.sh",
|
||||
"best-practice-dirs": "node scripts/best-practice-dirs.cjs",
|
||||
"best-practice-content": "node scripts/best-practice-content.cjs",
|
||||
"generate:og": "node ./scripts/generate-og-images.mjs",
|
||||
"test:e2e": "playwright test"
|
||||
},
|
||||
"dependencies": {
|
||||
"@astrojs/react": "^3.0.9",
|
||||
"@astrojs/react": "^3.0.10",
|
||||
"@astrojs/sitemap": "^3.0.5",
|
||||
"@astrojs/tailwind": "^5.1.0",
|
||||
"@fingerprintjs/fingerprintjs": "^4.2.1",
|
||||
"@fingerprintjs/fingerprintjs": "^4.2.2",
|
||||
"@nanostores/react": "^0.7.1",
|
||||
"@types/react": "^18.2.48",
|
||||
"@types/react-dom": "^18.2.18",
|
||||
"astro": "^4.2.1",
|
||||
"astro-compress": "^2.2.8",
|
||||
"@resvg/resvg-js": "^2.6.0",
|
||||
"@types/react": "^18.2.56",
|
||||
"@types/react-dom": "^18.2.19",
|
||||
"astro": "^4.4.0",
|
||||
"astro-compress": "^2.2.10",
|
||||
"clsx": "^2.1.0",
|
||||
"dracula-prism": "^2.1.13",
|
||||
"jose": "^5.2.0",
|
||||
"dom-to-image": "^2.6.0",
|
||||
"dracula-prism": "^2.1.16",
|
||||
"gray-matter": "^4.0.3",
|
||||
"htm": "^3.1.1",
|
||||
"image-size": "^1.1.1",
|
||||
"jose": "^5.2.2",
|
||||
"js-cookie": "^3.0.5",
|
||||
"lucide-react": "^0.300.0",
|
||||
"nanoid": "^5.0.4",
|
||||
"lucide-react": "^0.358.0",
|
||||
"nanoid": "^5.0.5",
|
||||
"nanostores": "^0.9.5",
|
||||
"node-html-parser": "^6.1.12",
|
||||
"npm-check-updates": "^16.14.12",
|
||||
"npm-check-updates": "^16.14.15",
|
||||
"prismjs": "^1.29.0",
|
||||
"react": "^18.2.0",
|
||||
"react-confetti": "^6.1.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"reactflow": "^11.10.2",
|
||||
"reactflow": "^11.10.4",
|
||||
"rehype-external-links": "^3.0.0",
|
||||
"remark-parse": "^11.0.0",
|
||||
"roadmap-renderer": "^1.0.6",
|
||||
"satori": "^0.10.13",
|
||||
"satori-html": "^0.3.2",
|
||||
"sharp": "^0.33.2",
|
||||
"slugify": "^1.6.6",
|
||||
"tailwind-merge": "^2.2.1",
|
||||
"tailwindcss": "^3.4.1",
|
||||
"zustand": "^4.5.0"
|
||||
"unified": "^11.0.4",
|
||||
"zustand": "^4.5.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@playwright/test": "^1.41.1",
|
||||
"@playwright/test": "^1.41.2",
|
||||
"@tailwindcss/typography": "^0.5.10",
|
||||
"@types/dom-to-image": "^2.6.7",
|
||||
"@types/js-cookie": "^3.0.6",
|
||||
"@types/prismjs": "^1.26.3",
|
||||
"csv-parser": "^3.0.0",
|
||||
"gh-pages": "^6.1.1",
|
||||
"js-yaml": "^4.1.0",
|
||||
"markdown-it": "^14.0.0",
|
||||
"openai": "^4.25.0",
|
||||
"prettier": "^3.2.4",
|
||||
"prettier-plugin-astro": "^0.12.3",
|
||||
"openai": "^4.28.0",
|
||||
"prettier": "^3.2.5",
|
||||
"prettier-plugin-astro": "^0.13.0",
|
||||
"prettier-plugin-tailwindcss": "^0.5.11"
|
||||
}
|
||||
}
|
||||
|
||||
668
pnpm-lock.yaml
generated
BIN
public/authors/peter-thaleikis.png
Normal file
|
After Width: | Height: | Size: 150 KiB |
BIN
public/best-practices/backend-performance.png
Normal file
|
After Width: | Height: | Size: 1.3 MiB |
BIN
public/fonts/BalsamiqSans-Regular.ttf
Normal file
3
public/images/graph.svg
Normal file
@@ -0,0 +1,3 @@
|
||||
<svg width="46" height="27" viewBox="0 0 46 27" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M43.354 0.9C42.184 0.9 41.2371 1.84684 41.2371 3.01686C41.2371 3.30867 41.3062 3.57708 41.4117 3.82435L33.4085 15.0163C33.38 15.0161 33.3514 15.0167 33.3248 15.0172C33.3051 15.0176 33.2864 15.018 33.2697 15.018C32.8703 15.018 32.484 15.1223 32.161 15.3186L25.2976 11.9024C25.1995 10.8219 24.2903 9.97585 23.1854 9.97585C22.0154 9.97585 21.0686 10.9227 21.0686 12.0927C21.0686 12.1865 21.0799 12.2794 21.0925 12.3656L13.8077 18.1561C13.5852 18.0783 13.3472 18.0433 13.1011 18.0433C12.0622 18.0433 11.2066 18.7882 11.0265 19.7732L4.26122 22.5041C3.91213 22.2447 3.48642 22.077 3.01686 22.077C1.84684 22.077 0.9 23.0238 0.9 24.1938C0.9 25.3639 1.84684 26.3107 3.01686 26.3107C4.06426 26.3107 4.92372 25.5497 5.0923 24.5492L11.8566 21.8497C12.2057 22.1092 12.6315 22.277 13.1011 22.277C14.2711 22.277 15.218 21.3301 15.218 20.1601C15.218 20.0663 15.2067 19.9735 15.194 19.8873L22.4789 14.0968C22.7013 14.1746 22.9393 14.2096 23.1854 14.2096C23.5848 14.2096 23.9711 14.1053 24.2941 13.909L31.1575 17.3252C31.2556 18.4057 32.1649 19.2517 33.2697 19.2517C34.4397 19.2517 35.3866 18.3049 35.3866 17.1348C35.3866 16.843 35.3175 16.5746 35.2119 16.3273L43.2151 5.13536C43.2437 5.13561 43.2723 5.13503 43.2989 5.13449C43.3186 5.13409 43.3373 5.13371 43.354 5.13371C44.524 5.13371 45.4708 4.18687 45.4708 3.01686C45.4708 1.84684 44.524 0.9 43.354 0.9Z" fill="black" stroke="black" stroke-width="0.2" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
BIN
public/images/icons8-wand.gif
Normal file
|
After Width: | Height: | Size: 31 KiB |
BIN
public/og-images/best-practices/api-security.png
Normal file
|
After Width: | Height: | Size: 374 KiB |
BIN
public/og-images/best-practices/aws.png
Normal file
|
After Width: | Height: | Size: 327 KiB |
BIN
public/og-images/best-practices/backend-performance.png
Normal file
|
After Width: | Height: | Size: 305 KiB |
BIN
public/og-images/best-practices/code-review.png
Normal file
|
After Width: | Height: | Size: 100 KiB |
BIN
public/og-images/best-practices/frontend-performance.png
Normal file
|
After Width: | Height: | Size: 384 KiB |
BIN
public/og-images/guides/asymptotic-notation.png
Normal file
|
After Width: | Height: | Size: 89 KiB |
|
After Width: | Height: | Size: 98 KiB |
BIN
public/og-images/guides/backend-developer-skills.png
Normal file
|
After Width: | Height: | Size: 114 KiB |
BIN
public/og-images/guides/backend-developer-tools.png
Normal file
|
After Width: | Height: | Size: 113 KiB |
BIN
public/og-images/guides/backend-languages.png
Normal file
|
After Width: | Height: | Size: 124 KiB |
BIN
public/og-images/guides/basic-authentication.png
Normal file
|
After Width: | Height: | Size: 86 KiB |
BIN
public/og-images/guides/basics-of-authentication.png
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
public/og-images/guides/big-o-notation.png
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
public/og-images/guides/character-encodings.png
Normal file
|
After Width: | Height: | Size: 88 KiB |
BIN
public/og-images/guides/ci-cd.png
Normal file
|
After Width: | Height: | Size: 86 KiB |
|
After Width: | Height: | Size: 90 KiB |
BIN
public/og-images/guides/design-patterns-for-humans.png
Normal file
|
After Width: | Height: | Size: 93 KiB |
BIN
public/og-images/guides/dhcp-in-one-picture.png
Normal file
|
After Width: | Height: | Size: 83 KiB |
BIN
public/og-images/guides/dns-in-one-picture.png
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
public/og-images/guides/free-resources-to-learn-llms.png
Normal file
|
After Width: | Height: | Size: 89 KiB |
BIN
public/og-images/guides/history-of-javascript.png
Normal file
|
After Width: | Height: | Size: 88 KiB |
BIN
public/og-images/guides/how-to-setup-a-jump-server.png
Normal file
|
After Width: | Height: | Size: 95 KiB |
BIN
public/og-images/guides/http-basic-authentication.png
Normal file
|
After Width: | Height: | Size: 92 KiB |
BIN
public/og-images/guides/http-caching.png
Normal file
|
After Width: | Height: | Size: 76 KiB |
BIN
public/og-images/guides/introduction-to-llms.png
Normal file
|
After Width: | Height: | Size: 82 KiB |
BIN
public/og-images/guides/journey-to-http2.png
Normal file
|
After Width: | Height: | Size: 82 KiB |
BIN
public/og-images/guides/jwt-authentication.png
Normal file
|
After Width: | Height: | Size: 85 KiB |
BIN
public/og-images/guides/levels-of-seniority.png
Normal file
|
After Width: | Height: | Size: 83 KiB |
BIN
public/og-images/guides/oauth.png
Normal file
|
After Width: | Height: | Size: 86 KiB |
BIN
public/og-images/guides/proxy-servers.png
Normal file
|
After Width: | Height: | Size: 81 KiB |
BIN
public/og-images/guides/random-numbers.png
Normal file
|
After Width: | Height: | Size: 92 KiB |
BIN
public/og-images/guides/scaling-databases.png
Normal file
|
After Width: | Height: | Size: 85 KiB |
BIN
public/og-images/guides/session-authentication.png
Normal file
|
After Width: | Height: | Size: 97 KiB |
BIN
public/og-images/guides/session-based-authentication.png
Normal file
|
After Width: | Height: | Size: 97 KiB |
|
After Width: | Height: | Size: 96 KiB |
BIN
public/og-images/guides/single-command-database-setup.png
Normal file
|
After Width: | Height: | Size: 102 KiB |
BIN
public/og-images/guides/ssl-tls-https-ssh.png
Normal file
|
After Width: | Height: | Size: 83 KiB |
BIN
public/og-images/guides/sso.png
Normal file
|
After Width: | Height: | Size: 90 KiB |
BIN
public/og-images/guides/token-authentication.png
Normal file
|
After Width: | Height: | Size: 94 KiB |
BIN
public/og-images/guides/torrent-client.png
Normal file
|
After Width: | Height: | Size: 81 KiB |
BIN
public/og-images/guides/unfamiliar-codebase.png
Normal file
|
After Width: | Height: | Size: 82 KiB |
BIN
public/og-images/guides/what-are-web-vitals.png
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
public/og-images/guides/what-is-internet.png
Normal file
|
After Width: | Height: | Size: 94 KiB |
BIN
public/og-images/guides/what-is-sli-slo-sla.png
Normal file
|
After Width: | Height: | Size: 88 KiB |
|
After Width: | Height: | Size: 88 KiB |
BIN
public/og-images/roadmaps/ai-data-scientist.png
Normal file
|
After Width: | Height: | Size: 122 KiB |
BIN
public/og-images/roadmaps/android.png
Normal file
|
After Width: | Height: | Size: 316 KiB |
BIN
public/og-images/roadmaps/angular.png
Normal file
|
After Width: | Height: | Size: 294 KiB |
BIN
public/og-images/roadmaps/aspnet-core.png
Normal file
|
After Width: | Height: | Size: 485 KiB |
BIN
public/og-images/roadmaps/aws.png
Normal file
|
After Width: | Height: | Size: 409 KiB |
BIN
public/og-images/roadmaps/backend.png
Normal file
|
After Width: | Height: | Size: 461 KiB |
BIN
public/og-images/roadmaps/blockchain.png
Normal file
|
After Width: | Height: | Size: 501 KiB |
BIN
public/og-images/roadmaps/code-review.png
Normal file
|
After Width: | Height: | Size: 108 KiB |
BIN
public/og-images/roadmaps/computer-science.png
Normal file
|
After Width: | Height: | Size: 404 KiB |
BIN
public/og-images/roadmaps/cpp.png
Normal file
|
After Width: | Height: | Size: 393 KiB |
BIN
public/og-images/roadmaps/cyber-security.png
Normal file
|
After Width: | Height: | Size: 514 KiB |
BIN
public/og-images/roadmaps/data-analyst.png
Normal file
|
After Width: | Height: | Size: 293 KiB |
BIN
public/og-images/roadmaps/datastructures-and-algorithms.png
Normal file
|
After Width: | Height: | Size: 132 KiB |
BIN
public/og-images/roadmaps/design-system.png
Normal file
|
After Width: | Height: | Size: 484 KiB |
BIN
public/og-images/roadmaps/devops.png
Normal file
|
After Width: | Height: | Size: 437 KiB |
BIN
public/og-images/roadmaps/docker.png
Normal file
|
After Width: | Height: | Size: 442 KiB |
BIN
public/og-images/roadmaps/flutter.png
Normal file
|
After Width: | Height: | Size: 438 KiB |
BIN
public/og-images/roadmaps/frontend.png
Normal file
|
After Width: | Height: | Size: 314 KiB |
BIN
public/og-images/roadmaps/full-stack.png
Normal file
|
After Width: | Height: | Size: 345 KiB |
BIN
public/og-images/roadmaps/game-developer.png
Normal file
|
After Width: | Height: | Size: 372 KiB |
BIN
public/og-images/roadmaps/golang.png
Normal file
|
After Width: | Height: | Size: 285 KiB |
BIN
public/og-images/roadmaps/graphql.png
Normal file
|
After Width: | Height: | Size: 421 KiB |
BIN
public/og-images/roadmaps/java.png
Normal file
|
After Width: | Height: | Size: 328 KiB |
BIN
public/og-images/roadmaps/javascript.png
Normal file
|
After Width: | Height: | Size: 528 KiB |
BIN
public/og-images/roadmaps/kubernetes.png
Normal file
|
After Width: | Height: | Size: 442 KiB |
BIN
public/og-images/roadmaps/mlops.png
Normal file
|
After Width: | Height: | Size: 374 KiB |
BIN
public/og-images/roadmaps/mongodb.png
Normal file
|
After Width: | Height: | Size: 439 KiB |
BIN
public/og-images/roadmaps/nodejs.png
Normal file
|
After Width: | Height: | Size: 425 KiB |
BIN
public/og-images/roadmaps/postgresql-dba.png
Normal file
|
After Width: | Height: | Size: 111 KiB |
BIN
public/og-images/roadmaps/prompt-engineering.png
Normal file
|
After Width: | Height: | Size: 115 KiB |
BIN
public/og-images/roadmaps/python.png
Normal file
|
After Width: | Height: | Size: 423 KiB |
BIN
public/og-images/roadmaps/qa.png
Normal file
|
After Width: | Height: | Size: 438 KiB |
BIN
public/og-images/roadmaps/react-native.png
Normal file
|
After Width: | Height: | Size: 114 KiB |
BIN
public/og-images/roadmaps/react.png
Normal file
|
After Width: | Height: | Size: 387 KiB |
BIN
public/og-images/roadmaps/rust.png
Normal file
|
After Width: | Height: | Size: 397 KiB |
BIN
public/og-images/roadmaps/server-side-game-developer.png
Normal file
|
After Width: | Height: | Size: 126 KiB |
BIN
public/og-images/roadmaps/software-architect.png
Normal file
|
After Width: | Height: | Size: 484 KiB |
BIN
public/og-images/roadmaps/software-design-architecture.png
Normal file
|
After Width: | Height: | Size: 510 KiB |
BIN
public/og-images/roadmaps/spring-boot.png
Normal file
|
After Width: | Height: | Size: 114 KiB |
BIN
public/og-images/roadmaps/sql.png
Normal file
|
After Width: | Height: | Size: 417 KiB |
BIN
public/og-images/roadmaps/system-design.png
Normal file
|
After Width: | Height: | Size: 103 KiB |
BIN
public/og-images/roadmaps/technical-writer.png
Normal file
|
After Width: | Height: | Size: 391 KiB |
BIN
public/og-images/roadmaps/typescript.png
Normal file
|
After Width: | Height: | Size: 446 KiB |
BIN
public/og-images/roadmaps/ux-design.png
Normal file
|
After Width: | Height: | Size: 428 KiB |
BIN
public/og-images/roadmaps/vue.png
Normal file
|
After Width: | Height: | Size: 341 KiB |