Typst-ucas-thesis

UCAS thesis Template Based on Typst

UCAS Thesis Typst Template

Project Status

🚧 Project Status: In Progress 🚧

Alt

Paper Requirements & Page Setup

  • βœ… Page size and margin adjustment.
  • πŸ”„ Header and footer styles.

Cover and Spine

  • βœ… Basic cover information (title, author, supervisor, etc.).
  • πŸ”„ Cover style optimization
  • πŸ•’ Spine generation

Abstract and Keywords

  • βœ… Chinese and English abstract templates.
  • πŸ•’ Abstract style optimization

Table of Contents

  • βœ… Table of contents functionality.
  • πŸ”„ Table of contents style optimization
  • πŸ•’ Page number alignment optimization.

Main Text

  • πŸ•’ Heading style and paragraph spacing optimization.
  • πŸ•’ Figure and table style optimization

Others

  • πŸ•’ Reference style optimization.
  • πŸ•’ Appendix and postscript templates.
  • πŸ•’ Author’s CV and academic achievements during degree period
  • πŸ•’ Support for multiple bibliography styles.

Developer Guide

template directory

  • thesis.typ file: Your thesis source file. You can freely change the name of this file, or even copy it multiple times in the same directory to maintain multiple versions.
  • ref.bib file: Used for references.
  • images directory: Used for images.

Internal directories

  • utils directory: Contains various custom helper functions used by the template, with no external dependencies, and functions that do not render pages.
  • pages directory: Contains independent pages used by the template, such as cover, declaration, abstract, etc., i.e., functions that render independent pages without affecting others.
  • layouts directory: Layout directory, containing functions that span multiple pages and are applied via the show directive, such as the preface function for Roman numeral footers.
    • Mainly divided into doc (document), preface, mainmatter (main text), and appendix (appendix/postscript).
  • lib.typ:
    • Role 1: Acts as a unified external interface, exposing internal utils functions.
    • Role 2: Uses function closures to configure global information via the documentclass function, then exposes internal layouts and pages functions with global configuration.

Acknowledgements

License

This project is licensed under the MIT License.