Skip to content

Develop 0.0.11-alpha#11

Merged
ReneSchwarzer merged 7 commits into
mainfrom
develop
May 17, 2026
Merged

Develop 0.0.11-alpha#11
ReneSchwarzer merged 7 commits into
mainfrom
develop

Conversation

@ReneSchwarzer
Copy link
Copy Markdown
Member

This pull request introduces several documentation and configuration updates to improve clarity, consistency, and automation in the project. The most significant changes are the unification of authorization terminology in the development guide, the addition of a GitHub Actions workflow for automated documentation deployment, and a version bump for the package specification.

Documentation updates:

  • Replaced all uses of the Authorization attribute with the more explicit Policy attribute in code examples and attribute tables within docs/development_guide.md (renamed from doc/development_guide.md). This clarifies the use of identity policies for resource access and updates example code to use new policy classes (e.g., Policy<AuthenticatedAccessPolicy>, Policy<SystemAccessPolicy>, Policy<PublicAccessPolicy>). [1] [2] [3] [4] [5] [6] [7] [8]
  • Added Policies:IEnumerable<IIdentityPolicy> to all relevant class diagrams in the development guide to accurately reflect the new policy-based authorization model. [1] [2] [3] [4] [5] [6] [7] [8] [9]
  • Added a new IconTheme attribute to the application metadata table, specifying the visual style of application icons.

Automation and configuration:

  • Added a new GitHub Actions workflow (.github/workflows/generate-docs.yml) that builds and deploys the documentation site to GitHub Pages on pushes to main or manual dispatch. This workflow ensures the landing page is self-contained and GDPR-compliant by validating that no external resources are referenced in HTML files.
  • Bumped the package version from 0.0.10-alpha to 0.0.11-alpha in WebExpress.spec.

Minor improvements:

  • Fixed minor grammar and punctuation in the project description in README.md.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates project/package versions, refreshes the developer documentation to use policy-based authorization terminology, and adds a self-contained static GitHub Pages landing page with an automated deployment workflow.

Changes:

  • Bump WebExpress version references (spec + csproj + dependency).
  • Add a static site/ landing page (HTML/CSS/JS/assets) plus robots.txt/sitemap.xml.
  • Add a GitHub Actions workflow to deploy site/ to GitHub Pages and perform basic “no external resources” validation; update docs guides accordingly.

Reviewed changes

Copilot reviewed 14 out of 18 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
WebExpress.spec Package spec version bump to 0.0.11-alpha.
src/WebExpress/WebExpress.csproj Assembly/package version bump and WebApp dependency bump.
.github/workflows/generate-docs.yml New Pages deployment workflow + external-resource validation.
README.md Minor punctuation edits in project description.
docs/installation_guide.md Adds installation guide documentation.
docs/development_guide.md Updates guide to use policy-based authorization wording/examples + diagram updates.
site/index.html New static landing page.
site/privacy.html New GDPR-oriented privacy notice page.
site/imprint.html New imprint/legal page.
site/404.html New 404 page for Pages hosting.
site/assets/css/styles.css Styles for the landing page (mobile-first, dark mode, a11y).
site/assets/js/main.js Small local JS enhancements (menu toggle + year).
site/assets/img/logo.svg Local logo asset.
site/assets/img/favicon.svg Local favicon asset.
site/robots.txt Robots configuration for Pages.
site/sitemap.xml Sitemap for Pages.
site/README.md Docs for maintaining the landing page folder.
site/.nojekyll Disables Jekyll processing on GitHub Pages.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread site/404.html
Comment on lines +8 to +21
<title>Page not found — WebExpress</title>
<meta name="robots" content="noindex">
<link rel="icon" href="/assets/img/favicon.svg" type="image/svg+xml">
<link rel="stylesheet" href="/assets/css/styles.css">
</head>
<body class="error-body">
<main class="error-page">
<div class="container error-page__inner">
<p class="eyebrow">Error 404</p>
<h1>This page is not part of the WebExpress site.</h1>
<p class="muted">The URL you requested does not exist here. From the home page you can reach the documentation, the contribution guide and the project on GitHub.</p>
<p>
<a class="btn btn--primary" href="/">Back to home</a>
<a class="btn btn--ghost" href="https://github.com/webexpress-framework/WebExpress" rel="noopener external">View on GitHub</a>
Comment thread site/imprint.html Outdated
Maintainer: René Schwarzer<br>
Email: <a href="mailto:webexpress-framework@outlook.com">webexpress-framework@outlook.com</a><br>
Project page: <a href="https://github.com/webexpress-framework/WebExpress" rel="noopener external">github.com/webexpress-framework/WebExpress</a><br>
Postal address: Available upon request where a legitimate interest is demonstrated (in accordance with GDPR Art. 6(1)(f))]
Comment thread README.md Outdated

