Skip to content

Conversation

@pamitabh
Copy link
Contributor

I am submitting

  • a new package
  • an update for a package

Description: An unofficial dissertation template for the University of Oregon (UO), following the 2024 UO Graduate School Style Manual and official UO Prefatory Word template requirements.

I have read and followed the submission guidelines and, in particular, I

  • selected a name that isn't the most obvious or canonical name for what the package does
  • added a typst.toml file with all required keys
  • added a README.md with documentation for my package
  • have chosen a license and added a LICENSE file or linked one in my README.md
  • tested my package locally on my system and it worked
  • excluded PDFs or README images, if any, but not the LICENSE
  • ensured that my package is licensed such that users can use and distribute the contents of its template directory without restriction, after modifying them through normal use.

@typst-package-check typst-package-check bot added the new A new package submission. label Oct 21, 2025
@elegaanz elegaanz self-assigned this Oct 22, 2025
Copy link
Member

@elegaanz elegaanz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for submitting this template! It needs a bit more work before it can get published.

@@ -0,0 +1,23 @@
[package]
name = "uo-dissertation-2024"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not entirely sure including the year in the package name makes sense, I feel like the version field should be used to distinguish between different revisions of the template, instead of having one package per year.

Also, since your package is not official, it should not use a "canonical" name as it currently does (I assume "UO" is a common abbreviation for your university). It should be clear that it is made by a community member and that it is not officially endorsed by the university. Could you please change the name in that regard? You can refer to our naming guidelines and other package names if you need more details or inspiration.

Copy link
Contributor Author

@pamitabh pamitabh Oct 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for reviewing the PR! I did look at the the naming guidelines before submission and still feel the year that the template corresponds to makes sense. Our university changes the template around every 10 years, so being upfront and clear on which year's style guide is being used makes it easier for everyone. Due to this there would also not be an issue of "having one package per year". For context, prior to 2024, style guide 2016 was in effect.

Also, since your package is not official, it should not use a "canonical" name as it currently does (I assume "UO" is a common abbreviation for your university). It should be clear that it is made by a community member and that it is not officially endorsed by the university. Could you please change the name in that regard?

Can I use capital letters in the name? Do you like any of these better: "unofficial-UO-dissertation-2024", "community-UO-dissertation-2024", "unofficial-UO-PhD-dissertation-2024", "unofficial-UO-Doctoral-dissertation-2024"?

Copy link
Member

@elegaanz elegaanz Oct 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the details. I still feel like it's a bit weird to have the year in the package name (but maybe it's only because you are the first to do it). I think it would make more sense to have the name without the year, and then inside of the package you can expose the template function as apply-uo-2024-style for example, which would allow users to pick newer versions more easily.

Also, it is not possible to use capital letters in package names, but adding the unofficial- or community- prefix would work. So unofficial-uo-dissertation would work for example.

Copy link
Contributor Author

@pamitabh pamitabh Oct 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would insist about including the year, as that is how the style guide is referred at our University (e.g. "ensure you use 2024 style guide rather than 2016") and these are infrequent enough (~a decade or more) so it makes more sense to be upfront and clear about it. I don't plan to make more templates with the newer style guides ten years down the line so there will not be different years/style guides in this same template!

TLDR: "2024" in the name implies the style itself serving the same purpose as the rest of the name: "unofficial-uo-dissertation-2024" i.e. Unofficial dissertation for University of Oregon following 2024 style guide.

Another reason I push back on this: there exists an (abandoned) latex template without the style guide version specified in the name. A couple of my friends used it for their thesis, only to discover later that it was the 2016 version. Most grad students (aka potential users) I talked to agree about the clarity in the name.

[edited for grammar and clarity]

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay, let's settle on unofficial-uo-dissertation-2024. I'll let you replace the current name with this one everywhere.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would renaming everything just work or do i need to create another PR?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can just rename the folder and replace all occurrences of the old name with the new one, no need to open another PR.


## License

MIT License - free to use, modify, and distribute for any purpose.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add a note about the images you ship with the template, please? I assume they are not under the MIT license.

Copy link
Contributor Author

@pamitabh pamitabh Oct 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Both the images are in public domain shared under creative commons license so I thought don't need separate mention. Please let me know if I'm incorrect, and in that case should I mention it in the readme as a separate entry?
More specifically:

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is still required to mention their license explicitly, yes. For the CC0 one, it may be fine to omit it, but it's better to be clear. And for the CC-BY one, I'm pretty sure it is mandatory to specify the license and credit the original author. A single line to state that in this section of the README would work.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done!

[package]
name = "uo-dissertation-2024"
version = "1.0.0"
entrypoint = "template/main.typ"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The package entrypoint should be different from the template entrypoint. Anything that shouldn't be directly edited by the user should be part of the package, only the actual contents should be in the template directory. You can find a bit more details here. I would also advise looking at the structure of other templates to understand how to make the split.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i changed the folder organization. Now, the styling file config.typ lies outside the template and changed the entrypoint in the toml to point to that.

@elegaanz
Copy link
Member

To fix the CI errors you should replace any import of config.typ in the template with @preview/… imports.

// Import configuration and styling
// #import "../config.typ": * // for local config file
// #import "@local/uo-dissertation:1.0.0/config.typ" // for local package
#import "@preview/uo-dissertation-2024:1.0.0/config.typ": * // for preview package on typst universe
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You should remove the /config.typ part here. When importing a package, you always import the file defined as the entrypoint in the manifest, and it is not possible to import any other file. Here this is what you want, since your entry point is config.typ. But in general, if you want to expose functions and variables from other files you would have to re-export them in your entry file.

Copy link
Contributor Author

@pamitabh pamitabh Oct 24, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so you just want me to remove the commented out lines 5 and 6, right? or do i need to take care of the metadata.typ import (line 8) too - by importing and re-exporting them from config.typ?

edit: got it now..!

@@ -0,0 +1,83 @@
// appendices/appendix.typ
// Single appendix without letter designation
#import "../../config.typ": appendix
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This import should be updated too.

@typst-package-check typst-package-check bot changed the title uo-dissertation-2024:1.0.0 unofficial-uo-dissertation-2024:1.0.0 Oct 24, 2025
@elegaanz
Copy link
Member

Thank you.

@elegaanz elegaanz merged commit 0a4a2a1 into typst:main Oct 27, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new A new package submission.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants