Skip to content

Commit 339bfa2

Browse files
authored
Merge pull request #7 from haxtheweb/2025
2025
2 parents e530328 + 8ab9171 commit 339bfa2

File tree

986 files changed

+20852
-7808
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

986 files changed

+20852
-7808
lines changed

.github/CODEOWNERS

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Global ownership
2+
# Bryan Ollendyke (btopro) is the primary maintainer and creator of HAXTheWeb
3+
* @btopro
4+
5+
# HAXTheWeb ecosystem is developed and maintained by:
6+
# Bryan Ollendyke (@btopro) - Penn State University
7+
# Copyright (c) 2015-2025 The Pennsylvania State University

.github/pull_request_template.md

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
## Related Issue
2+
<!-- Link to the issue this PR addresses -->
3+
Closes [ISSUE #XXXX](https://github.com/haxtheweb/issues/issues/XXXX)
4+
5+
## Figma Link
6+
<!-- If this PR relates to a design, provide the Figma link -->
7+
8+
## Description of Changes
9+
<!-- Provide a clear and concise description of what this PR does -->
10+
11+
### What changed:
12+
-
13+
-
14+
-
15+
16+
### Why this change was needed:
17+
<!-- Explain the problem this solves or the feature this adds -->
18+
19+
## Type of Change
20+
<!-- Check the type of change your PR introduces -->
21+
- [ ] 🐛 Bug fix (non-breaking change which fixes an issue)
22+
- [ ] ✨ New feature (non-breaking change which adds functionality)
23+
- [ ] 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
24+
- [ ] 📚 Documentation update
25+
- [ ] 🎨 Style/formatting changes
26+
- [ ] ♻️ Code refactoring
27+
- [ ] 🔧 Configuration changes
28+
29+
## Testing Checklist
30+
<!-- Check all that apply -->
31+
- [ ] I have tested this change locally
32+
- [ ] I have added/updated tests for my changes
33+
- [ ] All existing tests pass
34+
- [ ] I have tested on multiple browsers (if applicable)
35+
- [ ] I have tested on mobile devices (if applicable)
36+
- [ ] I have verified accessibility compliance
37+
- [ ] I have tested with screen readers (if applicable)
38+
39+
## Quality Assurance
40+
<!-- Check all that apply -->
41+
- [ ] I have followed the project's coding conventions
42+
- [ ] I have updated documentation where necessary
43+
- [ ] I have added comments to complex code
44+
- [ ] My changes don't introduce console warnings/errors
45+
- [ ] I have checked for performance implications
46+
47+
## Ways to Test This Change
48+
<!-- Provide step-by-step instructions for testing -->
49+
1.
50+
2.
51+
3.
52+
53+
## Screenshots/Recordings
54+
<!-- If applicable, add screenshots or recordings showing the changes -->
55+
56+
### Before:
57+
<!-- Screenshot/recording of the current behavior -->
58+
59+
### After:
60+
<!-- Screenshot/recording of the new behavior -->
61+
62+
## Additional Notes
63+
<!-- Any additional context, decisions, or follow-up work -->
64+
65+
## Checklist
66+
<!-- Final checklist before submitting -->
67+
- [ ] I have read the [contributing guidelines](../CONTRIBUTING.md)
68+
- [ ] My code follows the style guidelines of this project
69+
- [ ] I have performed a self-review of my own code
70+
- [ ] I have made corresponding changes to the documentation
71+
- [ ] My changes generate no new warnings
72+
- [ ] Any dependent changes have been merged and published

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
fail-fast: false
1212
matrix:
1313
platform: [ubuntu-latest, windows-latest]
14-
node-version: [20]
14+
node-version: [22]
1515
runs-on: ${{ matrix.platform }}
1616
steps:
1717
- name: Checkout
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
---
2+
# This workflow uses actions that are not certified by GitHub. They are provided by a third-party and are governed by separate terms of service, privacy policy, and support documentation.
3+
name: OSSF Scorecard
4+
on:
5+
# For Branch-Protection check. Only the default branch is supported. See https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection.
6+
branch_protection_rule:
7+
# To guarantee Maintained check is occasionally updated. See https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained.
8+
schedule:
9+
- cron: "0 0 * * 1"
10+
push:
11+
branches: [main, master]
12+
workflow_dispatch:
13+
# Declare default permissions as read only.
14+
permissions: read-all
15+
jobs:
16+
analysis:
17+
name: Scorecard analysis
18+
runs-on: ubuntu-24.04
19+
# Delete the conditional below if you are using the OSSF Scorecard on a public repository.
20+
if: ${{ github.event.repository.private == false }}
21+
permissions:
22+
# Needed if using Code Scanning alerts.
23+
security-events: write
24+
# Needed for GitHub OIDC token if publish_results is true.
25+
id-token: write
26+
# Uncomment the permissions below if you are using the OSSF Scorecard on a private repository.
27+
# contents: read
28+
# actions: read
29+
# issues: read # To allow GraphQL ListCommits to work
30+
# pull-requests: read # To allow GraphQL ListCommits to work
31+
# checks: read # To detect SAST tools
32+
steps:
33+
- name: Check out the codebase
34+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
35+
with:
36+
persist-credentials: false
37+
38+
- name: Run analysis
39+
uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.4.3
40+
with:
41+
results_file: results.sarif
42+
results_format: sarif
43+
# (Optional) fine-grained personal access token. Uncomment the `repo_token` line below if you want to enable the Branch-Protection or Webhooks check on a *private* repository.
44+
# To create the PAT, follow the steps in https://github.com/ossf/scorecard-action#authentication-with-fine-grained-pat-optional.
45+
# repo_token: ${{ secrets.SCORECARD_TOKEN }}
46+
47+
# Publish the results for public repositories to enable scorecard badges. For more details, see https://github.com/ossf/scorecard-action#publishing-results.
48+
# For private repositories, `publish_results` will automatically be set to `false`, regardless of the value entered here.
49+
publish_results: true
50+
51+
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF format to the repository Actions tab.
52+
- name: Upload artifact
53+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
54+
with:
55+
name: SARIF file
56+
path: results.sarif
57+
retention-days: 5
58+
59+
# Upload the results to GitHub's code scanning dashboard.
60+
- name: Upload SARIF results to code scanning
61+
uses: github/codeql-action/upload-sarif@f443b600d91635bebf5b0d9ebc620189c0d6fba5 # v4.30.8
62+
with:
63+
sarif_file: results.sarif

CODE_OF_CONDUCT.md

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# HAXTheWeb Code of Conduct
2+
3+
## Our pledge
4+
5+
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project as awesome as we possibly can.
6+
It is the policy of HAXTheWeb to maintain an environment free of harassment and free of discrimination against any person because of age, race, color, ancestry, national origin, religion,
7+
creed, service in the uniformed services (as defined in state and federal law), veteran status, sex, sexual orientation,
8+
marital or family status, pregnancy, pregnancy-related conditions, physical or mental disability, gender, perceived gender,
9+
gender identity, genetic information or political ideas.
10+
11+
Discriminatory conduct and harassment, as well as sexual misconduct and harassment or relationship violence, violates the dignity of individuals, impedes the realization of HAXTheWeb’s mission, and will not be tolerated in our community.
12+
13+
## Our standards
14+
15+
How you will keep our community awesome:
16+
17+
* Showing empathy to everyone
18+
* Being respectful of differing viewpoints and experiences
19+
* Accepting constructive criticism
20+
* Acting in the best interests of the community
21+
22+
Behaviors our community will not tolerate:
23+
24+
* Harassment - public or private
25+
* Unwelcome sexual attention or advances
26+
* Trolling - derogatory interactions and personal or political attacks
27+
* Doxing - publishing others' private information without permission
28+
* Any conduct reasonably considered inappropriate in professional settings
29+
30+
## Our responsibilities
31+
32+
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected
33+
to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
34+
35+
Project maintainers have the right to remove or modify comments, commits, code, documentation,
36+
issues, and other contributions that are not aligned to this Code of Conduct.
37+
38+
## Scope
39+
40+
This Code of Conduct applies both within project spaces and in spaces where an individual is
41+
representing the project or its community. Examples of representing a project or community include using
42+
an official project e-mail address, posting via an official social media account, or acting as an official
43+
representative at an event. Representation of a project may be further defined and clarified
44+
by project maintainers.
45+
46+
The HAXcms Code of Conduct applies to anyone involved in the project, including project maintainers.
47+
48+
## Enforcement
49+
50+
Instances of behavior which violates the HAXcms Code of Conduct may be reported by contacting
51+
project leadership at hax@psu.edu. The project leadership will review and investigate all complaints, and will
52+
respond in a way that it deems appropriate. The project leadership is obligated to maintain
53+
confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies
54+
may be posted separately.
55+
56+
The HAXcms Code of Conduct was originally produced in the United States of America and operates based on US legal norms
57+
which presumes innocence until guilt is proven.
58+
59+
## CoC attribution
60+
The HAXcms Code of Conduct has been forked from the Contributor Covenant, version 1.4, available at http://contributor-covenant.org/version/1/4

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
1+
[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
2+
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/haxtheweb/haxcms-nodejs/badge)](https://securityscorecards.dev/viewer/?uri=github.com/haxtheweb/haxcms-nodejs)
3+
[![Community Support](https://badgen.net/badge/support/community/cyan?icon=awesome)](/SUPPORT.md)
14
[![License: Apache 2.0](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
5+
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](/CODE_OF_CONDUCT.md)
6+
[![Discord](https://badgen.net/badge/icon/discord?icon=discord&label)](https://discord.gg/EKYJAjqGhf)
27
[![Lit](https://img.shields.io/badge/-Lit-324fff?style=flat&logo=data:image/svg%2bxml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMTYwIDIwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTYwIDgwdjgwbC00MC00MHptLTQwIDQwdjgwbDQwLTQwem0wLTgwdjgwbC00MC00MHptLTQwIDQwdjgwbDQwLTQwem0tNDAtNDB2ODBsNDAtNDB6bTQwLTQwdjgwbC00MC00MHptLTQwIDEyMHY4MGwtNDAtNDB6bS00MC00MHY4MGw0MC00MHoiLz48L3N2Zz4%3D)](https://lit.dev/)
38
[![#HAXTheWeb](https://img.shields.io/badge/-HAXTheWeb-999999FF?style=flat&logo=data:image/svg%2bxml;base64,PHN2ZyBpZD0iZmVhMTExZTAtMjEwZC00Y2QwLWJhMWQtZGZmOTQyODc0Njg1IiBkYXRhLW5hbWU9IkxheWVyIDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4NC40IDEzNS45NyI+PGRlZnM+PHN0eWxlPi5lMWJjMjAyNS0xODAwLTRkYzItODc4NS1jNDZlZDEwM2Y0OTJ7ZmlsbDojMjMxZjIwO308L3N0eWxlPjwvZGVmcz48cGF0aCBjbGFzcz0iZTFiYzIwMjUtMTgwMC00ZGMyLTg3ODUtYzQ2ZWQxMDNmNDkyIiBkPSJNNzguMDcsODMuNDVWNTVIODYuMnY4LjEzaDE2LjI2djQuMDdoNC4wN1Y4My40NUg5OC40VjY3LjE5SDg2LjJWODMuNDVaIi8+PHBvbHlnb24gcG9pbnRzPSIxNTMuMTMgNjMuNyAxNTMuMTMgNTEuMzkgMTQwLjU0IDUxLjM5IDE0MC41NCAzOS4wOSAxMjcuOTUgMzkuMDkgMTI3Ljk1IDI2Ljc5IDEwMi43OCAyNi43OSAxMDIuNzggMzkuMDkgMTE1LjM2IDM5LjA5IDExNS4zNiA1MS4zOSAxMjcuOTUgNTEuMzkgMTI3Ljk1IDYzLjcgMTQwLjU0IDYzLjcgMTQwLjU0IDc2IDEyNy4zNiA3NiAxMjcuMzYgODguMyAxMTQuNzggODguMyAxMTQuNzggMTAwLjYxIDEwMi4xOSAxMDAuNjEgMTAyLjE5IDExMi45MSAxMjcuMzYgMTEyLjkxIDEyNy4zNiAxMDAuNjEgMTM5Ljk1IDEwMC42MSAxMzkuOTUgODguMyAxNTIuNTQgODguMyAxNTIuNTQgNzYgMTY1LjcyIDc2IDE2NS43MiA2My43IDE1My4xMyA2My43Ii8+PHBvbHlnb24gcG9pbnRzPSIzMy4xMyA2My43IDMzLjEzIDUxLjM5IDQ1LjcyIDUxLjM5IDQ1LjcyIDM5LjA5IDU4LjMxIDM5LjA5IDU4LjMxIDI2Ljc5IDgzLjQ4IDI2Ljc5IDgzLjQ4IDM5LjA5IDcwLjg5IDM5LjA5IDcwLjg5IDUxLjM5IDU4LjMxIDUxLjM5IDU4LjMxIDYzLjcgNDUuNzIgNjMuNyA0NS43MiA3NiA1OC44OSA3NiA1OC44OSA4OC4zIDcxLjQ4IDg4LjMgNzEuNDggMTAwLjYxIDg0LjA3IDEwMC42MSA4NC4wNyAxMTIuOTEgNTguODkgMTEyLjkxIDU4Ljg5IDEwMC42MSA0Ni4zMSAxMDAuNjEgNDYuMzEgODguMyAzMy43MiA4OC4zIDMzLjcyIDc2IDIwLjU0IDc2IDIwLjU0IDYzLjcgMzMuMTMgNjMuNyIvPjwvc3ZnPg==)](https://haxtheweb.org/)
49
[![Published on npm](https://img.shields.io/npm/v/@haxtheweb/haxcms-nodejs?style=flat)](https://www.npmjs.com/package/@haxtheweb/haxcms-nodejs)

SECURITY.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Security Policy
2+
3+
## Supported Versions
4+
5+
We often run master on production systems or slightly behind master. Tagged releases of all web components in this repo are published to npm and managed via lerna.
6+
If we get a security issue in a specific version, we are going to fix it in a newer release of the web component and you should update to the latest stable at that time.
7+
8+
## Reporting a Vulnerability
9+
10+
Security related issues should be filed in our general issue queue https://github.com/haxtheweb/issues/issues

SUPPORT.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Support
2+
3+
## Getting Help
4+
5+
If you need help with this project, please use the following resources:
6+
7+
### Community Support
8+
9+
- **Discord**: Join our community Discord server for real-time help and discussion: [HAXTheWeb Discord](https://discord.gg/EKYJAjqGhf)
10+
- **Documentation**: Visit our comprehensive documentation: [HAXTheWeb Docs](https://haxtheweb.org/documentation)
11+
- **Issues**: For bug reports and feature requests, please use our unified issue queue: [HAXTheWeb Issues](https://github.com/haxtheweb/issues/issues)
12+
13+
### Getting Started
14+
15+
- Check out our [documentation](https://haxtheweb.org/documentation) for guides and tutorials
16+
- Explore and play with HAX components: [HAX Magic Script Playground](https://hax.cloud/magicscript.html)
17+
- Join the discussion on [Discord](https://discord.gg/EKYJAjqGhf) to connect with other developers
18+
19+
### Before Opening an Issue
20+
21+
Before creating a new issue, please:
22+
23+
1. Search existing issues in our [unified issue queue](https://github.com/haxtheweb/issues/issues)
24+
2. Check our [documentation](https://haxtheweb.org/documentation)
25+
3. Ask for help on [Discord](https://discord.gg/EKYJAjqGhf)
26+
27+
This helps keep our issue queue focused on actual bugs and feature requests.
28+
29+
## Contributing
30+
31+
We welcome contributions! Please see our [Contributing Guidelines](CONTRIBUTING.md) for details on how to get involved.

renovate.json

Lines changed: 41 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,42 @@
11
{
2-
"extends": [
3-
"config:base",
4-
":semanticPrefixFix",
5-
":separateMultipleMajorReleases",
6-
":separatePatchReleases",
7-
":maintainLockFilesWeekly",
8-
":widenPeerDependencies"
9-
],
10-
11-
"packageRules": [
12-
{
13-
"updateTypes": ["patch"],
14-
15-
"automerge": true,
16-
"automergeType": "branch"
17-
},
18-
{
19-
"updateTypes": ["minor"],
20-
"matchCurrentVersion": "!/^[~^]?0/",
21-
22-
"automerge": true,
23-
"automergeType": "branch"
24-
}
25-
],
26-
27-
"rangeStrategy": "bump"
28-
}
2+
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
3+
"extends": [
4+
"config:recommended"
5+
],
6+
"commitMessageLowerCase": "never",
7+
"labels": [
8+
"dependencies"
9+
],
10+
"prConcurrentLimit": 3,
11+
"prHourlyLimit": 2,
12+
"schedule": [
13+
"* 0-7 * * 1"
14+
],
15+
"packageRules": [
16+
{
17+
"groupName": "HAXTheWeb Dependencies",
18+
"matchPackagePatterns": ["^@haxtheweb/"],
19+
"schedule": ["at any time"]
20+
},
21+
{
22+
"groupName": "Development Dependencies",
23+
"matchDepTypes": ["devDependencies"],
24+
"addLabels": ["skip changelog"],
25+
"automerge": true,
26+
"matchUpdateTypes": ["patch", "minor"],
27+
"matchCurrentVersion": "!/^0/"
28+
},
29+
{
30+
"groupName": "GitHub Actions",
31+
"matchManagers": ["github-actions"],
32+
"addLabels": ["skip changelog"],
33+
"automerge": true,
34+
"matchUpdateTypes": ["patch", "minor"],
35+
"matchCurrentVersion": "!/^0/"
36+
},
37+
{
38+
"enabled": false,
39+
"matchUpdateTypes": ["digest"]
40+
}
41+
]
42+
}

src/boilerplate/site/ghpages.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,11 @@
4646
<link rel="preload" href="./wc-registry.json" as="fetch" crossorigin="anonymous" fetchpriority="high" />
4747
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/wc-autoload/wc-autoload.js" crossorigin="anonymous" />
4848
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/dynamic-import-registry/dynamic-import-registry.js" crossorigin="anonymous" />
49-
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/haxcms-elements/lib/haxcms-site-builder.js" crossorigin="anonymous" />
49+
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/haxcms-elements/lib/core/haxcms-site-builder.js" crossorigin="anonymous" />
5050
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/haxcms-elements/lib/core/haxcms-site-store.js" crossorigin="anonymous" />
5151
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/haxcms-elements/lib/core/haxcms-site-router.js" crossorigin="anonymous" />
52-
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/haxcms-elements/lib/base/HAXCMSThemeWiring.js" crossorigin="anonymous" />
53-
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/haxcms-elements/lib/base/HAXCMSLitElementTheme.js" crossorigin="anonymous" />
52+
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/haxcms-elements/lib/core/HAXCMSThemeWiring.js" crossorigin="anonymous" />
53+
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/haxcms-elements/lib/core/HAXCMSLitElementTheme.js" crossorigin="anonymous" />
5454
<link rel="modulepreload" href="./build/es6/node_modules/@haxtheweb/utils/utils.js" crossorigin="anonymous" />
5555
<link rel="preload" href="./build/es6/node_modules/@haxtheweb/haxcms-elements/lib/base.css" as="style" />
5656
<meta name="generator" content="HAXcms">

0 commit comments

Comments
 (0)