@networkpro/blog 1.0.8 → 1.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/CNAME +1 -0
  2. package/LICENSE.md +265 -0
  3. package/MKDOCS.md +20 -0
  4. package/README.md +8 -46
  5. package/assets/consulting-terms.pdf +0 -0
  6. package/assets/license/CC-BY-4.0-rdfa.xml +741 -0
  7. package/assets/license/CC-BY-4.0.xml +25 -0
  8. package/assets/license/COPYING-rdfa.xml +1187 -0
  9. package/assets/license/COPYING.odt +0 -0
  10. package/assets/linksheet.json +8 -0
  11. package/assets/pgp/contact.vcf +13 -0
  12. package/assets/pgp/contact@s.neteng.pro.aexpk +17 -0
  13. package/assets/pgp/contact@s.neteng.pro.asc +17 -0
  14. package/assets/pgp/github@sl.neteng.cc.aexpk +29 -0
  15. package/assets/pgp/github@sl.neteng.cc.asc +29 -0
  16. package/assets/pgp/support@neteng.pro.aexpk +47 -0
  17. package/assets/pgp/support@neteng.pro.asc +47 -0
  18. package/cspell.json +38 -0
  19. package/docs/LICENSE.md +296 -0
  20. package/docs/PRIVACY.md +212 -0
  21. package/docs/README.md +115 -0
  22. package/docs/TERMS-COND.md +277 -0
  23. package/docs/TERMS-USE.md +212 -0
  24. package/docs/license/CC-BY-4.0.html +1235 -0
  25. package/docs/license/CC-BY-4.0.md +367 -0
  26. package/docs/license/CC-BY-4.0.txt +156 -0
  27. package/docs/license/COPYING.html +1413 -0
  28. package/docs/license/COPYING.md +611 -0
  29. package/docs/license/COPYING.txt +232 -0
  30. package/docs_raw/contributing.md +166 -0
  31. package/docs_raw/img/heliboard-promo.png +0 -0
  32. package/docs_raw/img/heliboard.png +0 -0
  33. package/docs_raw/img/msauth-promo.png +0 -0
  34. package/docs_raw/index.md +18 -0
  35. package/docs_raw/posts/betterweb.md +59 -0
  36. package/docs_raw/posts/heliboard.md +50 -0
  37. package/docs_raw/posts/live.md +83 -0
  38. package/docs_raw/posts/moved.md +74 -0
  39. package/docs_raw/posts/msauth.md +51 -0
  40. package/docs_raw/posts/pwa.md +65 -0
  41. package/docs_raw/posts/secure-secure-shell.md +562 -0
  42. package/docs_raw/posts/weblive.md +63 -0
  43. package/docs_raw/sitemap.xml +83 -0
  44. package/{styles → docs_raw/styles}/default.css +6 -42
  45. package/{styles → docs_raw/styles}/normalize.css +5 -2
  46. package/{styles → docs_raw/styles}/style.css +5 -6
  47. package/docs_raw/tags.md +12 -0
  48. package/eslint.config.mjs +80 -0
  49. package/mkdocs.yml +113 -0
  50. package/package.json +10 -9
  51. package/postcss.config.mjs +5 -0
  52. package/ref/README.md +56 -0
  53. package/ref/help.md +17 -0
  54. package/stylelint.config.js +109 -0
  55. package/2015/01/04/secure-secure-shell/index.html +0 -1552
  56. package/2025/04/30/were-live/index.html +0 -1220
  57. package/2025/05/11/the-network-pro-blog-has-moved/index.html +0 -1202
  58. package/2025/05/15/building-a-better-web-experience/index.html +0 -1200
  59. package/2025/05/16/progressive-web-app-is-live/index.html +0 -1234
  60. package/2025/05/26/welcome-to-the-future-of-network-pro/index.html +0 -1202
  61. package/404.html +0 -970
  62. package/archive/2015/index.html +0 -1141
  63. package/archive/2025/index.html +0 -1379
  64. package/assets/external/avatars.githubusercontent.com/u/170266279.png +0 -0
  65. package/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js +0 -2607
  66. package/assets/images/favicon.png +0 -0
  67. package/assets/javascripts/bundle.13a4f30d.min.js +0 -16
  68. package/assets/javascripts/bundle.13a4f30d.min.js.map +0 -7
  69. package/assets/javascripts/lunr/min/lunr.ar.min.js +0 -1
  70. package/assets/javascripts/lunr/min/lunr.da.min.js +0 -18
  71. package/assets/javascripts/lunr/min/lunr.de.min.js +0 -18
  72. package/assets/javascripts/lunr/min/lunr.du.min.js +0 -18
  73. package/assets/javascripts/lunr/min/lunr.el.min.js +0 -1
  74. package/assets/javascripts/lunr/min/lunr.es.min.js +0 -18
  75. package/assets/javascripts/lunr/min/lunr.fi.min.js +0 -18
  76. package/assets/javascripts/lunr/min/lunr.fr.min.js +0 -18
  77. package/assets/javascripts/lunr/min/lunr.he.min.js +0 -1
  78. package/assets/javascripts/lunr/min/lunr.hi.min.js +0 -1
  79. package/assets/javascripts/lunr/min/lunr.hu.min.js +0 -18
  80. package/assets/javascripts/lunr/min/lunr.hy.min.js +0 -1
  81. package/assets/javascripts/lunr/min/lunr.it.min.js +0 -18
  82. package/assets/javascripts/lunr/min/lunr.ja.min.js +0 -1
  83. package/assets/javascripts/lunr/min/lunr.jp.min.js +0 -1
  84. package/assets/javascripts/lunr/min/lunr.kn.min.js +0 -1
  85. package/assets/javascripts/lunr/min/lunr.ko.min.js +0 -1
  86. package/assets/javascripts/lunr/min/lunr.multi.min.js +0 -1
  87. package/assets/javascripts/lunr/min/lunr.nl.min.js +0 -18
  88. package/assets/javascripts/lunr/min/lunr.no.min.js +0 -18
  89. package/assets/javascripts/lunr/min/lunr.pt.min.js +0 -18
  90. package/assets/javascripts/lunr/min/lunr.ro.min.js +0 -18
  91. package/assets/javascripts/lunr/min/lunr.ru.min.js +0 -18
  92. package/assets/javascripts/lunr/min/lunr.sa.min.js +0 -1
  93. package/assets/javascripts/lunr/min/lunr.stemmer.support.min.js +0 -1
  94. package/assets/javascripts/lunr/min/lunr.sv.min.js +0 -18
  95. package/assets/javascripts/lunr/min/lunr.ta.min.js +0 -1
  96. package/assets/javascripts/lunr/min/lunr.te.min.js +0 -1
  97. package/assets/javascripts/lunr/min/lunr.th.min.js +0 -1
  98. package/assets/javascripts/lunr/min/lunr.tr.min.js +0 -18
  99. package/assets/javascripts/lunr/min/lunr.vi.min.js +0 -1
  100. package/assets/javascripts/lunr/min/lunr.zh.min.js +0 -1
  101. package/assets/javascripts/lunr/tinyseg.js +0 -206
  102. package/assets/javascripts/lunr/wordcut.js +0 -6708
  103. package/assets/javascripts/workers/search.d50fe291.min.js +0 -42
  104. package/assets/javascripts/workers/search.d50fe291.min.js.map +0 -7
  105. package/assets/stylesheets/main.342714a4.min.css +0 -1
  106. package/assets/stylesheets/main.342714a4.min.css.map +0 -1
  107. package/assets/stylesheets/palette.06af60db.min.css +0 -1
  108. package/assets/stylesheets/palette.06af60db.min.css.map +0 -1
  109. package/category/security/index.html +0 -1141
  110. package/contributing/index.html +0 -1306
  111. package/feed_json_created.json +0 -1
  112. package/feed_json_updated.json +0 -1
  113. package/feed_rss_created.xml +0 -1
  114. package/feed_rss_updated.xml +0 -1
  115. package/index.html +0 -1461
  116. package/search/search_index.json +0 -1
  117. package/sitemap.xml +0 -51
  118. package/sitemap.xml.gz +0 -0
  119. package/tags/index.html +0 -1450
  120. /package/assets/{external/raw.githubusercontent.com/netwk-pro/netwk-pro.github.io/refs/heads/master/assets/nsa-happy-dance.png → nsa-happy-dance.png} +0 -0
  121. /package/{ext → docs_raw/ext}/__init__.py +0 -0
  122. /package/{ext → docs_raw/ext}/slugs.py +0 -0
  123. /package/{favicon.ico → docs_raw/favicon.ico} +0 -0
  124. /package/{favicon.svg → docs_raw/favicon.svg} +0 -0
  125. /package/{fontawesome → docs_raw/fontawesome}/LICENSE.txt +0 -0
  126. /package/{fontawesome → docs_raw/fontawesome}/brands/facebook.svg +0 -0
  127. /package/{fontawesome → docs_raw/fontawesome}/brands/instagram.svg +0 -0
  128. /package/{fontawesome → docs_raw/fontawesome}/brands/linkedin.svg +0 -0
  129. /package/{fontawesome → docs_raw/fontawesome}/brands/mastodon.svg +0 -0
  130. /package/{fontawesome → docs_raw/fontawesome}/solid/at.svg +0 -0
  131. /package/{hooks → docs_raw/hooks}/socialmedia.py +0 -0
  132. /package/{icon-180x180.png → docs_raw/icon-180x180.png} +0 -0
  133. /package/{icon-192x192.png → docs_raw/icon-192x192.png} +0 -0
  134. /package/{icon-512x512-maskable.png → docs_raw/icon-512x512-maskable.png} +0 -0
  135. /package/{icon-512x512.png → docs_raw/icon-512x512.png} +0 -0
  136. /package/{icon-splash.png → docs_raw/icon-splash.png} +0 -0
  137. /package/{img → docs_raw/img}/acode.png +0 -0
  138. /package/{img → docs_raw/img}/blog-move.png +0 -0
  139. /package/{img → docs_raw/img}/favicon.png +0 -0
  140. /package/{img → docs_raw/img}/linksheet.png +0 -0
  141. /package/{img → docs_raw/img}/logo.png +0 -0
  142. /package/{img → docs_raw/img}/pmx.png +0 -0
  143. /package/{img → docs_raw/img}/tosdr.png +0 -0
  144. /package/{img → docs_raw/img}/urlcheck.png +0 -0
  145. /package/{manifest.json → docs_raw/manifest.json} +0 -0
  146. /package/{robots.txt → docs_raw/robots.txt} +0 -0
  147. /package/{styles → docs_raw/styles}/global.css +0 -0
