Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
85c4ddd
test: move project from handlebars to vite, web components and standa…
deodorhunter Mar 4, 2026
32a2359
Merge origin/main into test: resolve conflicts (keep test except LICE…
deodorhunter Mar 4, 2026
70b7707
wip: setting up and testing things
deodorhunter Mar 4, 2026
99421a3
wip: setting up and testing things
deodorhunter Mar 4, 2026
2eb69b1
wip: setting up and testing things
deodorhunter Mar 4, 2026
ec3c267
wip: setting up and testing things
deodorhunter Mar 4, 2026
49b0ad7
wip: setting up and testing things
deodorhunter Mar 4, 2026
8825fba
chore(husky): use pnpm -s lint-staged in pre-commit hook
deodorhunter Mar 4, 2026
4134245
chore(husky): use pnpm -s lint-staged in pre-commit hook
deodorhunter Mar 4, 2026
f9e00dc
chore: update ci
deodorhunter Mar 4, 2026
b065fe0
chore(html): accept self-closing void tags and normalize pages
deodorhunter Mar 4, 2026
8f4efde
chore: update ci
deodorhunter Mar 4, 2026
0b8368a
ci: run format-check only on pull_request (remove push trigger)
deodorhunter Mar 9, 2026
91115b9
test: experimenting with ci
deodorhunter Mar 9, 2026
1f8f37e
chore: update postbuild script
deodorhunter Mar 9, 2026
a28eb02
chore: restructure repo
deodorhunter Mar 9, 2026
8a88f8e
chore: remove redirect and add links in index page
deodorhunter Mar 9, 2026
e0708ad
Setup new repo structure and CI
deodorhunter Mar 9, 2026
dbd0081
test: using HTML templates
deodorhunter Mar 10, 2026
40e49f5
chore: update package.json scripts for linting
deodorhunter Mar 10, 2026
0fa7dbe
fix: linting
deodorhunter Mar 10, 2026
eb0672a
Merge pull request #2 from RedTurtle/templates
deodorhunter Mar 10, 2026
3bf8b3e
feat: added root variables
Benedettainnocenti Mar 11, 2026
2cf952a
chore: fix merge conflict
Benedettainnocenti Mar 11, 2026
b151ed7
chore: Fixed code's style
Benedettainnocenti Mar 11, 2026
14bec6e
chore: upadte prettier config and run format
deodorhunter Mar 11, 2026
4817e74
feat: imported icons and illustrations
Benedettainnocenti Mar 12, 2026
f757b14
feat: renamed files
Benedettainnocenti Mar 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
20 changes: 20 additions & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
module.exports = {
root: true,
env: {
browser: true,
es2024: true,
},
extends: ["eslint:recommended", "plugin:prettier/recommended"],
parserOptions: {
ecmaVersion: 2024,
sourceType: "module",
},
rules: {
// disabled rules that enforce comment/empty-line requirements per request
'padding-line-between-statements': 'off',
'no-multiple-empty-lines': 'off',
'lines-between-class-members': 'off',
'line-comment-position': 'off',
'no-inline-comments': 'off'
},
};
44 changes: 44 additions & 0 deletions .github/actions/node_env_setup/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Set up Node.js environment
description: Install pnpm, configure Node from .nvmrc, enable cache and install dependencies.

inputs:
node-version-file:
description: Path to .nvmrc-like file
required: false
default: .nvmrc
pnpm-version:
description: pnpm version to use
required: false
default: "10"
install-dependencies:
description: Whether to run pnpm install --frozen-lockfile
required: false
default: "true"

runs:
using: composite
steps:
- name: Setup pnpm (via Corepack)
shell: bash
run: |
corepack enable
if [ -n "${{ inputs.pnpm-version }}" ]; then
corepack prepare pnpm@${{ inputs.pnpm-version }} --activate || corepack prepare pnpm@latest --activate
else
corepack prepare pnpm@latest --activate
fi

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: ${{ inputs.node-version-file }}
cache: pnpm

- name: Enable corepack
shell: bash
run: corepack enable

- name: Install dependencies
if: ${{ inputs.install-dependencies == 'true' }}
shell: bash
run: pnpm install --frozen-lockfile
43 changes: 43 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Lint

on:
pull_request:

permissions:
contents: read

concurrency:
group: lint-${{ github.ref }}
cancel-in-progress: true

jobs:
lint:
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Enable Corepack and prepare pnpm
run: corepack enable && corepack prepare pnpm@10 --activate

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: pnpm

- name: Install dependencies
run: pnpm install --frozen-lockfile

- name: Format check
run: pnpm run format:check

- name: Lint HTML
run: pnpm run lint:html

- name: Lint JS
run: pnpm run lint:js

- name: Lint CSS
run: pnpm run lint:css
56 changes: 56 additions & 0 deletions .github/workflows/pages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Deploy to GitHub Pages

on:
workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: pages
cancel-in-progress: true

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Enable Corepack and prepare pnpm
run: corepack enable && corepack prepare pnpm@10 --activate

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: pnpm

- name: Install dependencies
run: pnpm install --frozen-lockfile

- name: Build
run: pnpm run build

- name: Setup Pages
uses: actions/configure-pages@v5

- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: dist

deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build

steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
115 changes: 115 additions & 0 deletions .github/workflows/preview.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
name: Preview

on:
pull_request:
types: [opened, synchronize, reopened, closed]

permissions:
contents: write
pull-requests: write

concurrency:
group: preview-${{ github.ref }}
cancel-in-progress: true

jobs:
# ── Deploy preview on open / push ─────────────────────────────────────────
deploy:
if: github.event.action != 'closed'
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Enable Corepack and prepare pnpm
run: corepack enable && corepack prepare pnpm@10 --activate

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: pnpm

- name: Install dependencies
run: pnpm install --frozen-lockfile

- name: Build
run: pnpm run build

- name: Publish preview to gh-pages
env:
BRANCH: ${{ github.head_ref }}
run: |
git config user.name "${{ github.actor }}"
git config user.email "${{ github.actor }}@users.noreply.github.com"

# stash the build output outside the working tree
DIST=$(mktemp -d)
cp -r dist/. "$DIST/"

# switch to gh-pages (create orphan if it doesn't exist yet)
git fetch origin gh-pages 2>/dev/null && git checkout gh-pages || \
git checkout --orphan gh-pages && git rm -rf . --quiet

# sync the preview subfolder
rm -rf "previews/${BRANCH}"
mkdir -p "previews/${BRANCH}"
cp -r "$DIST/." "previews/${BRANCH}/"

# ensure GitHub Pages doesn't skip underscore/dot folders
touch .nojekyll

git add .nojekyll "previews/${BRANCH}"
git diff --cached --quiet || \
git commit -m "ci(preview): update ${BRANCH}"
git push origin gh-pages

- name: Comment preview URL on PR
uses: actions/github-script@v7
with:
script: |
const owner = context.repo.owner;
const repo = context.repo.repo;
const branch = '${{ github.head_ref }}';
const url = `https://${owner}.github.io/${repo}/previews/${branch}/`;
const marker = '<!-- preview-bot -->';
const body = `${marker}\n🔍 **Preview:** [${url}](${url})`;

const comments = await github.rest.issues.listComments({
owner, repo, issue_number: context.issue.number,
});
const existing = comments.data.find(c => c.body.includes(marker));

if (existing) {
await github.rest.issues.updateComment({
owner, repo, comment_id: existing.id, body,
});
} else {
await github.rest.issues.createComment({
owner, repo, issue_number: context.issue.number, body,
});
}

# ── Cleanup preview when PR is closed / merged ────────────────────────────
cleanup:
if: github.event.action == 'closed'
runs-on: ubuntu-latest

steps:
- name: Checkout gh-pages branch
uses: actions/checkout@v4
with:
ref: gh-pages

- name: Remove preview folder
run: |
if [ -d "previews/${{ github.head_ref }}" ]; then
git config user.name "${{ github.actor }}"
git config user.email "${{ github.actor }}@users.noreply.github.com"
git rm -rf "previews/${{ github.head_ref }}"
git commit -m "ci(preview): remove ${{ github.head_ref }}"
git push
else
echo "No preview to remove for ${{ github.head_ref }}"
fi
39 changes: 0 additions & 39 deletions .github/workflows/publish-release.yml

This file was deleted.

26 changes: 20 additions & 6 deletions .github/workflows/update_docs.yml
Original file line number Diff line number Diff line change
@@ -1,27 +1,41 @@
name: Update documentation

on:
workflow_dispatch:

permissions:
contents: write

concurrency:
group: update-docs
cancel-in-progress: true

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
fetch-depth: 0
ref: main
- name: Use Node.js 14.x 🪢
uses: actions/setup-node@v1

- name: Set up Node.js environment
uses: ./.github/actions/node_env_setup
with:
node-version: 14.x
node-version-file: .nvmrc
pnpm-version: "10"
install-dependencies: "true"

- name: git config
run: |
git config user.name "${GITHUB_ACTOR}"
git config user.email "${GITHUB_ACTOR}@users.noreply.github.com"

- run: sudo apt-get update && sudo apt-get install -y zip
- run: npm ci

- name: Publish on gh-pages
run: |
git remote set-url origin https://git:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git
npm run documentation-deploy-to-gh-pages
pnpm run documentation-deploy-to-gh-pages
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5 changes: 2 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
node_modules/
dist/
.DS_Store
node_modules
src/index.html
dist
6 changes: 6 additions & 0 deletions .htmlvalidate.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"extends": ["html-validate:recommended"],
"rules": {
"void-style": ["error", { "style": "selfclosing" }]
}
}
9 changes: 9 additions & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/usr/bin/env sh
. "$(dirname "$0")/_/husky.sh"
#
#!/usr/bin/env sh
. "$(dirname "$0")/_/husky.sh"

# Use pnpm to run lint-staged without attempting a global exec install
# `pnpm -s lint-staged` runs the script silently and works across pnpm versions
pnpm -s lint-staged
Loading