@networkpro/blog 1.5.9 → 1.6.0

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.
@@ -27,7 +27,7 @@ jobs:
27
27
 
28
28
  steps:
29
29
  - name: Checkout master branch
30
- uses: actions/checkout@v5
30
+ uses: actions/checkout@v6
31
31
  with:
32
32
  ref: master
33
33
  fetch-depth: 0 # Required to push to another branch
@@ -18,7 +18,7 @@ jobs:
18
18
 
19
19
  steps:
20
20
  - name: 'Checkout Repository'
21
- uses: actions/checkout@v5
21
+ uses: actions/checkout@v6
22
22
 
23
23
  - name: 'Dependency Review'
24
24
  uses: actions/dependency-review-action@v4
@@ -31,7 +31,7 @@ jobs:
31
31
 
32
32
  steps:
33
33
  - name: Checkout repository
34
- uses: actions/checkout@v5
34
+ uses: actions/checkout@v6
35
35
  with:
36
36
  fetch-depth: 0
37
37
 
@@ -45,7 +45,7 @@ jobs:
45
45
  - name: Upgrade npm
46
46
  run: |
47
47
  corepack enable
48
- npm install -g npm@11.6.2
48
+ npm install -g npm@11.7.0
49
49
 
50
50
  - name: Install Node.js dependencies
51
51
  run: npm ci
@@ -73,7 +73,7 @@ jobs:
73
73
  run: git archive --format=tar.gz --output=clean-source.tar.gz HEAD
74
74
 
75
75
  - name: Upload source archive
76
- uses: actions/upload-artifact@v5
76
+ uses: actions/upload-artifact@v6
77
77
  with:
78
78
  name: clean-source
79
79
  path: clean-source.tar.gz
@@ -86,7 +86,7 @@ jobs:
86
86
 
87
87
  steps:
88
88
  - name: Download clean source archive
89
- uses: actions/download-artifact@v5
89
+ uses: actions/download-artifact@v7
90
90
  with:
91
91
  name: clean-source
92
92
  path: ./
@@ -113,7 +113,7 @@ jobs:
113
113
  - name: Upgrade npm
114
114
  run: |
115
115
  corepack enable
116
- npm install -g npm@11.6.2
116
+ npm install -g npm@11.7.0
117
117
 
118
118
  - name: Install Node.js dependencies
119
119
  run: npm ci
@@ -136,7 +136,7 @@ jobs:
136
136
 
137
137
  steps:
138
138
  - name: Download clean source archive
139
- uses: actions/download-artifact@v5
139
+ uses: actions/download-artifact@v7
140
140
  with:
141
141
  name: clean-source
142
142
  path: ./
@@ -163,7 +163,7 @@ jobs:
163
163
  - name: Upgrade npm
164
164
  run: |
165
165
  corepack enable
166
- npm install -g npm@11.6.2
166
+ npm install -g npm@11.7.0
167
167
 
168
168
  - name: Install Node.js dependencies
169
169
  run: npm ci
@@ -35,7 +35,7 @@ jobs:
35
35
 
36
36
  steps:
37
37
  - name: Checkout repository
38
- uses: actions/checkout@v5
38
+ uses: actions/checkout@v6
39
39
  with:
40
40
  fetch-depth: 0
41
41
 
@@ -49,7 +49,7 @@ jobs:
49
49
  - name: Upgrade npm
50
50
  run: |
51
51
  corepack enable
52
- npm install -g npm@11.6.2
52
+ npm install -g npm@11.7.0
53
53
 
54
54
  - name: Install Node.js dependencies
55
55
  run: npm ci
@@ -77,7 +77,7 @@ jobs:
77
77
  run: git archive --format=tar.gz --output=clean-source.tar.gz HEAD
78
78
 
79
79
  - name: Upload source archive
80
- uses: actions/upload-artifact@v5
80
+ uses: actions/upload-artifact@v6
81
81
  with:
82
82
  name: clean-source
83
83
  path: clean-source.tar.gz
@@ -90,7 +90,7 @@ jobs:
90
90
 
91
91
  steps:
92
92
  - name: Download clean source archive
93
- uses: actions/download-artifact@v5
93
+ uses: actions/download-artifact@v7
94
94
  with:
