Rename Basking to Nurse

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
VeillaxandClaude Sonnet 5.5 committed 2026-11-01 00:06:51 -06:00
1 parent cec2702260
commit 6a4be5b2f4
24 files changed
+208 -208

No files matched your search

+9 -9
View File
@@ -33,10 +33,10 @@ onSignedOut = () => { if (S.ready && ![...S.editors].some(e => e.dirty())) { S.r
// ---------- signing in ----------
const SIGNIN_MESSAGES = {
denied: 'This account is not allowed to open this notebook. Ask whoever runs Basking to add you.',
denied: 'This account is not allowed to open this notebook. Ask whoever runs Nurse to add you.',
failed: 'Signing in did not finish. Please try again.',
expired: 'That sign-in took too long. Please try again.',
unavailable: 'Basking could not reach Authentik. Try again in a moment.',
unavailable: 'Nurse could not reach Authentik. Try again in a moment.',
};
async function boot() {
@@ -54,7 +54,7 @@ async function boot() {
}
function showLogin(why) {
S.editors.clear(); S.view = null; document.title = 'Sign in · Basking';
S.editors.clear(); S.view = null; document.title = 'Sign in · Nurse';
const next = location.hash.length > 2 ? location.hash : '';
$app.replaceChildren(h('main', { class: 'center' }, card('', brand(),
h('h1', { class: 'login-h' }, 'Your private notebook'),
@@ -180,7 +180,7 @@ async function show() {
}
S.view = page;
main.replaceChildren(page.el);
document.title = (page.title ? page.title + ' · ' : '') + 'Basking';
document.title = (page.title ? page.title + ' · ' : '') + 'Nurse';
window.scrollTo(0, 0);
page.start?.();
}
@@ -250,11 +250,11 @@ function pageView({ id, date, parent = '' }) {
view.title = date ? dayLabel(date) : n?.name || 'New page';
ed = pageEditor({
note: n, parent, fixedTitle: date ? parseDay(date).toLocaleDateString(undefined, { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }) : undefined,
onCreated(c) { note = c; history.replaceState(null, '', '#/p/' + c.id); document.title = (c.name || 'New page') + ' · Basking'; drawActions(); drawCrumbs(); refreshPages(); },
onCreated(c) { note = c; history.replaceState(null, '', '#/p/' + c.id); document.title = (c.name || 'New page') + ' · Nurse'; drawActions(); drawCrumbs(); refreshPages(); },
onSaved(c, { renamed }) {
note = c; if (c.backlinks) backlinks = c.backlinks;
drawTags(); drawAside(); drawMeta(); drawActions();
document.title = (c.name || 'New page') + ' · Basking';
document.title = (c.name || 'New page') + ' · Nurse';
renamed ? refreshPages().catch(() => { }) : refreshSoon();
},
});
@@ -267,7 +267,7 @@ function pageView({ id, date, parent = '' }) {
fill(body, ed.notice, title, date ? h('h1', { class: 'day-title' }, ed.titleEl.value) : null, ed.wrap, tagsRow, asideBox, meta);
ed.setMode(start);
drawCrumbs(); drawTags(); drawAside(); drawMeta(); drawActions();
document.title = view.title + ' · Basking';
document.title = view.title + ' · Nurse';
// keep the person's choice of Write or Read once they have made one
const set = ed.setMode; ed.setMode = m => { store.set('mode', m); set(m); };
if (!n) setTimeout(() => ed.titleEl.focus());
@@ -547,7 +547,7 @@ function settingsPage() {
title: 'Settings',
el: h('div', {}, pageHeader('Settings', 'Who you are signed in as, and a copy of everything.'),
card('Account', h('p', {}, 'You are signed in as ', h('strong', {}, S.me.name), S.me.email ? ' (' + S.me.email + ')' : '', ' through Authentik.'),
h('p', { class: 'dim' }, 'Basking has no password of its own. Who can sign in is decided in Authentik, and your pages are visible to you alone.'),
h('p', { class: 'dim' }, 'Nurse has no password of its own. Who can sign in is decided in Authentik, and your pages are visible to you alone.'),
btn('Sign out', 'out', act(async () => { await flushAll(); await api('POST', '/api/logout'); S.ready = false; S.editors.clear(); showLogin(); }))),
card('Your notes', h('p', { class: 'dim' }, 'Download every page as a folder of markdown files. It opens as a vault in Obsidian, with your [[links]] and journal intact.'),
btn('Download all pages', 'download', () => { location.href = '/api/export'; })),
@@ -555,7 +555,7 @@ function settingsPage() {
row('Ctrl K', 'Search pages, or make a new one'), row('c', 'New page'), row('n', 'Jot a quick note'),
row('Ctrl E', 'Switch between editing and View'), row('/', 'In a page: commands. Anywhere else: search'),
row('[[', 'In a page: link to another page'), row('Ctrl B, Ctrl I', 'Bold, italic'), row('Tab', 'In a list: indent'))),
card('Privacy', h('p', { class: 'dim' }, 'Pages are stored as plain markdown files on the machine running Basking, under a folder only you map to. They are not encrypted on disk, so anyone who can read that machine can read them.'))),
card('Privacy', h('p', { class: 'dim' }, 'Pages are stored as plain markdown files on the machine running Nurse, under a folder only you map to. They are not encrypted on disk, so anyone who can read that machine can read them.'))),
};
}