Unofficial template for internship reports at ENSEA, a French engineering school.
README here
Usage
Either use this template in the Typst web app:
#import "@preview/volt-internship-ensea:0.2.0": *
or use the command line to initialize a new project based on this template:
typst init @preview/volt-internship-ensea:0.2.0
Default Values
Parameter | Default Value | Description | Mandatory |
---|---|---|---|
company-logo |
none |
Path to the company logo | ✅ |
authors |
none |
Name(s) of the report author(s) | ✅ |
student-info |
none |
Information about the student(s) | ✅ |
title |
none |
Title of the internship report | ✅ |
internship-details |
none |
Company name, location, duration, etc. | ✅ |
enable-abstract |
true |
Enable the abstract | ❌ |
enable-list-figures |
true |
Enable the list of figures | ❌ |
enable-list-tables |
false |
Enable the list of tables | ❌ |
enable-list-equations |
false |
Enable the list of equations | ❌ |
enable-list-appendices |
false |
Enable the list of appendices | ❌ |
enable-glossary |
false |
Enable the glossary | ❌ |
enable-bibliography |
true |
Enable the bibliography | ❌ |
enable-appendices |
true |
Enable the appendices | ❌ |
Example
#import "@preview/glossy:0.8.0": *
#show: init-glossary.with(yaml("glossary.yaml"), term-links: true)
#import "abstract.typ": *
#import "acknowledgements.typ": *
#import "appendices.typ": *
#import "@preview/volt-internship-ensea:0.2.0": *
#show: internship.with(
abstract: abstract(),
acknowledgements: acknowledgements(),
appendices: annexes(),
references: bibliography("references.bib", full: true),
company-logo: image("media/logo.png"),
authors: (
"Jean DUPONT",
),
student-info: [*Élève ingénieur en X#super[ème] année* #linebreak()
Promotion 20XX #linebreak()
Année 20XX/20XX],
title: [#lorem(10)],
internship-details: [Stage effectué du *1er mars au 30 août 2025*, au sein de la société *TechSolutions*, située à Paris.
Sous la responsabilité de : #linebreak()
- M. *Pierre LEFEVRE*, Directeur de la Stratégie #linebreak()
- Mme *Marie DUBOIS*, Responsable des Opérations #linebreak()
],
enable-list-figures: false,
enable-bibliography: false,
)
= Introduction
#lorem(120)
Custom fonction
named-equation()
The function named-equation(equation, label, name)
associates a description and a label with an equation, allowing its name to be displayed in the list of equations.
#set math.equation(numbering: "(1)")
#outline(target: math.equation, title: "List of Equations") \
with `named-equation`:
#named-equation(
$ P =I^2 times R $,
<Effet-Joule>,
[Effet Joule],
)
without `named-equation`:
$ U =R times I $
abstract-config()
The function abstract-config(language, doc)
defines the border and background of the abstract based on the language parameter, which can take the values FRENCH
or ENGLISH
.
#abstract-config(language: "FRENCH")[
#lorem(25)
]
#abstract-config(language: "ENGLISH")[
#lorem(25)
]
Changelog
v0.2.0 :
- Add the function
named-equation()
- Add a list of equations and the variable
enable-list-equations
- Add equation numbering based on chapter (e.g., 1.1, 1.2, 2.1)
- Add bold to equation numbering and figure prefix, and also to figure prefix in the list of tables and list of figures
- Move the abstract just after the acknowledgements
- Fix the link in the outline that isn’t working
- Fix appendices in outline for headings with level > 1
- Fix groups in glossary
- Fix heading spacing
v0.1.2 : Fix import issue
v0.1.1 : Fix import issue
v0.1.0 : Initial release
Contributions
If you find any issues or have suggestions for improvements, feel free to open an issue or submit a pull request.
License
The Typst template is licensed under the MIT license. This license does not apply to the ENSEA logo or associated image files, which remain the property of ENSEA.