Shin – Der Seelenlose
Author website for a dark fantasy samurai saga.
- Year
- 2026
- Duration
- Built in 1 week · launches with the book
- Team
- Mahere, for an author
- Status
- Coming Soon
Scope, speed, and what we delivered.
- Domains, one codebaseDomains, eine Codebasis
- 2
- LanguagesSprachen
- 2
- From spec to live previewVon Spec bis Live-Vorschau
- 1 wk
- MahereMahere 100%
Built for an author from the team's written spec; illustrations, cover and copy come from the author.Für einen Autor nach der schriftlichen Spec des Teams gebaut; Illustrationen, Cover und Texte kommen vom Autor.
A launch website for a book, a brand, or a product: bilingual from day one, two domains on one codebase, fast and ad-free on the edge.Eine Launch-Website für ein Buch, eine Marke oder ein Produkt: zweisprachig von Anfang an, zwei Domains auf einer Codebasis, schnell und werbefrei auf der Edge.
What is Shin – Der Seelenlose?
Shin – Der Seelenlose is a dark fantasy samurai saga by a befriended author. The website is a single long page that walks visitors from the hero artwork through story, characters, the city of Akamori, and the first volume to a newsletter signup. It is served in German on shinderseelenlose.de and in English on shinthesoulless.com, both from the same build.
The problem we set out to solve.
The author's team delivered a detailed spec: a fixed section order, a colour and typography lock, transition rules between sections, and a hard rule against inventing lore, images, or titles. On top of that, both domains had to show both languages while search engines see exactly one canonical address per language, and nothing may go public before every launch gate is closed.
How we built it.
A static Astro site in strict TypeScript with the copy for both languages in typed files, so a missing text is a compile error. A small Cloudflare Worker in front of the static assets only does routing: www to apex, the domain picks the default language, and each domain gets its own sitemap. Canonical and hreflang always point to the right domain. A verify script blocks a production build while placeholders or required links are still open, and GitHub Actions deploys every push to main.
See it in action.
Under the hood.
- Frontend
- Astro 7, TypeScript (strict), no UI framework
- Images
- astro:assets, AVIF + WebP, responsive sizes
- Fonts
- Cormorant Garamond + Source Sans 3, self-hosted
- Hosting
- Cloudflare Workers Static Assets, router worker
- i18n
- DE + EN, typed copy, canonical per language
- SEO
- hreflang, sitemap per domain, Book schema
- Deploy
- GitHub Actions on push to main
What we paid attention to.
- 01
Nothing is invented
Every image, name and line of copy comes from the author. Open items stay visible placeholders, and the production build refuses to ship while any of them remain.
- 02
Desktop is frozen, mobile is tuned
After the team signed off the desktop layout, responsive work happens only inside the tablet and mobile breakpoints, and page heights are checked against the freeze after every change.
Where we are today.
Both domains are live as a non-indexed preview with the final desktop layout. The site goes public together with the book, once copy, shop links and legal pages are in.