@@ -0,0 +1,83 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ sitemap.xml
4
+
5
+ SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
+ This file is part of Network Pro
7
+ -->
8
+
9
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
10
+
11
+ <url>
12
+
13
+ <loc>https://blog.netwk.pro</loc>
14
+
15
+ <lastmod>2025-05-11</lastmod>
16
+
17
+ <changefreq>weekly</changefreq>
18
+
19
+ <priority>1.0</priority>
20
+
21
+ </url>
22
+
23
+ <url>
24
+
25
+ <loc>https://blog.netwk.pro/2025/05/11/the-network-pro-blog-has-moved/</loc>
26
+
27
+ <lastmod>2025-05-11</lastmod>
28
+
29
+ <changefreq>monthly</changefreq>
30
+
31
+ <priority>0.8</priority>
32
+
33
+ </url>
34
+
35
+ <url>
36
+
37
+ <loc>https://blog.netwk.pro/2025/04/30/our-blog-is-live/</loc>
38
+
39
+ <lastmod>2025-05-11</lastmod>
40
+
41
+ <changefreq>monthly</changefreq>
42
+
43
+ <priority>0.8</priority>
44
+
45
+ </url>
46
+
47
+ <url>
48
+
49
+ <loc>https://blog.netwk.pro/2015/01/04/secure-secure-shell/</loc>
50
+
51
+ <lastmod>2025-05-11</lastmod>
52
+
53
+ <changefreq>monthly</changefreq>
54
+
55
+ <priority>0.7</priority>
56
+
57
+ </url>
58
+
59
+ <url>
60
+
61
+ <loc>https://blog.netwk.pro/tags</loc>
62
+
63
+ <lastmod>2025-05-11</lastmod>
64
+
65
+ <changefreq>weekly</changefreq>
66
+
67
+ <priority>0.6</priority>
68
+
69
+ </url>
70
+
71
+ <url>
72
+
73
+ <loc>https://blog.netwk.pro/contributing</loc>
74
+
75
+ <lastmod>2025-05-11</lastmod>
76
+
77
+ <changefreq>monthly</changefreq>
78
+
79
+ <priority>0.5</priority>
80
+
81
+ </url>
82
+
83
+ </urlset>
@@ -1,48 +1,10 @@
1
1
  /*! ==========================================================================
2
+ Copyright © 2025 Network Pro Strategies (Network Pro)
2
3
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
3
4
  This file is part of Network Pro.
4
5
  =========================================================================== */
