Skip to content

feat: initial template release#9

Merged
NathanielJS1541 merged 17 commits intomainfrom
initial_release
Oct 15, 2025
Merged

feat: initial template release#9
NathanielJS1541 merged 17 commits intomainfrom
initial_release

Conversation

@NathanielJS1541
Copy link
Owner

This PR adds a basic LaTeX document template, along with GitHub workflows to automatically build and publish the document on pushes to main.

The LaTeX document has been styled to be suitable in both .pdf and printed form.

I've also updated the repo documentation with details on consuming the template in a repo, including how to update the workflows.

This adds both shared workspace settings, as well as workspace extension
recommendations for VSCode.

Fixes #6.
This updates both the `README.md` and `CONTRIBUTING.md` documents to
support the extensions and settings in the VSCode workspace.

This should include enough detail to allow consumers of the template to
change the workspace settings and extension recommendations as they
need.

Refs #6.
@NathanielJS1541 NathanielJS1541 added this to the Initial Release milestone Oct 15, 2025
@NathanielJS1541 NathanielJS1541 self-assigned this Oct 15, 2025
@NathanielJS1541 NathanielJS1541 added the 📖 documentation Improvements or additions to documentation label Oct 15, 2025
Copilot AI review requested due to automatic review settings October 15, 2025 04:15
@NathanielJS1541 NathanielJS1541 added ✨ enhancement New feature or request 🎬 action Changes to the GitHub Actions labels Oct 15, 2025
@NathanielJS1541 NathanielJS1541 linked an issue Oct 15, 2025 that may be closed by this pull request
@github-actions
Copy link

Triggered from #9 by @​NathanielJS1541.

Checking if we can fast forward main (497cf29) to initial_release (f0e718b).

Target branch (main):

commit 497cf29566caf230eefcf1b50c66436b71ddc7f8 (HEAD -> main, origin/main)
Author: Nathaniel Struselis <Nathaniel.Struselis@hotmail.co.uk>
Date:   Tue Oct 14 03:01:38 2025 +0100

    docs: add readme for fast-forward workflows

Pull request (initial_release):

commit f0e718bf436bf531ff586bf0f6525b3c6c56677d (pull_request/initial_release)
Author: Nathaniel Struselis <Nathaniel.Struselis@hotmail.co.uk>
Date:   Wed Oct 15 04:59:30 2025 +0100

    chore(release): add document revision v0.1.0

It is possible to fast forward main (497cf29) to initial_release (f0e718b). If you have write access to the target repository, you can add a comment with /fast-forward to fast forward main to initial_release.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces the initial LaTeX template release with comprehensive document structure, GitHub workflows for automated builds and releases, and IDE configuration for LaTeX development using VSCode.

  • Adds complete LaTeX document template with modular structure (sections, front matter, preamble)
  • Implements GitHub Actions workflows for automatic document building and releasing with version management
  • Provides VSCode workspace configuration with recommended extensions for LaTeX development

Reviewed Changes

Copilot reviewed 22 out of 24 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
main.tex Main LaTeX document entry point with comprehensive package configuration and document structure
sections/*.tex Document sections (introduction, example content, conclusion) demonstrating LaTeX features
front_matter/*.tex Front matter components including revision history and document metadata
preamble/*.tex LaTeX preamble configuration for headers/footers and author definitions
.github/workflows/*.yml GitHub Actions workflows for building LaTeX documents and managing releases
.vscode/*.json VSCode workspace configuration for LaTeX development environment
cliff.toml Git-cliff configuration for conventional commits and changelog generation
README.md Updated documentation with template usage instructions and configuration guidance
CONTRIBUTING.md Enhanced contribution guidelines with VSCode setup and document revision workflow

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

This commit creates the initial document structure for the LaTeX
template document, demonstrating basic features such as a revision
history, fancy headers, equations, figures, tables etc.

BREAKING CHANGE: this is the initial version of the LaTeX template.
Fixes #3.
This commit updates the documentation to include information about the
LaTeX document template files.

Refs #3.
The `release` scope has been updated to be used as any commits in
preparation for a release, for example version bumps.

This will likely be used with the `chore` type.
This commit adds a workflow that uses `git-cliff` to lint the commits in
the repo on every PR.

There is a complementary `cliff.toml` configuration file which is used to
configure `git-cliff` within the workflow.

I've also added extension recommendations for GitHub Actions and TOML
files to the VSCode workspace.

Fixes #4.
This commit adds a README to the GitHub workflows file, and updates
existing documentation to include the new VSCode extension
recommendations, information about how to consume the template with the
new `cliff.toml` file, and how to maintain the `CHANGELOG.md` file in
parallel with `cliff.toml`.

Refs #4.
The `test` commit type isn't relevant for this repo as it will not have
any unit tests.

Therefore, it has been removed for clarity and brevity.
This commit adds the following workflows:
- `.github/workflows/build-latex.yml`
- `.github/workflows/build-release.yml`

`.github/workflows/build-latex.yml` is a re-usable workflow that can be
used to build the LaTeX document into a PDF, and upload it as an
artifact.

`.github/workflows/build-release.yml` is a release workflow that uses
`.github/workflows/build-latex.yml` to build the LaTeX document,
generate a changelog based on the commits, and publish them to a release
on GitHub.

Fixes #5.
This commit updates the `lint-commits.yml` workflow to ensure that the
document revision has been updated to the prospective version bump for
the changes within a PR.

This has been added to the `lint-commits.yml` workflow since that
workflow already runs when a PR is opened, and already generates a
prospective changelog and version for the changes.

Fixes #8.
This commit updates `cliff.toml` to also include contribution stats when
generating the changelog. It also fixes the spacing of lines when
generating the changelog, and fixes the link replacement.
This commit modifies the behaviour of `build-release.yml` to use the
repo name as the document name, rather than hard-coding it.
The previous change to `build-release.yml` moves from a hard-coded
document name to using the repo name. In case this is not desired, I've
updated the documentation with instructions to go back to a hard-coded
name.
The previous workspace settings for the Paste Image extension didn't
work correctly, so have been corrected to both use the root `images/`
directory and enable the pattern to be inserted onto multiple lines when
added to a `.tex` document.
@github-actions
Copy link

Triggered from #9 by @​NathanielJS1541.

Checking if we can fast forward main (497cf29) to initial_release (da6f2cc).

Target branch (main):

commit 497cf29566caf230eefcf1b50c66436b71ddc7f8 (HEAD -> main, origin/main)
Author: Nathaniel Struselis <Nathaniel.Struselis@hotmail.co.uk>
Date:   Tue Oct 14 03:01:38 2025 +0100

    docs: add readme for fast-forward workflows

Pull request (initial_release):

commit da6f2cc51e876c30b385d074c636fd1f97faa48f (pull_request/initial_release)
Author: Nathaniel Struselis <Nathaniel.Struselis@hotmail.co.uk>
Date:   Wed Oct 15 06:00:42 2025 +0100

    fix: correct paste image extension settings
    
    The previous workspace settings for the Paste Image extension didn't
    work correctly, so have been corrected to both use the root `images/`
    directory and enable the pattern to be inserted onto multiple lines when
    added to a `.tex` document.

It is possible to fast forward main (497cf29) to initial_release (da6f2cc). If you have write access to the target repository, you can add a comment with /fast-forward to fast forward main to initial_release.

@NathanielJS1541
Copy link
Owner Author

/fast-forward

@NathanielJS1541 NathanielJS1541 merged commit da6f2cc into main Oct 15, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🎬 action Changes to the GitHub Actions 📖 documentation Improvements or additions to documentation ✨ enhancement New feature or request

Projects

None yet

2 participants