# WebExpress
WebExpress is a lightweight web server optimized for use in low-performance environments (e.g. Rasperry PI). By providing a powerful plugin system and a comprehensive API, web applications can be easily and quickly integrated into a .net language (e.g. C#). Some advantages of WebExpress are:
WebExpress is a lightweight web server optimized for use in low-performance environments (e.g., Rasperry PI). By providing a powerful plugin system and a comprehensive API, web applications can be easily and quickly integrated into a .net language (e.g., C#). Some advantages of WebExpress are:
Comment thread site/README.md Outdated
Comment on lines +23 to +24
The workflow validates that no third-party origins are referenced from any
HTML file before it deploys to Pages.
Comment thread .github/workflows/generate-docs.yml Outdated
Comment on lines +47 to +49
# fail the build if any HTML file references third-party origins, which would
# break GDPR compliance and the "no external requests" guarantee
if grep -RInE 'https?://(cdn\.|fonts\.googleapis\.com|fonts\.gstatic\.com|www\.google-analytics\.com|googletagmanager\.com)' _site --include='*.html'; then
Comment on lines +6 to +12
paths:
- 'site/**'
- 'README.md'
- 'CONTRIBUTING.md'
- 'docs/**'
- '.github/workflows/generate-docs.yml'
workflow_dispatch:
@ReneSchwarzer
Copy link
Copy Markdown
Member Author

@copilot fix comments

Agent-Logs-Url: https://github.com/webexpress-framework/WebExpress/sessions/c73b8b0d-3fcc-4a17-a830-f5c49098af80

Co-authored-by: ReneSchwarzer <31061438+ReneSchwarzer@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI commented May 16, 2026

@copilot fix comments

Addressed in d908aa3.

Fixed the reviewed issues in 404.html, imprint.html, README.md, site/README.md, and .github/workflows/generate-docs.yml.

Screenshots:

404 page
Imprint page

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • accounts.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4382 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/org.chromium.Chromium.scoped_dir.2tplvO --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,9464415113233489290,8809026939846414805,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,7825870901839842175,15964804759604761228,4 --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /usr/bin/chromium-browser chromium-browser --headless --disable-gpu --no-sandbox --window-size=1440,1200 --screenshot=/tmp/webexpress-shots/404.png REDACTED (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4519 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/org.chromium.Chromium.scoped_dir.2JDiNV --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,3210975966771794927,10346939748485695971,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,4794407971732474188,15252676976024469824,4 --trace-process-track-uuid=3190708989122997041 (dns block)
  • clients2.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4382 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/org.chromium.Chromium.scoped_dir.2tplvO --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,9464415113233489290,8809026939846414805,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,7825870901839842175,15964804759604761228,4 --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /usr/bin/chromium-browser chromium-browser --headless --disable-gpu --no-sandbox --window-size=1440,1200 --screenshot=/tmp/webexpress-shots/404.png REDACTED (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4519 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/org.chromium.Chromium.scoped_dir.2JDiNV --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,3210975966771794927,10346939748485695971,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,4794407971732474188,15252676976024469824,4 --trace-process-track-uuid=3190708989122997041 (dns block)
  • redirector.gvt1.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4382 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/org.chromium.Chromium.scoped_dir.2tplvO --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,9464415113233489290,8809026939846414805,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,7825870901839842175,15964804759604761228,4 --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /usr/bin/chromium-browser chromium-browser --headless --disable-gpu --no-sandbox --window-size=1440,1200 --screenshot=/tmp/webexpress-shots/404.png REDACTED (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4519 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/org.chromium.Chromium.scoped_dir.2JDiNV --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,3210975966771794927,10346939748485695971,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,4794407971732474188,15252676976024469824,4 --trace-process-track-uuid=3190708989122997041 (dns block)
  • www.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4382 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/org.chromium.Chromium.scoped_dir.2tplvO --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,9464415113233489290,8809026939846414805,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,7825870901839842175,15964804759604761228,4 --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /usr/bin/chromium-browser chromium-browser --headless --disable-gpu --no-sandbox --window-size=1440,1200 --screenshot=/tmp/webexpress-shots/404.png REDACTED (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4519 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/org.chromium.Chromium.scoped_dir.2JDiNV --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,3210975966771794927,10346939748485695971,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,4794407971732474188,15252676976024469824,4 --trace-process-track-uuid=3190708989122997041 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@ReneSchwarzer ReneSchwarzer changed the title Develop Develop 0.0.11-alpha May 16, 2026
@ReneSchwarzer ReneSchwarzer merged commit 74843a7 into main May 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants