No github

This commit is contained in:
Andras Schmelczer 2026-06-26 17:56:05 +02:00
parent 283df32afe
commit 1ea3024e4e
13 changed files with 28 additions and 28 deletions

View file

@ -58,6 +58,7 @@
"loggable",
"malloc",
"metas",
"mispredictions",
"mixolydian",
"mlockall",
"mosfets",
@ -68,6 +69,7 @@
"nums",
"permacomputing",
"physarum",
"piskel",
"pocketbase",
"powerups",
"proptest",
@ -92,6 +94,7 @@
"subvolume",
"syncer",
"szintű",
"tamagotchi",
"tamagotchis",
"tarjan's",
"tidepool",
@ -99,6 +102,7 @@
"tweakpane",
"unsets",
"vaultlink",
"vtable",
"waveshare",
"waveshare's",
"webform",

View file

@ -18,15 +18,16 @@
"qa:astro-audit": "node scripts/install-playwright-deps.mjs && node scripts/export-astro-audit.mjs --fail-on-issues",
"qa:no-em-dashes": "node scripts/check-no-em-dashes.mjs",
"qa:spelling": "cspell --no-progress \"astro.config.mjs\" \"src/**/*.{astro,ts,md,css}\" \"scripts/**/*.mjs\" \"*.md\"",
"qa:no-github-links": "node scripts/check-no-github-links.mjs",
"qa:links": "node scripts/check-links.mjs",
"qa:no-js": "node scripts/check-no-js.mjs",
"qa:overflow": "node scripts/install-playwright-deps.mjs && node scripts/check-overflow.mjs",
"qa:preview-cropping": "node scripts/install-playwright-deps.mjs && node scripts/check-preview-cropping.mjs",
"qa": "npm run typecheck && npm run lint && npm run qa:no-em-dashes && npm run qa:spelling && npm run build && npm run qa:astro-audit && npm run qa:links && npm run qa:no-js && npm run qa:overflow && npm run qa:preview-cropping"
"qa": "npm run typecheck && npm run lint && npm run qa:no-em-dashes && npm run qa:spelling && npm run qa:no-github-links && npm run build && npm run qa:astro-audit && npm run qa:links && npm run qa:no-js && npm run qa:overflow && npm run qa:preview-cropping"
},
"repository": {
"type": "git",
"url": "git+https://github.com/schmelczer/schmelczer.github.io.git"
"url": "git+https://git.schmelczer.dev/andras/schmelczer.dev.git"
},
"keywords": [
"blog",
@ -37,9 +38,9 @@
"author": "Andras Schmelczer",
"license": "GPL-3.0-or-later",
"bugs": {
"url": "https://github.com/schmelczer/schmelczer.github.io/issues"
"url": "https://git.schmelczer.dev/andras/schmelczer.dev/issues"
},
"homepage": "https://github.com/schmelczer/schmelczer.github.io#readme",
"homepage": "https://git.schmelczer.dev/andras/schmelczer.dev#readme",
"devDependencies": {
"@astrojs/check": "^0.9.9",
"@astrojs/rss": "^4.0.18",

View file

@ -15,7 +15,7 @@ const year = new Date().getFullYear();
<address class="footer-contact">
<a href={`mailto:${site.email}`}>Email</a>
<a href={site.cv} rel="noopener">CV</a>
<a href={site.github} rel="noopener me">GitHub</a>
<a href={site.git} rel="noopener me">Git</a>
<a href={site.linkedin} rel="noopener me">LinkedIn</a>
</address>
</div>

View file

@ -100,13 +100,7 @@ const mediaSchema = ({ image }: SchemaContext) =>
])
.refine((item) => item.decorative || (Boolean(item.alt) && Boolean(item.caption)), {
message: 'Meaningful media needs both alt text and a caption.',
})
.refine(
(item) => item.type !== 'video' || item.decorative || Boolean(item.transcript),
{
message: 'Meaningful video needs a transcript.',
}
);
});
// A single collection where each entry can carry an `article` facet (a written
// page under /articles/<slug>), a `project` facet (a card in the /projects/

Binary file not shown.

After

Width:  |  Height:  |  Size: 389 KiB

View file

