M.O.T.I.P.M. Translation is a GitHub Pages site template that turns a folder of plain-text chapter files into a complete, chaptered web-novel reading site, originally built for the community translation of Mysteries Of Immortal Puppet Master. The repository is both the production website and the template: you can publish new chapters by adding a .txt file and running the Python script, or strip the branding and repurpose the whole thing for a different book.
What is M.O.T.I.P.M. Translation?
It is a static, self-hosted website generator for serialized text, running entirely on GitHub Pages with no server or database. Its input is a folder of .txt chapter files (one file per chapter, named by chapter number, e.g. 300.txt) plus a template.html shell; its output is a homepage with a chapter index and a /read folder containing one generated HTML page per chapter. The site was made by the translation team behind the novel to publish Mysteries Of Immortal Puppet Master, but the README documents how to adapt it.
Key Features
- Automatic chapter page generation — UpdateWebsite.py reads the /chapters folder, generates a chapter index, and rebuilds every HTML page in /read using template.html as a base; it also deletes pages for chapters that have been removed or renamed.
- Plain-text chapter storage — Chapters are dropped in as .txt files; the first line of each file is used as the chapter headline, and filenames support integers (300.txt) and floats for sub-chapters or author notes.
- Built-in book volume splitting — The script.js file holds a chaptersPerBook array, an ordered list of chapter cutoff points, which groups chapters into separate books (for example, [232, 500]).
- Template-based theming — All shared CSS and resources live in /read/template; generated chapter files in /read are overwritten each build, so any style changes must be made in the template folder.
- Social sharing meta tags — Both the homepage and chapter template include og:image and meta description tags, configured with an imgur-hosted cover image for link previews in Discord, Facebook, and other platforms.
- Easy publishing workflow — Since it's a GitHub Pages site, pushing updated .txt files and the regenerated HTML to the repository immediately publishes the new chapters.
- Reusable for other books — The README gives step-by-step instructions for replacing cover images (pp1.webp, banner50percent.webp, cover50.webp), updating the title, author link, and synopsis, and changing the base_title variable in UpdateWebsite.py so chapter pages show your book's name.
Who is it for?
- Fan translation teams — They can host a continually updated novel translation, with contributors submitting plain-text chapters that get auto-indexed by the script before publication.
- Self-published authors — Someone writing a web serial or epub-less book could repurpose the template to display their own chapters and cover imagery with a consistent reader layout.
- Hobbyist developers — A person comfortable editing HTML, JavaScript, and a Python script can customize the reader to their liking, but the README warns the current configuration is cluttered and time-consuming to change.
What can you do with it?
- Publish new chapters in minutes: Add the chapter as a numbered .txt file in /chapters, run UpdateWebsite.py on your local machine, then push the generated HTML to GitHub to update the live site.
- Adapt it to another web novel: Follow the README's conversion steps: swap the three webp cover images, edit the title, author, and synopsis in index.html and template.html, and change the Python script's base_title variable.
- Style the reader without touching generated files: All design changes belong in the /read/template folder; the build script replaces anything outside it, so edits there survive regeneration.
How does it work?
The workflow is a short build loop. First, drop a chapter's .txt file into /chapters with the filename set to the chapter number. Then run UpdateWebsite.py, which rebuilds the homepage index and each chapter page inside /read using template.html as the layout. When a new book volume begins, you update the chaptersPerBook array in script.js to set the cutoff points. Finally, commit the changed files to the GitHub repository, and GitHub Pages serves the static site.
Pros and cons
- Pros: Static output means fast loading and no server maintenance; GitHub Pages provides free hosting; chapters are stored as simple .txt files; the script automatically handles the index and chapters that are added, renamed, or removed.
- Cons: Adapting the template to another book requires manual edits across index.html, template.html, script.js, and UpdateWebsite.py; the author describes the configuration as having so many variables that it takes hours to set up for a different book. There is no admin panel or visual editor.
Pricing
The template is free to use. It is a public repository intended for GitHub Pages, a free static hosting service; no paid tiers, premium features, or licensing fees are mentioned anywhere in the README.
FAQ
How do I add a new chapter to the site?
Add a .txt file to the /chapters folder, name it after the chapter number (for example, 450.txt), then run UpdateWebsite.py. The script regenerates the chapter index and all HTML pages. Commit the changes to GitHub to publish.
Can I use this template for my own book?
Yes. The README includes a section called Steps to convert this site into displaying your own book. You will replace the cover images, edit the title, author link, and synopsis in index.html and template.html, and change the base_title variable in UpdateWebsite.py. It is a manual process, not a configuration file.
What file format do chapters need?
Chapters must be plain .txt files, one per chapter. The first line of each file becomes the headline on the page. Filenames should be the chapter number, and floats are supported for sub-chapters or author notes.
Why must I avoid editing .css files outside the /template folder?
UpdateWebsite.py regenerates and overwrites all HTML files in /read, and the README states that any CSS outside the /template folder will be deleted and replaced by the script. To make lasting style changes, edit the shared files inside /read/template.
Does the site support social previews?
Yes. Both the homepage and chapter template contain meta og:image tags, using an imgur-hosted cover image as the preview. The README explains the image appears when a link is shared on Discord, Facebook, and web browsers other than Google.





