GitPedia

PrettyScribe

Pretty-printer for Battlescribe Warhammer 40k, Kill Team and Age of Sigmar rosters.

From rweyrauch·Updated June 24, 2026·View on GitHub·

PrettyScribe is a simple single-page web application that renders BattleScribe roster files in a (hopefully) useful format for viewing on device or printing. The PrettyScribe application is inspired by the (poorly named but quite useful) ButtScribe, http://www.buttscri.be/, application. The project is written primarily in TypeScript, distributed under the ISC License license, first published in 2020. Key topics include: age-of-sigmar, battlescribe, killteam, typescript, warcry.

PrettyScribe

PrettyScribe is a simple single-page web application that renders BattleScribe roster files in
a (hopefully) useful format for viewing on device or printing. The PrettyScribe application
is inspired by the (poorly named but quite useful) ButtScribe, http://www.buttscri.be/, application.

Currently PrettyScribe supports roster files for Warhammer 40k, Warhammer 40k Kill Team,
Warhammer Age of Sigmar, Warhammer Warcry and Warhammer 30k.

This work was started as an exercise in learning web-development (Javascript, Typescript, etc.) and
a passion for the table-top wargamming hobby in general.

PrettyScribe is very much a work in progress. Suggestions, bugs, comments are welcomed.

If you actually use this tool and find it useful let me know.

Building

Quick Start

Prettyscribe is written in Typescript and uses npm for initialization, compiling and launching a
dev server at http://localhost:8080.

$ git clone https://github.com/rweyrauch/PrettyScribe.git
$ cd PrettyScribe
$ npm install
$ npm run dev

Details

Prettyscribe uses Vite for compilation of the Typescript into Javascript and bundling.

To build PrettyScribe:

$ npm run build

To preview the production build locally:

$ npm run preview

Tests

Prettyscribe uses jasmine tests to validate roster parsing. Test rosters live under the test/
directory. Test specs live under spec/ and are generated via a command, but should be reviewed
manually to verify changes.

Only 40k has tests, and parsing fixes must include minimal rosters and specs verifying the fix.

To run PrettyScribe tests:

$ npm test

To (re)generate PrettyScribe tests:

$ npm run writetests

Contributors

Showing top 7 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from rweyrauch/PrettyScribe via the GitHub API.Last fetched: 6/26/2026