Skip to content

Commit 9255ad2

Browse files
stevejpurvesmmckyrowanc1
authored
[BLOG] new post - call for myst templates (#929)
* 📕 call for templates blog post * 🧹clear up error on blocked echo cmd * 🏋️‍♀️update authors * 📄 updates posting date, added links for webinar in March and future recording. * 🩺 grammar * Update docs/blog/2023-01-31-call-for-myst-templates.md Co-authored-by: mmcky <[email protected]> * moved last review change to latest post, removed duplicate post and updated publishing date * 🔗 Update myst-tools links * 📆 nudge date --------- Co-authored-by: mmcky <[email protected]> Co-authored-by: Rowan Cockett <[email protected]>
1 parent aa3a18d commit 9255ad2

7 files changed

+180
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,178 @@
1+
# Call for MyST Templates for Open Science
2+
3+
```{post} 2023-03-07
4+
:author: Rowan Cockett, Steve Purves
5+
:image: 1
6+
:excerpt: 2
7+
```
8+
9+
```{tip} Sign up for the Upcoming MyST Templates Tutorial Webinar
10+
:class: dropdown
11+
12+
Interested in porting your first LaTeX template to a MyST template?
13+
14+
Join the upcoming webinar (15th March 2022 @ 4pm UTC) and get started (and maybe finished) building your template during the session.
15+
16+
The webinar is hosted by Rowan & Steve from Curvenote, and will be a 2 hour walk-through at an easy pace of how to markup an existing LaTeX template or document for use with the [myst.tools](https://myst-tools.org) cli.
17+
18+
[Sign up for the webinar here](https://www.eventbrite.ca/e/how-to-create-a-custom-latex-template-that-works-with-jupyter-tickets-535622720977).
19+
20+
Reading this post **after** the event? Watch the [recording on youtube](https://youtube.com/live/Bdd-_5YZQ8c).
21+
```
22+
23+
+++ {"tags":[],"part":"abstract"}
24+
25+
Imagine a future where preparing research papers for submission is _frictionless_, freeing up valuable time to focus on what really matters—advancing knowledge and communicating breakthroughs in your field. In this blog we will highlight how to generate professional submission-ready PDFs on demand, and — with your help — for practically any scientific journal in the world.
26+
27+
> Let’s remove the chore of formatting from the workload of scientists and researchers worldwide.
28+
29+
+++ {"tags":[]}
30+
31+
```{figure} images/myst-export-to-any-template.png
32+
:name: seGB9FVdRJ
33+
:align: center
34+
:width: 100%
35+
36+
Use MyST Markdown to export to any *LaTeX* template. To change the template you are using, just change the template option in frontmatter!
37+
```
38+
39+
+++ {"tags":[]}
40+
41+
## MyST Markdown Template Repository
42+
43+
We're excited to make a call for _LaTeX_ submissions to the new [MyST Template Repository](https://github.com/myst-templates). MyST templates allow any existing journal's _LaTeX_ template to be easily built directly from metadata and content in MyST Markdown documents. Let’s not stop at journal papers — this equally applies to book, thesis, research report, and article templates too!
44+
45+
Porting a journal template to MyST Template takes about an hour, depending on the number of options and other requirements a template has, but after that initial investment, anyone who uses it saves a huge amount of time in formatting their documents. Cutting out this continual rework can really make a difference at scale!
46+
47+
Templates on the repository are completely open, part of the [Executable Books Project](https://executablebooks.org), and can be accessed, forked, remixed and contributed to [via GitHub](https://github.com/myst-templates).
48+
49+
```{figure} images/myst-open-template-repository.png
50+
:name: aryv4vJd91
51+
:align: center
52+
:width: 100%
53+
54+
The [MyST Templates Repository](https://github.com/myst-templates) is hosted as an organization on GitHub, where each repository within the organization is an independent template for one of the supported export targets. If you are familiar with *LaTeX* check out some of the existing template repositories to get an idea of how a template is made (e.g. [arxiv_two_column](https://github.com/myst-templates/arxiv_two_column), [volcanica](https://github.com/myst-templates/volcanica))
55+
```
56+
57+
+++ {"tags":[]}
58+
59+
> A single MyST template takes about an hour to build from an existing journal provided example… and can have a significant positive impact on time saved on all future submissions made via MyST.
60+
61+
+++ {"tags":[]}
62+
63+
```{note}
64+
**Call for MyST Templates**
65+
66+
With the [myst.tools](https://myst-tools.org) now launched (beta) 🚀 and publicly available, we are looking for *LaTeX* template submissions from the community.
67+
68+
Contributing a *LaTeX* template is simple:
69+
70+
1. Find an up-to-date *LaTeX* template for the venue or an example manuscript
71+
2. Follow the guide for [Creating a Template](https://myst-tools.org/docs/jtex/create-a-latex-template)
72+
3. Publish your template to GitHub and [add it to the index listing on myst-templates/templates](https://myst-tools.org/docs/jtex/contribute-a-template#list-your-template)
73+
74+
The template can stay on your GitHub account, making it easy for you to maintain and update. If this is likely to be a widely used template you might want to “donate” your contribution as a community-curated template, and transfer it to the `myst-templates` org — [read more about doing that here](https://myst-tools.org/docs/jtex/contribute-a-template#donate-your-template).
75+
76+
```
77+
78+
+++ {"tags":[]}
79+
80+
## How authors use MyST Templates
81+
82+
Once a template is added to the repository it automatically becomes available to **the entire research community** via the open source [myst-tools.org](https://myst-tools.org) software ecosystem. Any MyST Markdown document of notebook can be exported to a template using the frontmatter ([learn more](https://myst-tools.org/docs/mystjs/quickstart-myst-documents)).
83+
84+
```yaml
85+
---
86+
exports:
87+
- format: pdf
88+
template: lapreprint
89+
---
90+
```
91+
92+
To find the templates available, use the `myst` [command line interface](https://myst-tools.org/docs/mystjs/quickstart) to search through all known templates:
93+
94+
```shell
95+
myst templates list --tex
96+
```
97+
98+
```{figure} images/myst-list-templates.png
99+
:name: H98th7foSc
100+
:align: center
101+
:width: 90%
102+
103+
The partial output of the `myst templates list` command. This list is set to grow so that command also allows filtering on template type (website, docx, tex, pdf) and tags allowing you to narrow down to templates of interest.
104+
```
105+
106+
Authors can then also query a specific template for a rich description, and details on options, parts and requirements for a document build. This information is detailed and set up by the people who create the template, all aimed at making the process of getting to a submission-ready PDF as easy as possible.
107+
108+
Here’s the output for the `volcanica` journal template. This is displayed when an author types:
109+
110+
```shell
111+
myst templates list --pdf volcanica
112+
```
113+
114+
```{figure} images/myst-show-template-details.png
115+
:name: wMu6uL9PxS
116+
:align: center
117+
:width: 100%
118+
119+
Listing information on a specific template makes it easy to see various parts and variables to use when exporting your document.
120+
```
121+
122+
As you can see there is helpful and detailed information on the various parts and options that the template supports, making it easy to complete the document frontmatter to create the template.
123+
124+
```{important}
125+
**Writing a paper Faster with MyST Markdown 📺**
126+
127+
Looking to use the MyST Markdown tools for your writing?
128+
129+
Get started easily by following the [quickstart tutorials](https://myst-tools.org/docs/mystjs/quickstart) or [watch our webinar in the tutorial](https://myst-tools.org/docs/mystjs/quickstart-myst-documents).
130+
131+
```
132+
133+
+++ {"tags":[]}
134+
135+
## Creating a MyST Template
136+
137+
Ok, so having seen how rich the interaction with MyST Template is for authors, you may be thinking that building these templates might be quite onerous. This is not the case! If you have some _LaTeX_ experience and have the template and sample (e.g. content provided by a journal) the process is straightforward.
138+
139+
There is a dedicated command line tool to help with the process — its called `jtex` — and it bends over backwards to help you create a MyST Template. Use it alongside the well-known `cookiecutter` tool to go from a clean slate to a local git repository that is ready to push.
140+
141+
To get started for real, follow the [Create a Template](https://myst-tools.org/docs/jtex/create-a-latex-template) guide on [MyST Tools](https://myst-tools.org), as it covers the whole process. To show you a little of what’s in store, the image below shows the output from `jtex check` part way through a template build.
142+
143+
```{figure} images/jtex-build-templates-easily-cli.png
144+
:name: FCFEq6PLCj
145+
:align: center
146+
:width: 100%
147+
148+
Output from `jtex check` part way through the process of creating a template. Here we’ve added various options and parts updating our `template.tex` and `template.yml`files along the way, but the two are not yet in sync. `jtex` gives us concise warnings and error messages to help resolve the issues. It’ll also want about missing packages from configuration and can even automatically `--fix` those.
149+
```
150+
151+
Here `jtex` is warning us about incorrect and unused options, missing images as well an incomplete package manifest. Having these errors and warnings any time we type `jtex check` help to speed up the template creation process enormously, as it helps keep us keep track of changes we’re making to the configuration file `template.yml` and he main `template.tex` file, which needs to be in sync.
152+
153+
We are also seeing missing elements in the package manifest, which can be usually fixed automatically by typing `jtex check --fix`, `jtex` even scans all `tex`, `cls` and `sty` files you add to the `files` section of `template.yml` make sure that the packaging listing is correct, as it is used to ensure no duplicate packages are loaded later.
154+
155+
```{important}
156+
**Contribute your first MyST template!**
157+
158+
We’re on a mission to build the largest repository of open journal templates in the world. One that can be used to easily build papers from content in MyST Markdown and Juptyer Notebooks.
159+
160+
Together let’s take the chore and re-work out of preparing a paper submission and make it possible to easily switch papers to alternate journal formats without wasting researchers’ time.
161+
162+
[Make a start on your first MyST Template](https://myst-tools.org/docs/jtex) and submit it to the listing, or make a start and reach out to the [MyST templates community](https://github.com/myst-templates) in an issue to get help in getting it over the line.
163+
164+
```
165+
166+
```{tip} Sign up for the Upcoming MyST Templates Tutorial Webinar
167+
:class: dropdown
168+
169+
Interested in porting your first LaTeX template to a MyST template?
170+
171+
Join the upcoming webinar (15th March 2022 @ 4pm UTC) and get started (and maybe finished) building your template during the session.
172+
173+
The webinar is hosted by Rowan & Steve from Curvenote, and will be a 2 hour walk-through at an easy pace of how to markup an existing LaTeX template or document for use with the [MyST Tools](https://myst-tools.org) cli.
174+
175+
[Sign up for the webinar here](https://www.eventbrite.ca/e/how-to-create-a-custom-latex-template-that-works-with-jupyter-tickets-535622720977).
176+
177+
Reading this post **after** the event? Watch the [recording on youtube](https://youtube.com/live/Bdd-_5YZQ8c).
178+
```
Loading
Loading
154 KB
Loading
Loading
Loading

tox.ini

+2
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ passenv =
2929
whitelist_externals =
3030
rm
3131
echo
32+
allowlist_externals =
33+
echo
3234
commands =
3335
clean: rm -rf docs/_build
3436
sphinx-build -nW --keep-going -b {posargs:dirhtml} docs/ docs/_build/{posargs:dirhtml}

0 commit comments

Comments
 (0)