95
95
  name: clean-source
96
96
  path: ./
@@ -112,7 +112,7 @@ jobs:
112
112
  - name: Upgrade npm
113
113
  run: |
114
114
  corepack enable
115
- npm install -g npm@11.6.2
115
+ npm install -g npm@11.7.0
116
116
 
117
117
  - name: Install Node.js dependencies
118
118
  run: npm ci
@@ -135,7 +135,7 @@ jobs:
135
135
 
136
136
  steps:
137
137
  - name: Download clean source archive
138
- uses: actions/download-artifact@v5
138
+ uses: actions/download-artifact@v7
139
139
  with:
140
140
  name: clean-source
141
141
  path: ./
@@ -157,7 +157,7 @@ jobs:
157
157
  - name: Upgrade npm
158
158
  run: |
159
159
  corepack enable
160
- npm install -g npm@11.6.2
160
+ npm install -g npm@11.7.0
161
161
 
162
162
  - name: Install Node.js dependencies
163
163
  run: npm ci
package/CHANGELOG.md CHANGED
@@ -6,9 +6,9 @@
6
6
 
7
7
  All notable changes to this project will be documented in this file.
8
8
 
9
- This project attempts to follow
10
- [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), though versioning and
11
- formatting may vary.
9
+ This project follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
10
+ Version numbers use a **SemVer-inspired** `MAJOR.MINOR.PATCH` format, with
11
+ version increments reflecting both user-visible and operational impact.
12
12
 
13
13
  ---
14
14
 
@@ -16,6 +16,51 @@ formatting may vary.
16
16
 
17
17
  ---
18
18
 
19
+ ## [1.6.0] - 2025-12-19
20
+
21
+ ### Added
22
+
23
+ - Added `vercel.json` to define Vercel build configuration and security headers.
24
+ - Added Vercel as a supported deployment target for this site.
25
+ - Added `VERSIONING.md` for clarity regarding how we implement versioning.
26
+
27
+ ### Changed
28
+
29
+ - Migrated static site deployment from Netlify to Vercel.
30
+ - Converted Netlify build configuration (`netlify.toml`) to Vercel-equivalent
31
+ settings.
32
+ - Updated MkDocs build invocation to use `python -m mkdocs` for improved
33
+ compatibility in CI environments.
34
+ - Explicitly configured the build output directory as `build/`.
35
+ - Preserved existing Content Security Policy (CSP), reporting endpoints, and
36
+ security headers under Vercel.
37
+ - Updated GitHub workflows to utilize the latest versions of
38
+ `actions/checkout@v6`, `actions/upload-artifact@v6`, and
39
+ `actions/download-artifact@v7`, as well as **npm** `v11.7.0`:
40
+ - `.github/workflows/backup-branch.yml`
41
+ - `.github/workflows/dependency-review.yml`
42
+ - `.github/workflows/publish-test.yml`
43
+ - `.github/workflows/publish.yml`
44
+ - Bumped project version to `v1.6.0`.
45
+ - Updated frontend tooling dependencies:
46
+ - `@eslint/js` `^9.39.1` → `^9.39.2`
47
+ - `autoprefixer` `^10.4.22` → `^10.4.23`
48
+ - `browserslist` `^4.28.0` → `^4.28.1`
49
+ - `eslint` `^9.39.1` → `^9.39.2`
50
+ - `prettier` `3.6.2` → `3.7.4`
51
+ - `stylelint` `^16.25.0` → `^16.26.1`
52
+ - `markdownlint` `^0.39.0` → `^0.40.0`
53
+ - `markdownlint-cli2` `^0.19.0` → `^0.20.0`
54
+
55
+ ### Removed
56
+
57
+ - Removed `netlify.toml`, as Netlify is no longer the active deployment
58
+ platform.
59
+ - Removed reliance on Netlify-specific header configuration in favor of Vercel
60
+ headers.
61
+
62
+ ---
63
+
19
64
  ## [1.5.9] - 2025-11-18
20
65
 
21
66
  ### Added
@@ -516,7 +561,8 @@ formatting may vary.
516
561
 
517
562
  <!-- Link references -->
518
563
 
