尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗A one-page site for author Jan Stenborg (Stridslarm, Jagad, Kungablod). Swedish is the main language, with an English version one click away.
It's plain HTML and CSS with no build step: open index.html in a browser to see it, or upload the folder to any web host (for example GitHub Pages).
The full design plan is in docs/EXPERIENCE.md, the art direction for the opening screen in docs/HERO.md, how everything moves in docs/MOTION.md, the creative audit in docs/AUDIT.md, and the launch audit with the launch checklist in docs/LAUNCH.md. tests/qa.mjs reruns every check (instructions in LAUNCH.md §3).
Menu: on desktop the links sit in the top bar. On phones and small tablets (up to 900px wide), they move into a full-screen chapter menu behind the ☰ button, together with the language switch. Its links are in index.html just below the header; keep them in step with the desktop links.
Books are a trilogy shelf on every device: three 3D books side by side, each backlit in its own colour (ember, moss, dawn). Choosing one lifts it into its light and shows its details below. It works like tabs: arrow keys move between books. To add a book, add a button in shelf-books and a matching panel in shelf-panels.
Blog and FAQ: the blog lives at /blogg/ (an index and one folder per article) and the FAQ at /fragor/. Their text is kept in tools/content.py. To change an article or a question, or to add one, edit that file and run python3 tools/build_pages.py, which rewrites the pages. The pages share the site's styles, menu and language switch.
The excerpt from Stridslarm (with Jan's blessing): open tools/content.py, scroll to the end, and paste the foreword into EXCERPT_FOREWORD and the opening of chapter 1 into EXCERPT_CHAPTER, exactly as in the book, with a blank line between paragraphs. Then run python3 tools/build_pages.py. That builds /blogg/las-borjan-pa-stridslarm/, adds a "Läs början av boken" link on Stridslarm and puts the page in the sitemap. Empty the slots and run it again to take the excerpt down.
Section headings are chapters: a roman numeral, a short label and a headline. Copy an existing <header class="chapter"> block to add one.
Motion in short: anything with data-reveal fades up the first time it scrolls into view. Use data-reveal="title" on headings and data-reveal="wipe" on pictures. Visitors who turn off motion on their device get a still version.
The opening scene (sky, sun, ships, sea) is drawn entirely in code inside the HERO section of index.html and styles.css. The only picture in it is the Kungablod cover. The sunrise entrance plays on every page load. After it, the scene keeps a slow life of its own: drifting mist, glinting water, the book floating, and a glint passing over the title every few seconds. All of it stops for visitors who turn off motion on their device.
| File | What it is |
|---|---|
index.html | All the page text and sections, plus the information for Google (in <head>) |
styles.css | Look and layout. Colours are at the top |
boot.js | Runs first: picks the language and prepares the entrance (kept as a file for the security policy) |
script.js | Language switch, signing dates, Share button, phone action bar, motion, analytics events |
vercel.json | Hosting settings: security headers and caching |
images/ | Each picture comes in three formats (.avif, .webp, .jpg) and several sizes. Browsers pick the smallest that works |
fonts/ | Cinzel and EB Garamond (free fonts under the SIL Open Font License), hosted with the site |
events/ | Calendar file for the Add to calendar button |
Every piece of text is written twice, side by side:
<span lang="sv">Ny bok</span><span lang="en">New book</span>
Change both. Image descriptions work the same way: alt="..." is Swedish, data-alt-en="..." is English.
The site always opens in Swedish. English shows when a visitor presses EN, which is then remembered, or when the address ends in ?lang=en, useful for sharing with English speakers.
The page changes by itself around the signing:
To preview the other states, add ?event=today or ?event=past to the address.
If the time or place changes, update all three:
data-event-start / data-event-end on <article class="event"> in index.htmlEvent block in the <script type="application/ld+json"> in <head>events/kungablod-signering.ics (times are in UTC: 13.00 Stockholm time in November is 120000Z)The end time, 15.00, is a guess. Check it with Twang.
Parts of the page marked data-show="upcoming", "today" or "past" only appear at that time. Use the same marks for future events.
Put the original .jpg in images/, then make the smaller versions. With Python and Pillow installed:
python3 -c "from PIL import Image; im=Image.open('images/NAME.jpg'); [im.resize((w, round(im.height*w/im.width))).save(f'images/NAME-{w}.{ext}') for w in (320, 480) for ext in ('avif','webp')]"
Then copy one of the existing <picture> blocks and change the file names.
https://...) in front of images/share.jpg in the og:image line and in front of the image paths in the Google information block. Facebook and Google need full addresses.[email protected], taken from the old Stonecastle site. Check it's still in use.<!-- Book: Kungablod --> block when they exist.Open index.html directly, or run a local server from this folder:
python3 -m http.server 8000
Then visit http://localhost:8000.