5
6
 
6
- /*
7
- Copyright © 2025 Network Pro Strategies (Network Pro)
8
-
9
- ---
10
-
11
- I. Creative Commons Attribution 4.0 International
12
-
13
- Network Pro (the "Licensed Material") is licensed under Creative Commons Attribution 4.0 International ("CC BY 4.0"). To view a copy of this license, visit https://creativecommons.org/licenses/by/4.0/.
14
-
15
- Per the terms of the License, you are free to distribute, remix, adapt, and build upon the Licensed Material for any purpose, even commercially. You must give appropriate credit, provide a link to the License, and indicate if changes were made.
16
-
17
- The Licensor offers the Licensed Material as-is and as-available, and makes no representations or warranties of any kind concerning the Licensed Material, whether express, implied, statutory, or other. This includes, without limitation, warranties of title, merchantability, fitness for a particular purpose, non-infringement, absence of latent or other defects, accuracy, or the presence or absence of errors, whether or not known or discoverable.
18
-
19
- Permissions beyond the scope of this License—or instead of those permitted by this License—may be available as further defined within this document.
20
-
21
- SPDX Reference: https://spdx.org/licenses/CC-BY-4.0.html
22
- Canonical URL: https://creativecommons.org/licenses/by/4.0/
23
-
24
- ---
25
-
26
- II. GNU General Public License
27
-
28
- Network Pro is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License ("GNU GPL") as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
29
-
30
- This material is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
31
- FITNESS FOR A PARTICULAR PURPOSE.
32
-
33
- See the GNU General Public License for more details.
34
-
35
- SPDX Reference: https://spdx.org/licenses/GPL-3.0-or-later.html
36
- Canonical URL: https://www.gnu.org/licenses/gpl-3.0.html
37
-
38
- ---
39
-
40
- Author: Scott Lopez
41
- Email: <contact@neteng.pro>
42
- Web: <https://bio.neteng.pro>
43
- */
44
-
45
- /*! ==========================================================================
7
+ /* ===========================================================================
46
8
  Document Spacing
47
9
  =========================================================================== */