519
- [Unreleased]: https://github.com/netwk-pro/blog/compare/v1.5.9...HEAD
564
+ [Unreleased]: https://github.com/netwk-pro/blog/compare/v1.6.0...HEAD
565
+ [1.6.0]: https://github.com/netwk-pro/blog/releases/tag/v1.6.0
520
566
  [1.5.9]: https://github.com/netwk-pro/blog/releases/tag/v1.5.9
521
567
  [1.5.8]: https://github.com/netwk-pro/blog/releases/tag/v1.5.8
522
568
  [1.5.7]: https://github.com/netwk-pro/blog/releases/tag/v1.5.7
package/VERSIONING.md ADDED
@@ -0,0 +1,47 @@
1
+ # Versioning Policy
2
+
3
+ This project uses a **SemVer-inspired versioning scheme** based on the
4
+ `MAJOR.MINOR.PATCH` format.
5
+
6
+ Version numbers are intended to communicate the **impact of a change** rather
7
+ than strict compliance with the Semantic Versioning specification. In addition
8
+ to user-facing changes, version increments may reflect infrastructure, hosting,
9
+ or operational changes relevant to maintainers.
10
+
11
+ ## Version Number Meaning
12
+
13
+ ### MAJOR (`X.0.0`)
14
+
15
+ Incremented when changes introduce **user-visible incompatibilities**, such as:
16
+
17
+ - URL or navigation structure changes
18
+ - Removal or renaming of major sections
19
+ - Changes that break existing links or bookmarks
20
+ - Changes to access, availability, or licensing
21
+
22
+ ### MINOR (`1.X.0`)
23
+
24
+ Incremented for **backward-compatible but significant changes**, including:
25
+
26
+ - Hosting platform migrations (e.g. Netlify → Vercel)
27
+ - Build or deployment pipeline changes
28
+ - Security header or CSP delivery changes
29
+ - Changes that may affect maintainers or operators, but not readers
30
+ - New features or content additions that do not break existing usage
31
+
32
+ ### PATCH (`1.1.X`)
33
+
34
+ Incremented for **backward-compatible, low-impact changes**, such as:
35
+
36
+ - Content edits or corrections
37
+ - Dependency updates
38
+ - Tooling updates that do not alter build behavior
39
+ - Internal refactoring or cleanup
40
+
41
+ ## Notes
42
+
43
+ - Infrastructure or platform changes may be considered “breaking” from a
44
+ maintainer perspective, but do not automatically imply a MAJOR version bump.
45
+ - Version numbers are intended to communicate **impact**, not just change.
46
+ - Detailed migration or operational notes are documented in the changelog when
47
+ relevant.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@networkpro/blog",
3
- "version": "1.5.9",
3
+ "version": "1.6.0",
4
4
  "description": "The official blog of Network Pro Strategies (Network Pro™).",
5
5
  "keywords": [
6
6
  "advisory",
@@ -51,20 +51,20 @@
51
51
  "prepare": "npx simple-git-hooks || echo ''"
52
52
  },
