1baseURL = 'https://tenyoru.io/'
2locale = 'en-us'
3title = 'Tenyoru'
4defaultContentLanguage = "en"
5defaultContentLanguageInSubdir = false
6capitalizeListTitles = false
7
8[languages]
9 [languages.en]
10 weight = 1
11 [languages.fr]
12 weight = 2
13 [languages.ru]
14 weight = 3
15
16# ---------------------------------------------------------------------------
17# Outputs
18# Generates static/_headers as a Hugo output (see layouts/index.headers) so
19# it can reference the current build's fingerprinted CSS URL for the Link
20# preload header - a plain static/_headers file can't see that hash.
21# ---------------------------------------------------------------------------
22
23[mediaTypes."text/netlify"]
24delimiter = ""
25suffixes = []
26
27[outputFormats.Headers]
28mediaType = "text/netlify"
29baseName = "_headers"
30isPlainText = true
31notAlternative = true
32
33[outputs]
34home = ["HTML", "RSS", "Headers"]
35
36# ---------------------------------------------------------------------------
37# Mounts
38# First five mounts = Hugo defaults (declaring any mount disables them).
39# The rest expose the site's own sources under assets/src/ for /src/.
40# ---------------------------------------------------------------------------
41
42[module]
43 [[module.mounts]]
44 source = "content"
45 target = "content"
46 [[module.mounts]]
47 source = "layouts"
48 target = "layouts"
49 [[module.mounts]]
50 source = "assets"
51 target = "assets"
52 [[module.mounts]]
53 source = "static"
54 target = "static"
55 [[module.mounts]]
56 source = "archetypes"
57 target = "archetypes"
58 [[module.mounts]]
59 source = "content"
60 target = "assets/src/content"
61 [[module.mounts]]
62 source = "layouts"
63 target = "assets/src/layouts"
64 [[module.mounts]]
65 source = "assets"
66 target = "assets/src/assets"
67 [[module.mounts]]
68 source = "hugo.toml"
69 target = "assets/src/hugo.toml"
70
71# ---------------------------------------------------------------------------
72# Markup
73# ---------------------------------------------------------------------------
74
75[markup.goldmark.renderer]
76unsafe = true
77
78# Chroma classes are styled in assets/scss/components/_chroma.scss
79[markup.highlight]
80noClasses = false
81style = "monokai"
82
83[security]
84 enableInlineShortcodes = true
85
86[caches]
87 [caches.images]
88 dir = ':cacheDir/images'
89
90# ---------------------------------------------------------------------------
91# Menus (Tags is intentionally not here - it's a small link in the blog header)
92# ---------------------------------------------------------------------------
93
94[menus]
95 [[menus.main]]
96 name = 'Blog'
97 url = '/blog/'
98 weight = 10
99
100 [[menus.main]]
101 name = 'Photos'
102 url = '/photos/'
103 weight = 25
104
105 [[menus.main]]
106 name = 'Contact'
107 url = '/contact/'
108 weight = 30
109
110# ---------------------------------------------------------------------------
111# Site params
112# ---------------------------------------------------------------------------
113
114[params]
115description = "A personal corner for engineering notes, writing, and new collaborations"
116r2BaseURL = "https://assets.tenyoru.io"
117r2Transforms = true
118r2Thumb = "cdn-cgi/image/width=600,format=webp"
119
120[params.banner]
121enabled = true
122text = "Hiring? I'm open to new roles."
123url = "/contact/"
124
125[params.footer]
126credits = "© 2026 Tenyoru"
127
128[params.license]
129name = "CC BY 4.0"
130url = "https://creativecommons.org/licenses/by/4.0/"
131
132[params.repo]
133url = "https://github.com/tenyoru/site"
134
135[params.contact.contacts]
136
137 [[params.contact.contacts.items]]
138 label = "Email"
139 value = "mail@tenyoru.io"
140 url = "mailto:mail@tenyoru.io"
141 icon = "mail"
142
143 [[params.contact.contacts.items]]
144 label = "Telegram"
145 value = "@tenyoru"
146 url = "https://t.me/tenyoru"
147 icon = "telegram"
148
149 [[params.contact.contacts.items]]
150 label = "WhatsApp"
151 value = "Available if you already have my number"
152 icon = "whatsapp"
153
154 [[params.contact.contacts.items]]
155 label = "Discord"
156 value = "tenyoru (I check it rarely)"
157 url = "https://discord.com/users/1426989845053440144"
158 icon = "discord"
159
160[[params.media]]
161label = "GitHub"
162value = "tenyoru"
163url = "https://github.com/tenyoru"
164icon = "github"
165
166[[params.media]]
167label = "YouTube"
168value = "@tenyoru"
169url = "https://youtube.com/@tenyoru"
170icon = "youtube"
171
172[[params.media]]
173label = "Bluesky"
174value = "@tenyoru.io"
175url = "https://bsky.app/profile/tenyoru.io"
176icon = "bluesky"
177
178[[params.media]]
179label = "Mastodon"
180value = "@tenyoru@mastodon.social"
181url = "https://mastodon.social/@tenyoru"
182icon = "mastodon"
183
184[[params.projects]]
185name = "topo.love"
186desc = "Past side project"
187url = "https://topo.love"
188icon = "topo"
189
190[params.giscus]
191repo = "tenyoru/Tenyoru.github.io"
192repoID = "R_kgDOP75SYA"
193category = "Announcements"
194categoryID = "DIC_kwDOP75SYM4CwgqS"
195mapping = "pathname"
196strict = "0"
197reactionsEnabled = "1"
198emitMetadata = "0"
199inputPosition = "bottom"
200theme = "preferred_color_scheme"
201lang = "en"
202themeLight = "light"
203themeDark = "dark"