
Research
Malicious npm Packages Impersonate Flashbots SDKs, Targeting Ethereum Wallet Credentials
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
generator-latex-template
Advanced tools
Generates a latex template to be used as start for writing scientific works (papers, articles, theses)
Generates latex templates (e.g., for thesis, workshops, conferences, IEEEtran, LNCS, ...) out of "micro-templates"
There are many latex templates out there.
All of them make use of certain packages such as hyperref, listings, or minted.
The packages have to be a) included in the .tex
file somehow and b) configured.
Moreover, some packages offer interfaces (such as new commands or new environments) to users.
Minimal examples help to understand how a package works.
The aim of the repository is to provide for each common latex package
and a generation into templates:
--shell-escape
and not.One has to install Node.js version 18 (or later) to get this generator running. For simple installation, just head to https://nodejs.org/ and follow the installation instructions.
One can start using the generator directly using the node execution wrapper npx:
npx -p yo -p generator-latex-template -c 'yo latex-template'
In case one wants to have the generator installed permanently (or npx
does work as expected), one can install generator-latex-template
using following command:
npm install -g generator-latex-template
Then, one can invoke the generator as follows:
yo latex-template
⚠️ The template generator overwrites main.tex
on each run. This will destroy your work. ⚠️
You can use the magic of git
to prevent that:
After repository initialization:
git commit
to save your workgit checkout -b template
- to create a branch with initial template (required for updating)git checkout main
switch back to your thesisWork on the main
branch
In case an update comes in, update the template
branch
git checkout template
- switch to the template
branchyo latex-template
- generate new templategit commit
- save the new templategit checkout main
- switch to your workgit merge template
- merge in the template changesIn the long run, the contents of the paper.tex
(and similar) files in repositories of the latextemplates organization should be generated automatically.
__tests__/app.js
npx jest
npx npm-update-all
. See FreeCodeCamp for more details.npx npm-check-updates -u
. [Source]package-lock.json
only: npm i --package-lock-only
Cannot find module 'yeoman-generator'
, please update the npm dependencies.
That error occurred when using version 4.13.0
and 5.4.2
was available.chmod g+rwx /root /root/.config /root/.config/configstore
act --rm --platform ubuntu-latest=fwilhe2/act-runner:latest -W .github/workflows/check-ieee-conference-a4-pdflatex-bibtex-2023-true.yml
DEPP
(see above) or execute following steps:
npx
with --generatereitzig
(in a clean directory)pdflatex
{repository-root}/generate-texlivefile.sh
Texlivefile
to the root of the {repository-root}/generators/app/templates
Texlivefile
as requirednpx ejs-lint main.en.tex
gh run list -L 100 --json databaseId -s queued -R latextemplates/generator-latex-template | jq -r '.[] | .databaseId' | awk '{gsub(/\\r\\n/,RS)} 1' | while read -r run_id; do gh run cancel "$run_id" -R latextemplates/generator-latex-template || true; done
gh run list -L 100 --json databaseId -s in_progress -R latextemplates/generator-latex-template | jq -r '.[] | .databaseId' | awk '{gsub(/\\r\\n/,RS)} 1' | while read -r run_id; do gh run cancel "$run_id" -R latextemplates/generator-latex-template || true; done
scripts/spread-updates.sh
dot.aspell.en.pws
: cat dot.aspell.en.pws | (sed -u 1q; sort) | sponge dot.aspell.en.pws
overleaf=no
- and (nearly) all possible combinations.*-refined
repositories test with overleaf=true
- and only the typical settings for the template.refine-ltg
is the development branch for the template generator; only a small set of workflows enabled there due to load during testing.update-ltg
is the development branch at each *-refined
template.npx yo <path-to-git-repository>/generators/app/index.js
. Background: Starting from 5.0.0 on, one needs to specify the full path to index.js.npx yo c:\git-repositories\latextemplates\generator-latex-template\generators\app\index.js
Parameters can be set using command line
npx yo /tmp/repo/generators/app/index.js --documentclass=lncs --papersize=a4 --latexcompiler=pdflatex --bibtextool=bibtex --texlive=2024 --docker=false --lang=en --font=default --listings=listings --enquotes=csquotes --tweakouterquote=babel --todo=pdfcomment --examples=true --howtotext=true
Parameters can be set using command line
npx yo c:\git-repositories\latextemplates\generator-latex-template\generators\app\index.js --overleaf=false --documentclass=ieee --ieeevariant=conference --papersize=a4 --latexcompiler=pdflatex --bibtextool=bibtex --texlive=2024 --docker=reitzig --lang=en --font=default --listings=listings --enquotes=csquotes --tweakouterquote=babel --todo=pdfcomment --examples=true --howtotext=true
npx yo c:\git-repositories\latextemplates\generator-latex-template\generators\app\index.js --overleaf=false --documentclass=lncs ---papersize=a4 --latexcompiler=pdflatex --bibtextool=bibtex --texlive=2024 --docker=false --lang=en --font=default --listings=listings --enquotes=csquotes --tweakouterquote=babel --todo=pdfcomment --examples=true --howtotext=true
npx yo c:\git-repositories\latextemplates\generator-latex-template\generators\app\index.js --overleaf=false --documentclass=scientific-thesis --papersize=a4 --latexcompiler=pdflatex --bibtextool=bibtex --texlive=2024 --lang=en --font=default --listings=listings --enquotes=csquotes --tweakouterquote=babel --todo=pdfcomment --examples=true --howtotext=true
npx yo c:\git-repositories\latextemplates\generator-latex-template\generators\app\index.js --overleaf=false --documentclass=ustutt --papersize=a5 --latexcompiler=lualatex --bibtextool=biblatex --texlive=2024 --lang=en --font=default --listings=listings --enquotes=csquotes --tweakouterquote=babel --todo=todonotes --examples=true --howtotext=true
-- todonotes
is the preferred TODO package here.latexmk
to build the PDFTo fire up a TeX Live installation and use the Dependency Printer for TeX Live to refine Texlivefile
, execute following steps:
docker run -it --rm -v c:\temp\ltg:/ltg registry.gitlab.com/islandoftex/images/texlive:latest
cd /tmp
git clone https://gitlab.com/islandoftex/texmf/depp.git
cd depp
l3build install
cd /ltg
# edit paper.tex and add `\RequirePackage[dependency-file=Texlivefile]{depp}`
lualatex/pdflatex paper
docker build --progress=plain -t reitzig -f Dockerfile .
docker run -it --rm -v c:\temp\ltg:/work/src -v c:\temp\ltg-out:/work/out reitzig work latexmk
<% if (howtotext) { -%>
<% } else { -%>
<% } -%>
<% switch (documentclass) { case "lncs": -%>
<% break; case "ieee": -%>
<% break; default: -%>
<% break; } -%>
A launch.json
configured for Windows and Visual Studio Code is included.
Just press F5 and the generator should run in debug mode.
ejslint.cmd c:\git-repositories\latextemplates\generator-latex-template\generators\app\templates\main.en.tex
Update CHANGELOG.md
(change h2
heading etc.)
Update package.json
, publish to npmjs, create GitHub release.
Use release-it (do not create a release on GitHub) and github-release-from-changelog.
npx release-it
npx github-release-from-changelog
The code is licensed 0BSD, the snippets (both LaTeX and text) 0BSD, too. See benbalter/talks#15, for a reasoning, why CC0 cannot be used.
generators/app/templates/splncs04nat.bst
is taken from tpavlic/splncs04nat and is MIT-licensed.generators/app/templates/logos/
: This directory contains logos, which have special licenses.[2025.4.11]
lualatex-dev
..aspell.de.pws
for German documents..aspell-en.pws
.-shell-escape
.\usepackage{selnolig}
.awalsh128/cache-apt-pkgs-action@latest
in check.yml
FAQs
Generates a latex template to be used as start for writing scientific works (papers, articles, theses)
The npm package generator-latex-template receives a total of 21 weekly downloads. As such, generator-latex-template popularity was classified as not popular.
We found that generator-latex-template demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.
Security News
Following last week’s supply chain attack, Nx published findings on the GitHub Actions exploit and moved npm publishing to Trusted Publishers.