53
53
  "devDependencies": {
54
- "@eslint/js": "^9.39.1",
54
+ "@eslint/js": "^9.39.2",
55
55
  "@eslint/json": "^0.14.0",
56
- "autoprefixer": "^10.4.22",
57
- "browserslist": "^4.28.0",
58
- "eslint": "^9.39.1",
56
+ "autoprefixer": "^10.4.23",
57
+ "browserslist": "^4.28.1",
58
+ "eslint": "^9.39.2",
59
59
  "eslint-config-prettier": "^10.1.8",
60
60
  "globals": "^16.5.0",
61
- "markdownlint": "^0.39.0",
62
- "markdownlint-cli2": "^0.19.0",
61
+ "markdownlint": "^0.40.0",
62
+ "markdownlint-cli2": "^0.20.0",
63
63
  "npm-run-all": "^4.1.5",
64
64
  "postcss": "^8.5.6",
65
- "prettier": "3.6.2",
65
+ "prettier": "3.7.4",
66
66
  "simple-git-hooks": "^2.13.1",
67
- "stylelint": "^16.25.0",
67
+ "stylelint": "^16.26.1",
68
68
  "stylelint-config-html": "^1.1.0",
69
69
  "stylelint-config-recommended": "^17.0.0",
70
70
  "stylelint-order": "^7.0.0"
@@ -37,9 +37,9 @@ tags:
37
37
 
38
38
  &nbsp;
39
39
 
40
- Thanks for your interest in improving **Network Pro Strategies** (Network
41
- Pro™)! We're always looking for collaborators and contributors of all skill
42
- levels. This guide will help you get started quickly and effectively.
40
+ Thanks for your interest in improving **Network Pro Strategies** (Network Pro™)!
41
+ We're always looking for collaborators and contributors of all skill levels.
42
+ This guide will help you get started quickly and effectively.
43
43
 
44
44
  Following these guidelines helps us all work together efficiently and
45
45
  respectfully. 🙌
package/src/posts/live.md CHANGED
@@ -75,8 +75,8 @@ gatekeeping.
75
75
 
76
76
  ### ✅ Our Vision: Security That Respects You
77
77
 
78
- At **Network Pro™**, we believe security should be **transparent, adaptable,
79
- and aligned with your goals**. While we advocate for privacy-first solutions and
78
+ At **Network Pro™**, we believe security should be **transparent, adaptable, and
79
+ aligned with your goals**. While we advocate for privacy-first solutions and
80
80
  actively support open technologies, we apply them with discretion—not dogma. Our
81
81
  priority is delivering **reliable, resilient results**, whether through open
82
82
  source tools or vetted proprietary platforms.
package/src/robots.txt CHANGED
@@ -11,10 +11,10 @@ User-agent: *
11
11
  # Disallow dev and CI/CD artifacts
12
12
  Disallow: /tests/
13
13
  Disallow: /reports/
14
- Disallow: /build/
15
14
 
16
15
  # Allow everything else
17
16
  Allow: /
17
+ Allow: /.well-known
18
18
 
19
19
  # Inform bots where to find the sitemap
20
20
  Sitemap: https://blog.netwk.pro/sitemap.xml
package/vercel.json ADDED
@@ -0,0 +1,39 @@
1
+ {
2
+ "buildCommand": "pip install -r requirements.txt && python -m mkdocs build --clean --site-dir build",
3
+ "outputDirectory": "build",
4
+ "headers": [
5
+ {
6
+ "source": "/(.*)",
7
+ "headers": [
8
+ {
9
+ "key": "Content-Security-Policy",
10
+ "value": "default-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; connect-src 'self' https://api.github.com; font-src 'self' data: https://fonts.gstatic.com; form-action 'self'; base-uri 'self'; object-src 'none'; frame-ancestors 'none'; upgrade-insecure-requests; report-uri https://csp.netwk.pro/.netlify/functions/csp-report; report-to csp-endpoint;"
11
+ },
12
+ {
13
+ "key": "Report-To",
14
+ "value": "{\"group\":\"csp-endpoint\",\"max_age\":10886400,\"endpoints\":[{\"url\":\"https://csp.netwk.pro/.netlify/functions/csp-report\"}],\"include_subdomains\":true}"
15
+ },
16
+ {
17
+ "key": "Permissions-Policy",
18
+ "value": "fullscreen=(self), sync-xhr=(), camera=(), microphone=(), geolocation=(), clipboard-read=(), clipboard-write=(), payment=(), usb=(), hid=(), gamepad=(), serial=(), publickey-credentials-get=(), browsing-topics=()"
19
+ },
20
+ {
21
+ "key": "X-Content-Type-Options",
22
+ "value": "nosniff"
23
+ },
24
+ {
25
+ "key": "Referrer-Policy",
26
+ "value": "strict-origin-when-cross-origin"
27
+ },
28
+ {
29
+ "key": "X-Frame-Options",
30
+ "value": "DENY"
31
+ },
32
+ {
33
+ "key": "Strict-Transport-Security",
34
+ "value": "max-age=31536000; includeSubDomains"
35
+ }
36
+ ]
37
+ }
38
+ ]
39
+ }
package/netlify.toml DELETED
@@ -1,37 +0,0 @@
1
- [build]
2
- command = "mkdocs build --clean --site-dir build"
3
- publish = "build"
4
-
5
- [[headers]]
6
- for = "/*"
7
- [headers.values]
8
- Content-Security-Policy = """
9
- default-src 'self';
10
- script-src 'self' 'unsafe-inline';
11
- style-src 'self' 'unsafe-inline';
12
- img-src 'self' data:;
13
- connect-src 'self' https://api.github.com;
14
- font-src 'self' data: https://fonts.gstatic.com;
15
- form-action 'self';
16
- base-uri 'self';
17
- object-src 'none';
18
- frame-ancestors 'none';
19
- upgrade-insecure-requests;
20
- report-uri https://csp.netwk.pro/.netlify/functions/csp-report;
21
- report-to csp-endpoint;
22
- """
23
- Report-To = """
24
- {
25
- "group": "csp-endpoint",
26
- "max_age": 10886400,
27
- "endpoints": [
28
- { "url": "https://csp.netwk.pro/.netlify/functions/csp-report" }
29
- ],
30
- "include_subdomains": true
31
- }
32
- """
33
- Permissions-Policy = "fullscreen=(self), sync-xhr=(), camera=(), microphone=(), geolocation=(), clipboard-read=(), clipboard-write=(), payment=(), usb=(), hid=(), gamepad=(), serial=(), publickey-credentials-get=(), browsing-topics=()"
34
- X-Content-Type-Options = "nosniff"
35
- Referrer-Policy = "strict-origin-when-cross-origin"
36
- X-Frame-Options = "DENY"
37
- Strict-Transport-Security = "max-age=31536000; includeSubDomains"
package/src/sitemap.xml DELETED
@@ -1,392 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <!-- Last Updated: 2025-11-09 -->
3
-
4
- <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
5
-
6
- <url>
7
-
8
- <loc>https://blog.netwk.pro</loc>
9
-
10
- <lastmod>2025-11-09</lastmod>
11
-
12
- <changefreq>monthly</changefreq>
13
-
14
- <priority>1.0</priority>
15
-
16
- </url>
17
-
18
- <url>
19
-
20
- <loc>https://blog.netwk.pro/2025/11/09/introducing-our-new-privacy--security-apps--services-portal/</loc>
21
-
22
- <lastmod>2025-11-09</lastmod>
23
-
24
- <changefreq>monthly</changefreq>
25
-
26
- <priority>0.8</priority>
27
-
28
- </url>
29
-
30
- <url>
31
-
32
- <loc>https://blog.netwk.pro/2025/11/09/the-end-of-true-sideloading/</loc>
33
-
34
- <lastmod>2025-11-09</lastmod>
35
-
36
- <changefreq>monthly</changefreq>
37
-
38
- <priority>0.8</priority>
39
-
40
- </url>
41
-
42
- <url>
43
-
44
- <loc>https://blog.netwk.pro/2025/09/23/cyber-alert-update---sonicwall-security-breach-what-you-need-to-know/</loc>
45
-
46
- <lastmod>2025-09-23</lastmod>
47
-
48
- <changefreq>monthly</changefreq>
49
-
50
- <priority>0.8</priority>
51
-
52
- </url>
53
-
54
- <url>
55
-
56
- <loc>https://blog.netwk.pro/2025/07/27/uk-reverses-course-on-apple-cloud-encryption-demands/</loc>
57
-
58
- <lastmod>2025-07-27</lastmod>
59
-
60
- <changefreq>monthly</changefreq>
61
-
62
- <priority>0.7</priority>
63
-
64
- </url>
65
-
66
- <url>
67
-
68
- <url>
69
-
70
- <loc>https://blog.netwk.pro/2025/07/17/foss-spotlight-copy-sms-code---otp-helper/</loc>
71
-
72
- <lastmod>2025-07-27</lastmod>
73
-
74
- <changefreq>monthly</changefreq>
75
-
76
- <priority>0.7</priority>
77
-
78
- </url>
79
-
80
- <url>
81
-
82
- <loc>https://blog.netwk.pro/2025/07/17/ai-personality-profiling-and-the-rise-of-intellectual-leveling/</loc>
83
-
84
- <lastmod>2025-07-17</lastmod>
85
-
86
- <changefreq>monthly</changefreq>
87
-
88
- <priority>0.7</priority>
89
-
90
- </url>
91
-
92
- <url>
93
-
94
- <loc>https://blog.netwk.pro/2025/07/10/is-outlook-quietly-turning-into-microsofts-data-collection-machine/</loc>
95
-
96
- <lastmod>2025-07-10</lastmod>
97
-
98
- <changefreq>monthly</changefreq>
99
-
100
- <priority>0.7</priority>
101
-
102
- </url>
103
-
104
- <url>
105
-
106
- <loc>https://blog.netwk.pro/2025/07/07/hpe-completes-acquisition-of-juniper-networks/</loc>
107
-
108
- <lastmod>2025-07-07</lastmod>
109
-
110
- <changefreq>monthly</changefreq>
111
-
112
- <priority>0.7</priority>
113
-
114
- </url>
115
-
116
- <url>
117
-
118
- <loc>https://blog.netwk.pro/2025/07/01/supreme-court-upholds-age-verification-law/</loc>
119
-
120
- <lastmod>2025-07-01</lastmod>
121
-
122
- <changefreq>monthly</changefreq>
123
-
124
- <priority>0.7</priority>
125
-
126
- </url>
127
-
128
- <url>
129
-
130
- <loc>https://blog.netwk.pro/2025/06/23/encryption-is-not-a-loophole/</loc>
131
-
132
- <lastmod>2025-07-27</lastmod>
133
-
134
- <changefreq>monthly</changefreq>
135
-
136
- <priority>0.6</priority>
137
-
138
- </url>
139
-
140
- <url>
141
-
142
- <loc>https://blog.netwk.pro/2025/06/16/foss-spotlight-cryptomator/</loc>
143
-
144
- <lastmod>2025-07-27</lastmod>
145
-
146
- <changefreq>monthly</changefreq>
147
-
148
- <priority>0.6</priority>
149
-
150
- </url>
151
-
152
- <url>
153
-
154
- <loc>https://blog.netwk.pro/2025/06/12/whats-a-backdoor-in-encryption/</loc>
155
-
156
- <lastmod>2025-07-27</lastmod>
157
-
158
- <changefreq>monthly</changefreq>
159
-
160
- <priority>0.6</priority>
161
-
162
- </url>
163
-
164
- <url>
165
-
166
- <loc>https://blog.netwk.pro/2025/06/08/foss-spotlight-squircle-ce/</loc>
167
-
168
- <lastmod>2025-07-27</lastmod>
169
-
170
- <changefreq>monthly</changefreq>
171
-
172
- <priority>0.6</priority>
173
-
174
- </url>
175
-
176
- <url>
177
-
178
- <loc>https://blog.netwk.pro/2025/06/03/google-gemini-now-reads-your-emails-heres-why-you-should-switch/</loc>
179
-
180
- <lastmod>2025-06-03</lastmod>
181
-
182
- <changefreq>monthly</changefreq>
183
-
184
- <priority>0.6</priority>
185
-
186
- </url>
187
-
188
- <url>
189
-
190
- <loc>https://blog.netwk.pro/2025/06/03/digital-identity-a-trojan-horse-for-surveillance/</loc>
191
-
192
- <lastmod>2025-06-03</lastmod>
193
-
194
- <changefreq>monthly</changefreq>
195
-
196
- <priority>0.6</priority>
197
-
198
- </url>
199
-
200
- <url>
201
-
202
- <loc>https://blog.netwk.pro/2025/05/29/foss-spotlight-heliboard/</loc>
203
-
204
- <lastmod>2025-07-27</lastmod>
205
-
206
- <changefreq>monthly</changefreq>
207
-
208
- <priority>0.5</priority>
209
-
210
- </url>
211
-
212
- <url>
213
-
214
- <loc>https://blog.netwk.pro/2025/05/29/microsoft-authenticator-users---major-change-incoming/</loc>
215
-
216
- <lastmod>2025-07-27</lastmod>
217
-
218
- <changefreq>monthly</changefreq>
219
-
220
- <priority>0.5</priority>
221
-
222
- </url>
223
-
224
- <url>
225
-
226
- <loc>https://blog.netwk.pro/2025/05/26/welcome-to-the-future-of-network-pro/</loc>
227
-
228
- <lastmod>2025-05-26</lastmod>
229
-
230
- <changefreq>monthly</changefreq>
231
-
232
- <priority>0.5</priority>
233
-
234
- </url>
235
-
236
- <url>
237
-
238
- <loc>https://blog.netwk.pro/2025/05/16/progressive-web-app-is-live/</loc>
239
-
240
- <lastmod>2025-05-16</lastmod>
241
-
242
- <changefreq>monthly</changefreq>
243
-
244
- <priority>0.5</priority>
245
-
246
- </url>
247
-
248
- <url>
249
-
250
- <loc>https://blog.netwk.pro/2025/05/15/building-a-better-web-experience/</loc>
251
-
252
- <lastmod>2025-05-15</lastmod>
253
-
254
- <changefreq>monthly</changefreq>
255
-
256
- <priority>0.5</priority>
257
-
258
- </url>
259
-
260
- <url>
261
-
262
- <loc>https://blog.netwk.pro/2025/05/11/the-network-pro-blog-has-moved/</loc>
263
-
264
- <lastmod>2025-05-11</lastmod>
265
-
266
- <changefreq>monthly</changefreq>
267
-
268
- <priority>0.5</priority>
269
-
270
- </url>
271
-
272
- <url>
273
-
274
- <loc>https://blog.netwk.pro/2025/04/30/our-blog-is-live/</loc>
275
-
276
- <lastmod>2025-05-11</lastmod>
277
-
278
- <changefreq>monthly</changefreq>
279
-
280
- <priority>0.5</priority>
281
-
282
- </url>
283
-
284
- <url>
285
-
286
- <loc>https://blog.netwk.pro/category/android/</loc>
287
-
288
- <lastmod>2025-11-09</lastmod>
289
-
290
- <changefreq>monthly</changefreq>
291
-
292
- <priority>0.5</priority>
293
-
294
- </url>
295
-
296
- <url>
297
-
298
- <loc>https://blog.netwk.pro/category/open-source/</loc>
299
-
300
- <lastmod>2025-11-09</lastmod>
301
-
302
- <changefreq>monthly</changefreq>
303
-
304
- <priority>0.5</priority>
305
-
306
- </url>
307
-
308
- <url>
309
-
310
- <loc>https://blog.netwk.pro/category/privacy/</loc>
311
-
312
- <lastmod>2025-11-09</lastmod>
313
-
314
- <changefreq>monthly</changefreq>
315
-
316
- <priority>0.5</priority>
317
-
318
- </url>
319
-
320
- <url>
321
-
322
- <loc>https://blog.netwk.pro/category/security/</loc>
323
-
324
- <lastmod>2025-11-09</lastmod>
325
-
326
- <changefreq>monthly</changefreq>
327
-
328
- <priority>0.5</priority>
329
-
330
- </url>
331
-
332
- <url>
333
-
334
- <loc>https://blog.netwk.pro/archive/2025/</loc>
335
-
336
- <lastmod>2025-11-09</lastmod>
337
-
338
- <changefreq>monthly</changefreq>
339
-
340
- <priority>0.5</priority>
341
-
342
- </url>
343
-
344
- <url>
345
-
346
- <loc>https://blog.netwk.pro/tags/</loc>
347
-
348
- <lastmod>2025-11-09</lastmod>
349
-
350
- <changefreq>monthly</changefreq>
351
-
352
- <priority>0.5</priority>
353
-
354
- </url>
355
-
356
- <url>
357
-
358
- <loc>https://blog.netwk.pro/2015/01/04/secure-secure-shell/</loc>
359
-
360
- <lastmod>2025-11-09</lastmod>
361
-
362
- <changefreq>yearly</changefreq>
363
-
364
- <priority>0.4</priority>
365
-
366
- </url>
367
-
368
- <url>
369
-
370
- <loc>https://blog.netwk.pro/contributing/</loc>
371
-
372
- <lastmod>2025-11-09</lastmod>
373
-
374
- <changefreq>monthly</changefreq>
375
-
376
- <priority>0.4</priority>
377
-
378
- </url>
379
-
380
- <url>
381
-
382
- <loc>https://blog.netwk.pro/CODE_OF_CONDUCT/</loc>
383
-
384
- <lastmod>2025-05-30</lastmod>
385
-
386
- <changefreq>monthly</changefreq>
387
-
388
- <priority>0.4</priority>
389
-
390
- </url>
391
-
392
- </urlset>