48
10
 
@@ -75,7 +37,7 @@ footer .container {
75
37
  max-width: 1200px;
76
38
  }
77
39
 
78
- /*! ==========================================================================
40
+ /* ===========================================================================
79
41
  Responsive Tables
80
42
  =========================================================================== */
81
43
 
@@ -363,7 +325,7 @@ footer .container {
363
325
  }
364
326
  }
365
327
 
366
- /*! ==========================================================================
328
+ /* ===========================================================================
367
329
  Custom CSS
368
330
  =========================================================================== */
369
331
 
@@ -507,3 +469,5 @@ footer .container {
507
469
  .spacer {
508
470
  margin: 2rem 0;
509
471
  }
472
+
473
+ /* cspell:ignore bolditalic tcell bquote prewrap imgtext */
@@ -1,9 +1,10 @@
1
- /*! ==========================================================================
1
+ /* ===========================================================================
2
+ Copyright © 2025 Network Pro Strategies (Network Pro)
2
3
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
3
4
  This file is part of Network Pro.
4
5
  =========================================================================== */
5
6
 
6
- /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
7
+ /*! Modified from normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
7
8
 
8
9
  /* Document
9
10
  ========================================================================== */
@@ -362,3 +363,5 @@ template {
362
363
  [hidden] {
363
364
  display: none;
364
365
  } */
366
+
367
+ /* cspell:ignore necolas */
@@ -1,13 +1,10 @@
1
- /* markdownlint-disable MD037, MD041 */
2
-
3
- /*! ==========================================================================
1
+ /* ==========================================================================
2
+ Copyright © 2025 Network Pro Strategies (Network Pro)
4
3
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
4
  This file is part of Network Pro.
6
5
  =========================================================================== */
7
6
 
8
- /* markdownlint-enable MD037, MD041 */
9
-
10
- /*! HTML5 Boilerplate v9.0.1 | MIT License | https://html5boilerplate.com/ */
7
+ /*! Modified from HTML5 Boilerplate v9.0.1 | MIT License | https://html5boilerplate.com/ */
11
8
 
12
9
  /* main.css 3.0.0 | MIT License | https://github.com/h5bp/main.css#readme */
13
10
 
@@ -312,3 +309,5 @@ a:visited:hover {
312
309
  page-break-after: avoid;
313
310
  }
314
311
  }
312
+
313
+ /* cspell:ignore camen textareas */
@@ -0,0 +1,12 @@
1
+ ---
2
+ title: Tag Index
3
+ ---
4
+
5
+ <sup>[SPDX-License-Identifier](https://spdx.dev/learn/handling-license-info/):
6
+ `CC-BY-4.0 OR GPL-3.0-or-later`</sup>
7
+
8
+ # Tags
9
+
10
+ This page lists all of the tags used in the blog. Click on a tag to see the related articles and posts.
11
+
12
+ <!-- material/tags -->
@@ -0,0 +1,80 @@
1
+ /* ==========================================================================
2
+ eslint.config.mjs
3
+
4
+ SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
+ This file is part of Network Pro.
6
+ ========================================================================== */
7
+
8
+ import js from "@eslint/js"; // Provides ESLint core rules and recommended config
9
+ import json from "@eslint/json";
10
+ import eslintConfigPrettier from "eslint-config-prettier"; // Prettier config to disable conflicting ESLint rules
11
+ import { defineConfig } from "eslint/config";
12
+ import globals from "globals";
13
+
14
+ const GLOBALS = {
15
+ ...globals.browser,
16
+ ...globals.node,
17
+ self: "readonly",
18
+ location: "readonly",
19
+ indexedDB: "readonly",
20
+ };
21
+
22
+ // Define general ESLint rules (non-Svelte-specific)
23
+ const ESLINT_RULES = {
24
+ indent: "off", // Turn off the 'indent' rule, managed by Prettier
25
+ quotes: "off", // Turn off the 'quotes' rule, managed by Prettier
26
+ semi: "off", // Turn off the 'semi' rule, managed by Prettier
27
+ };
28
+
29
+ export default defineConfig([
30
+ // Global ignores
31
+ {
32
+ ignores: [
33
+ ".*", // Hidden files
34
+ "*.xml", // XML files
35
+ "**/.cache/**", // Cache directories
36
+ "**/.vscode/**", // VSCode-specific files
37
+ "**/coverage/**", // Coverage reports
38
+ "**/build/**", // Distribution files
39
+ "package.json", // NPM package manifest
40
+ "package-lock.json", // NPM lockfile
41
+ "node_modules/", // Node.js dependencies
42
+ ".vite/", // Vite-specific cache directory
43
+ "*.lock", // Lock files
44
+ ],
45
+ },
46
+
47
+ // JavaScript/Node.js configuration
48
+ {
49
+ files: ["**/*.{mjs,js}"],
50
+ plugins: { js },
51
+ languageOptions: {
52
+ globals: GLOBALS,
53
+ ecmaVersion: "latest", // Use the latest ECMAScript version
54
+ sourceType: "module",
55
+ },
56
+ extends: ["js/recommended"],
57
+ rules: {
58
+ ...js.configs.recommended.rules, // ESLint's core recommended rules (scoped)
59
+ ...eslintConfigPrettier.rules, // Prettier config to disable conflicting ESLint rules (scoped)
60
+ ...ESLINT_RULES, // Additional custom rules
61
+ "no-unused-vars": ["error", { argsIgnorePattern: "^_" }], // Ignore unused variables starting with an underscore
62
+ },
63
+ },
64
+
65
+ // JSON configuration
66
+ {
67
+ files: ["**/*.json"],
68
+ plugins: { json },
69
+ language: "json/json",
70
+ extends: ["json/recommended"],
71
+ },
72
+
73
+ // JSONC configuration
74
+ {
75
+ files: ["**/*.jsonc"],
76
+ plugins: { json },
77
+ language: "json/jsonc",
78
+ extends: ["json/recommended"],
79
+ },
80
+ ]);
package/mkdocs.yml ADDED
@@ -0,0 +1,113 @@
1
+ site_name: Network Pro™ Blog
2
+ site_url: https://blog.netwk.pro
3
+ repo_url: https://github.com/netwk-pro/netwk-pro.github.io
4
+ repo_name: GitHub
5
+ docs_dir: docs_raw
6
+ site_dir: build/
7
+
8
+ theme:
9
+ name: material
10
+ language: en
11
+ font: false
12
+ logo: /icon-512x512.png
13
+ favicon: /favicon.svg
14
+ palette:
15
+ # Palette toggle for automatic mode
16
+ - media: "(prefers-color-scheme)"
17
+ primary: amber
18
+ accent: yellow
19
+ toggle:
20
+ icon: material/brightness-auto
21
+ name: Switch to light mode
22
+ # Palette toggle for dark mode
23
+ - media: "(prefers-color-scheme: dark)"
24
+ scheme: slate
25
+ primary: amber
26
+ accent: yellow
27
+ toggle:
28
+ icon: material/brightness-4
29
+ name: Switch to system preference
30
+ # Palette toggle for light mode
31
+ - media: "(prefers-color-scheme: light)"
32
+ scheme: default
33
+ primary: amber
34
+ accent: yellow
35
+ toggle:
36
+ icon: material/brightness-7
37
+ name: Switch to dark mode
38
+ features:
39
+ - navigation.instant
40
+ - navigation.tracking
41
+ - navigation.tabs
42
+ - navigation.indexes
43
+ - toc.follow
44
+ - toc.integrate
45
+ - navigation.top
46
+ - search.suggest
47
+
48
+ extra:
49
+ base_url: /
50
+ consent:
51
+ title: Cookie Consent
52
+ description: >-
53
+ We use cookies to recognize your repeated visits and preferences, as well
54
+ as to measure the effectiveness of our documentation and whether users
55
+ find what they're searching for. With your consent, you're helping us to
56
+ make our documentation better.
57
+ cookies:
58
+ analytics:
59
+ name: Google Analytics
60
+ checked: false
61
+ github:
62
+ name: GitHub
63
+ checked: true
64
+ actions:
65
+ - reject
66
+ - accept
67
+ - manage
68
+ social:
69
+ - icon: fontawesome/brands/instagram
70
+ name: Network Pro on Instagram
71
+ link: https://instagram.com/netwk_pro/
72
+ - icon: fontawesome/brands/facebook
73
+ name: Network Pro on Facebook
74
+ link: https://facebook.com/neteng.pro/
75
+ - icon: fontawesome/brands/linkedin
76
+ name: Network Pro on LinkedIn
77
+ link: https://linkedin.com/company/netwk-pro/
78
+ - icon: fontawesome/brands/mastodon
79
+ name: Network Pro on Mastodon
80
+ link: https://noc.social/@neteng_pro/
81
+ - icon: fontawesome/solid/at
82
+ name: Contact Us
83
+ link: https://netwk.pro/contact
84
+
85
+ copyright: >
86
+ Copyright &copy; 2025 Network Pro Strategies (Network Pro&trade;) –
87
+ <a href="#__consent">Change cookie settings</a>
88
+
89
+ plugins:
90
+ - search
91
+ - meta
92
+ - privacy
93
+ - blog:
94
+ blog_toc: true
95
+ blog_dir: .
96
+ archive_date_format: MMMM yyyy
97
+ post_excerpt: required
98
+ categories: true
99
+ categories_toc: true
100
+ authors: true
101
+ - tags:
102
+ tags_file: tags.md
103
+ - rss:
104
+ match_path: "posts/.*"
105
+ date_from_meta:
106
+ as_creation: date.created
107
+ as_update: date.updated
108
+
109
+ nav:
110
+ - Home: index.md
111
+ - Tags: tags.md
112
+ - Website: https://netwk.pro
113
+ - Contributing: contributing.md
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@networkpro/blog",
3
- "version": "1.0.8",
3
+ "version": "1.0.10",
4
4
  "description": "The official blog of Network Pro Strategies (Network Pro).",
5
5
  "keywords": [
6
6
  "security",
@@ -43,22 +43,23 @@
43
43
  "lint:fix": "eslint --ext .mjs,.js,.json,.jsonc --config eslint.config.mjs . --fix",
44
44
  "lint:md": "npx markdownlint-cli2 \"**/*.{md,markdown}\" \"#node_modules/**\" \"#build/**\"",
45
45
  "lint:css": "npx stylelint \"docs_raw/styles/*.css\" --ignore-path .stylelintignore",
46
- "lint:all": "npm run lint && npm run lint:md && npm run lint:css && npm run format"
46
+ "lint:all": "npm run lint && npm run lint:md && npm run lint:css && npm run format",
47
+ "upgrade": "npx npm-check-updates -u"
47
48
  },
48
49
  "devDependencies": {
49
- "@eslint/js": "^9.26.0",
50
+ "@eslint/js": "^9.27.0",
50
51
  "@eslint/json": "^0.12.0",
51
52
  "autoprefixer": "^10.4.21",
52
- "browserslist": "^4.24.5",
53
- "eslint": "^9.26.0",
53
+ "browserslist": "^4.25.0",
54
+ "eslint": "^9.27.0",
54
55
  "eslint-config-prettier": "^10.1.5",
55
- "globals": "^16.1.0",
56
+ "globals": "^16.2.0",
56
57
  "markdownlint": "^0.38.0",
57
- "markdownlint-cli2": "^0.17.2",
58
- "postcss": "^8.5.3",
58
+ "markdownlint-cli2": "^0.18.1",
59
+ "postcss": "^8.5.4",
59
60
  "postcss-html": "^1.8.0",
60
61
  "prettier": "3.5.3",
61
- "stylelint": "^16.19.1",
62
+ "stylelint": "^16.20.0",
62
63
  "stylelint-config-html": "^1.1.0",
63
64
  "stylelint-config-recommended": "^16.0.0",
64
65
  "stylelint-order": "^7.0.0"
@@ -0,0 +1,5 @@
1
+ export default {
2
+ plugins: {
3
+ autoprefixer: {}, // Enables autoprefixer and uses Browserslist configuration
4
+ },
5
+ };
package/ref/README.md ADDED
@@ -0,0 +1,56 @@
1
+ # eslint-disable markdown/fenced-code-language
2
+
3
+ # A Material for Mkdocs Blog Template
4
+
5
+ The purpose of the template in this repository is to give you a starting point
6
+ for setting up a blog that makes use of features that Material for MkDocs
7
+ provides and of selected integrations with other plugins that are of specific
8
+ relevance to running a blog.
9
+
10
+ It reflects the results you get by going through the [blog tutorials] in the
11
+ documentation.
12
+
13
+ [blog tutorials]: https://squidfunk.github.io/mkdocs-material/tutorials#blogs
14
+
15
+ ## Requirements
16
+
17
+ The to use the all the features this template uses, you need the [Insiders
18
+ Edition] of Material for MkDocs but it should be easy enough to strip it down so
19
+ that it works with the public version.
20
+
21
+ [Insiders Edition]: https://squidfunk.github.io/mkdocs-material/insiders/
22
+
23
+ You will also need to install the [mkdocs-rss-plugin].
24
+
25
+ [mkdocs-rss-plugin]: https://github.com/guts/mkdocs-rss-plugin
26
+
27
+ ## Using it
28
+
29
+ This the repository is a [template repository], so you can create as many forks
30
+ of it as you like and your repository will contain only a single commit to start
31
+ with, instead of the whole history of the template. Also, you can create a
32
+ private repository from this template (while forks inherit the visibility settings
33
+ from the original).
34
+
35
+ [template repository]: https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template
36
+
37
+ Simply hit the `Use this template` button. You can set the specifics of your new
38
+ repository from there.
39
+
40
+ ## Project layout
41
+
42
+ The following shows the layout of the files in this template. Note that you can
43
+ configure Material for MkDocs to use a different layout, this is simply the
44
+ default.
45
+
46
+ ```text
47
+ mkdocs.yml # The configuration file.
48
+ docs/
49
+ index.md # The documentation homepage.
50
+ blog/ # The directory that all blog content goes into (first blog instance)
51
+ posts/ # the place to put your posts
52
+ author/ # Author profiles
53
+ .authors.yml # Author information to be added to posts (shared betwe
54
+ ext/ # Directory that contains code for the custom slugs
55
+ hooks/ # Directory for a hook that adds social media share buttons
56
+ ```
package/ref/help.md ADDED
@@ -0,0 +1,17 @@
1
+ # Welcome to MkDocs
2
+
3
+ For full documentation visit [mkdocs.org](https://www.mkdocs.org).
4
+
5
+ ## Commands
6
+
7
+ - `mkdocs new [dir-name]` - Create a new project.
8
+ - `mkdocs serve` - Start the live-reloading docs server.
9
+ - `mkdocs build` - Build the documentation site.
10
+ - `mkdocs -h` - Print help message and exit.
11
+
12
+ ## Project layout
13
+
14
+ mkdocs.yml # The configuration file.
15
+ docs/
16
+ index.md # The documentation homepage.
17
+ ... # Other markdown pages, images and other files.
@@ -0,0 +1,109 @@
1
+ /* =========================================================================
2
+ stylelint.config.js
3
+
4
+ SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
+ This file is part of Network Pro.
6
+ ========================================================================= */
7
+
8
+ /** @type {import('stylelint').Config} */
9
+ export default {
10
+ extends: [
11
+ "stylelint-config-recommended", // Base recommended config
12
+ "stylelint-config-html/html", // For linting HTML files
13
+ "stylelint-config-html", // Added from provided config for linting HTML
14
+ ],
15
+ plugins: ["stylelint-order"], // Add stylelint-order plugin
16
+ overrides: [
17
+ {
18
+ files: ["**/*.html"], // Use postcss-html for HTML files
19
+ customSyntax: "postcss-html",
20
+ },
21
+ {
22
+ files: ["**/*.css"], // Ensure CSS-specific configurations
23
+ },
24
+ ],
25
+ rules: {
26
+ "property-no-vendor-prefix": null, // Allow vendor prefixes
27
+ "selector-no-vendor-prefix": null,
28
+ "selector-pseudo-element-colon-notation": [
29
+ "double",
30
+ {
31
+ severity: "warning",
32
+ },
33
+ ],
34
+ "media-feature-name-no-vendor-prefix": null,
35
+ "font-family-no-duplicate-names": [
36
+ true,
37
+ {
38
+ ignoreFontFamilyNames: ["monospace"],
39
+ },
40
+ ],
41
+ "selector-class-pattern": [
42
+ "^(?!fa-).*$", // Disallow classes starting with "fa-"
43
+ {
44
+ message:
45
+ "Class names must not start with 'fa-' (FontAwesome classes are ignored)",
46
+ },
47
+ ],
48
+ "order/properties-order": [
49
+ [
50
+ {
51
+ groupName: "Positioning",
52
+ properties: ["position", "top", "right", "bottom", "left", "z-index"],
53
+ },
54
+ {
55
+ groupName: "Box Model",
56
+ properties: [
57
+ "display",
58
+ "flex",
59
+ "flex-grow",
60
+ "flex-shrink",
61
+ "flex-basis",
62
+ "justify-content",
63
+ "align-items",
64
+ "align-self",
65
+ "width",
66
+ "height",
67
+ "padding",
68
+ "margin",
69
+ "border",
70
+ "box-shadow",
71
+ ],
72
+ },
73
+ {
74
+ groupName: "Typography",
75
+ properties: [
76
+ "font",
77
+ "font-size",
78
+ "font-weight",
79
+ "line-height",
80
+ "letter-spacing",
81
+ "color",
82
+ "text-align",
83
+ ],
84
+ },
85
+ {
86
+ groupName: "Visual",
87
+ properties: [
88
+ "background",
89
+ "background-color",
90
+ "background-image",
91
+ "opacity",
92
+ "visibility",
93
+ ],
94
+ },
95
+ {
96
+ groupName: "Animation & Transform",
97
+ properties: ["transition", "transform", "animation"],
98
+ },
99
+ ],
100
+ {
101
+ unspecified: "bottomAlphabetical", // Place unspecified properties alphabetically at the bottom
102
+ },
103
+ ],
104
+ },
105
+ reportDescriptionlessDisables: false, // Do not report disables without descriptions
106
+ reportInvalidScopeDisables: true, // Report invalid scope disables
107
+ reportNeedlessDisables: true, // Report unnecessary disables
108
+ ignoreFiles: ["public/**"], // Ignore the build directory
109
+ };