README.md (2023B)
1 # typst-githubrun-template 2 3 This repository provides a template for a GitHub Action that automates the process of compiling **Typst** documents into PDFs. When you push changes to your repository, this workflow automatically generates a PDF from your `.typ` files and uploads it as a **GitHub Artifact**. 4 5 ## What is Typst? 6 7 `Typst` is a new, web-first markup-based typesetting system. It's designed to be powerful and easy to use, providing a modern alternative to traditional tools like LaTeX. You can learn more about it on the [official Typst website](https://typst.app/). 8 9 # Getting Started 10 11 1. Click the `Use this template` button at the top of this repository to create a new repository based on this template. 12 2. Set up self hosted runner. In The repository's setting tab, you can click actions and select runner setting. you will see a button of adding new self hosted runner. 13 3. Put your `.typ` files in your repository. 14 4. The workflow will run automatically on the first push and subsequent pushes. You can find the generated PDF in the **Actions** tab's Artifact of your repository. 15 16 # LICENSE 17 I provide this with MIT LICENSE. 18 19 # Font Setting 20 ## Default 21 These fonts are available 22 - DejaVu Sans 23 - DejaVu Sans Mono 24 - DejaVu Serif 25 - Libertinus Serif 26 - New Computer Modern 27 - New Computer Modern Math 28 - Noto Sans CJK JP 29 But,`Noto Sans CJK JP` is not typst default font. 30 So if you could use the font on Self hosted runner, you have to install(put font file in `~/.fonts`) that.You can see link of that in ReleaseBuild.yaml 31 If you want to use additional fonts, you can set up it. 32 ## On Self hosted runner 33 Only you have to do is that download font and put it in ~/.fonts/ 34 ## On Github Runner 35 You have to add code of font download to workflows file. 36 37 # Release 38 This repo is set up for release build. 39 It runs on GitHub hosted runner, and static(it does not depend on the situation of self-hosted server). 40 41 ## how to create release with ReleaseBuild 42 Create Release tag named `*.*.*`. 43 And create Release with that tag.