@ -8,7 +8,7 @@ thumbnail:
alt: The Ad Astra game running on a small OLED display.
links:
- label: Source
url: https://github.com/schmelczer/ad_astra
url: https://git.schmelczer.dev/andras/ad_astra
article:
tags: ['embedded', 'games', 'systems']
stack: ['C', 'ATtiny85V', 'SPI OLED', 'IR receiver', 'EEPROM', 'KiCad']

View file

@ -8,17 +8,18 @@ thumbnail:
alt: Screenshot of the Avoid web game.
article:
tags: ['games', 'web']
role: Game author
stack: ['JavaScript', 'Canvas']
outcome: My first browser game; kept for the timeline, reused for teaching
audience: general
project:
description: My first browser game, kept around so the timeline is honest.
thumbnail:
alt: Screenshot of the Avoid canvas game.
project: {}
---
January 2018, my first browser game. You're a peach-coloured dot; red dots stream in from the edges and chase you; the score counts how many the game has dared to spawn so far. It isn't good. I keep it here because pretending the older work didn't happen would be revisionism, and because it marks the moment a `<canvas>` element stopped being mysterious to me.
January 2018, my first browser game. You're a dot; other dots stream in from the edges and chase you; the score counts how many the game has dared to spawn so far. It isn't good. I keep it here because pretending the older work didn't happen would be revisionism, and because it marks the moment a `<canvas>` element stopped being mysterious to me.
It had a second job, too. The README isn't documentation; it's the handout for a small JS/Canvas workshop, in Hungarian: what JavaScript is, what a 2D context gives you, why a game loop wants `requestAnimationFrame` and a delta time, why `var` is past tense. The little game turned out to be the right size for explaining things to people who'd never drawn a pixel from code before. The process advice in that handout (write working code first, then make it pretty) is still roughly the only process I follow.

View file

@ -8,9 +8,9 @@ thumbnail:
alt: Placeholder thumbnail for the backup container post.
links:
- label: Source
url: https://github.com/schmelczer/backup-container
url: https://git.schmelczer.dev/andras/backup-container
- label: Container image
url: https://github.com/schmelczer/backup-container/pkgs/container/backup-container
url: https://git.schmelczer.dev/andras/-/packages/container/backup-container
article:
tags: ['systems', 'tools']
stack: ['Bash', 'BorgBackup', 'BTRFS', 'Alpine', 'Docker', 'SSH', 'zstd']

View file

@ -8,7 +8,7 @@ thumbnail:
alt: The decla.red browser game interface showing a space scene.
links:
- label: Source
url: https://github.com/schmelczer/decla.red
url: https://git.schmelczer.dev/andras/decla.red
- label: BSc thesis
url: /media/downloads/sdf2d-andras-schmelczer.pdf
download: true

View file

@ -8,7 +8,7 @@ thumbnail:
alt: Life Towers goal tracking interface with tower-like visual structures.
links:
- label: Source
url: https://github.com/schmelczer/life-towers/
url: https://git.schmelczer.dev/andras/life-towers/
article:
featuredOrder: 4
tags: ['systems', 'web', 'tools']

View file

@ -10,7 +10,7 @@ links:
- label: Demo
url: /reconcile/
- label: Source
url: https://github.com/schmelczer/reconcile
url: https://git.schmelczer.dev/andras/reconcile
- label: crates.io
url: https://crates.io/crates/reconcile-text
- label: npm

View file

@ -8,7 +8,7 @@ thumbnail:
alt: 'The VaultLink logo: a chain-link mark in a soft gradient.'
links:
- label: Source
url: https://github.com/schmelczer/vault-link
url: https://git.schmelczer.dev/andras/vault-link
- label: Docs
url: https://vault-link.schmelczer.dev
article:

View file

@ -17,7 +17,7 @@ export const site = {
'Notebook of someone who keeps reaching for the same two moves: let the hard constraint pick the data structure, then keep the API small enough to defend.',
url: 'https://schmelczer.dev',
email: 'andras@schmelczer.dev',
github: 'https://github.com/schmelczer',
git: 'https://git.schmelczer.dev/andras',
linkedin: 'https://www.linkedin.com/in/andras-schmelczer',
cv: '/media/downloads/cv-andras-schmelczer.pdf',
};
@ -211,7 +211,7 @@ export function buildPersonJsonLd(extra?: Record<string, unknown>) {
name: site.name,
url: site.url,
email: `mailto:${site.email}`,
sameAs: [site.github, site.linkedin],
sameAs: [site.git, site.linkedin],
description: site.description,
...extra,
};