# Bachelor Thesis Template (Typst) – PedF UK This repository contains a **Typst** template for writing a Bachelor's thesis at the **Faculty of Education, Charles University (PedF UK)**. The template is designed to comply with the **Dean's Measure No. 28/2024** (Opatření děkana č. 28/2024), including specific requirements for: * **Typography:** Times New Roman, 12pt, 1.5 line spacing. * **Layout:** Margins (25mm/35mm) and mandatory section order. * **Formalities:** Title page without the university logo, specific AI usage declaration, and abstract formatting. ## Project Structure ```text . ├── fonts/ # Local directory for Times New Roman fonts │ └── Times New Roman... # Ensures correct compilation on any OS/Linux distro ├── main.typ # MAIN FILE: Edit your thesis content and metadata here ├── template.typ # STYLING: Definitions of layout, title page, and macros ├── Makefile # AUTOMATION: Build and watch commands └── .gitignore # Git configuration (ignores generated PDFs) ``` ## Prerequisites To work with this template, you need the following installed on your system: 1. **Typst** (CLI compiler) 2. **GNU Make** (to run the build commands) 3. **Zathura** (PDF viewer, recommended for the `watch` mode workflow) ## Usage This project uses a `Makefile` to handle font paths and compilation. Do not run `typst compile` directly unless you manually specify the font path. ### 1. Start Writing (Watch Mode) This is the main command for development. It compiles the document, opens **Zathura**, and automatically recompiles whenever you save changes in `main.typ`. ```bash make watch ``` ### 2. Build PDF (One-off) Generates the final `main.pdf`. ```bash make ``` ### 3. Clean Removes the generated PDF file. Recommended before the final build to ensure a clean state. ```bash make clean ``` ## How to Write ### Editing Metadata Open `main.typ`. At the top of the file, fill in the `project` function parameters: * **Title (CZ/EN):** Your thesis title. * **Author/Supervisor:** Names including titles. * **Abstracts & Keywords:** Ensure abstracts are at least 200 words long. ### Writing Content Write your text in `main.typ` after the header. * **Headings:** Use `=` for chapters, `==` for sections. * *Note:* The template automatically starts main chapters (Introduction, Conclusion, etc.) on a new page as required. * **Formatting:** * Bold: `*text*` * Italic: `_text_` * Citations: Use `@reference` (requires a `.bib` or `.yml` bibliography file). ### AI Declaration The template includes the mandatory **AI usage declaration** required by Dean's Measure No. 28/2024. * If you **did not** use AI: The standard declaration on the second page is sufficient. * If you **did** use AI (e.g., for grammar correction): You must also fill out the **"Vyjádření k využití nástrojů umělé inteligence"** section at the end of the thesis, describing exactly how the tools were used. ## fonts/ Directory The faculty requires **Times New Roman**. Since this font is proprietary and not available by default on many Linux distributions (like Void Linux), it is included in the `fonts/` directory. The `Makefile` ensures Typst uses these local fonts during compilation, making the project portable. ## Submission The final output is `main.pdf`. This file is ready for upload to the **Student Information System (SIS)**. Ensure you do not change the text after submission (except for errata).