flatten monorepo, migrate off Vercel
- Remove penfield (split to own repo on Forgejo) - Move www/ contents to root, rename to wynne.rs - Swap @astrojs/vercel for @astrojs/node, upgrade to Astro 6 - Remove auth-astro/GitHub OAuth (TinyAuth at proxy layer) - Remove Vercel deploy webhook - Switch to local SQLite DB (drop Turso) - Update generate-stats.js for new build output paths
This commit is contained in:
parent
f2acf36784
commit
8a9c56c3d5
52 changed files with 45 additions and 7135 deletions
5
public/changelog.txt
Normal file
5
public/changelog.txt
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
2026-03-27 - narrower layout (34rem), single-column entries, serif font, smaller muted text
|
||||
2026-03-26 - inline section labels, compact layout
|
||||
2026-02-07 - related posts !
|
||||
2026-01-31 - text files now live at cleaner URLs (/*.txt instead of /txt/*.txt)
|
||||
2026-01-23 - hello. we've got the skeleton of something here
|
||||
12
public/config.yaml
Normal file
12
public/config.yaml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
descriptions:
|
||||
cv.txt: curriculum vitae
|
||||
now.txt: what i'm doing now
|
||||
man.txt: manual page
|
||||
changelog.txt: site changelog
|
||||
stats.txt: site statistics
|
||||
dates:
|
||||
changelog.txt: 2026-01-23
|
||||
cv.txt: 2026-01-23
|
||||
man.txt: 2026-03-26
|
||||
now.txt: 2026-01-23
|
||||
stats.txt: 2026-01-23
|
||||
6
public/cv.txt
Normal file
6
public/cv.txt
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
lewis@wynne.rs
|
||||
|
||||
swe@thecodeguy 2025-now
|
||||
python@tcz 2024-2025
|
||||
freelance swe 2020-2024
|
||||
1st class cyber 2020
|
||||
64
public/js/params.js
Normal file
64
public/js/params.js
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
!function() {
|
||||
var p = new URLSearchParams(location.search);
|
||||
|
||||
var just = p.get('just');
|
||||
if (just && /^[a-z0-9-]+$/.test(just)) {
|
||||
document.documentElement.dataset.just = just;
|
||||
var css = 'section[data-section]:not([data-section="' + just + '"]){display:none}';
|
||||
document.head.appendChild(Object.assign(document.createElement('style'), { textContent: css }));
|
||||
}
|
||||
|
||||
var act = p.get('do');
|
||||
var urls = window.__urls;
|
||||
if (urls && urls.length) {
|
||||
if (act === 'random') {
|
||||
var url = urls[Math.floor(Math.random() * urls.length)];
|
||||
location.replace(url.startsWith('http') ? url : location.origin + url);
|
||||
}
|
||||
if (act === 'newest') {
|
||||
location.replace(urls[0].startsWith('http') ? urls[0] : location.origin + urls[0]);
|
||||
}
|
||||
}
|
||||
if (act === 'admin') {
|
||||
location.replace('/admin');
|
||||
}
|
||||
|
||||
if (p.has('compact')) document.documentElement.dataset.compact = '';
|
||||
|
||||
var has = p.get('has');
|
||||
if (has) {
|
||||
document.documentElement.dataset.has = has;
|
||||
has = has.toLowerCase();
|
||||
}
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
if (has) {
|
||||
document.querySelectorAll('section[data-section] .entry').forEach(function(entry) {
|
||||
if (entry.textContent.toLowerCase().indexOf(has) === -1) {
|
||||
entry.style.display = 'none';
|
||||
}
|
||||
});
|
||||
document.querySelectorAll('.guestbook-entry').forEach(function(entry) {
|
||||
if (entry.textContent.toLowerCase().indexOf(has) === -1) {
|
||||
entry.style.display = 'none';
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
document.querySelectorAll('.section-label').forEach(function(a) {
|
||||
var link = new URLSearchParams(a.search);
|
||||
p.forEach(function(v, k) { if (!link.has(k)) link.set(k, v); });
|
||||
a.href = '?' + link.toString();
|
||||
});
|
||||
|
||||
var find = document.getElementById('find');
|
||||
if (find) find.addEventListener('click', function(e) {
|
||||
e.preventDefault();
|
||||
var term = prompt('find:');
|
||||
if (!term) return;
|
||||
var q = new URLSearchParams(location.search);
|
||||
q.set('has', term);
|
||||
location.search = q.toString();
|
||||
});
|
||||
});
|
||||
}();
|
||||
46
public/man.txt
Normal file
46
public/man.txt
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
WYNNE.RS(7) Personal Sites Manual WYNNE.RS(7)
|
||||
|
||||
NAME
|
||||
wynne.rs — personal website of lewis m.w.
|
||||
|
||||
SYNOPSIS
|
||||
wynne.rs [?just=SECTION] [?has=TERM] [?do=ACTION] [?compact]
|
||||
|
||||
DESCRIPTION
|
||||
A personal website limited to some made-up, arbitrary design
|
||||
principles to keep things minimal. An experiment in doing as
|
||||
much as possible with as few distinct routes as I can. As it
|
||||
stands there is an index page with a list of all the content
|
||||
on the site, and a [slug]. Anything interesting is done with
|
||||
search parameters. Rather than a search page or an index for
|
||||
content categories, the queries below can be used. They tend
|
||||
to all modify data classes to show/hide content on the index.
|
||||
|
||||
OPTIONS
|
||||
?just=SECTION
|
||||
Display only the named section.
|
||||
|
||||
?has=TERM
|
||||
Filter entries to those containing TERM.
|
||||
|
||||
?do=random
|
||||
Redirect to a random entry.
|
||||
|
||||
?do=newest
|
||||
Redirect to the most recent entry.
|
||||
|
||||
?compact
|
||||
Hide section labels and dates.
|
||||
|
||||
PUBLIC FILES
|
||||
cv.txt Curriculum vitae.
|
||||
now.txt What I'm doing now.
|
||||
changelog.txt Site changelog. I forget to update this often.
|
||||
stats.txt Site statistics. Generated at build-time.
|
||||
man.txt This man page.
|
||||
|
||||
SEE ALSO
|
||||
source https://github.com/llywelwyn/wynne.rs
|
||||
|
||||
AUTHOR
|
||||
lewis m.w. <lewis@wynne.rs>
|
||||
12
public/now.txt
Normal file
12
public/now.txt
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
26/03/26
|
||||
|
||||
still moving house. this one is mostly
|
||||
empty at this point; anything we don't
|
||||
need got thrown away, and things i can
|
||||
live without for a while got taken and
|
||||
put in storage closer to the new house
|
||||
|
||||
seven months and counting+
|
||||
|
||||
cheers,
|
||||
lew
|
||||
12
public/stats.txt
Normal file
12
public/stats.txt
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
this site consists of [WORDS] words across [PAGES] pages
|
||||
|
||||
there are [POSTS] blog posts
|
||||
[TXT] txt files
|
||||
and [BOOKMARKS] bookmarks
|
||||
|
||||
[GUESTBOOK] people have signed the guestbook
|
||||
|
||||
this file was generated automatically on deploy
|
||||
|
||||
cheers,
|
||||
lewis
|
||||
Loading…
Add table
Add a link
Reference in a new issue