diff --git a/portfolio/en/japan.html b/portfolio/en/japan.html
new file mode 100644
index 0000000..7ed0958
--- /dev/null
+++ b/portfolio/en/japan.html
@@ -0,0 +1,9 @@
+---
+title: Japan
+logosub: 日本
+language: "en"
+---
+
+
These pages contain my notes on learning about the Japanese language and culture.
+
+$partial("templates/japan-language-notes.html")$
diff --git a/portfolio/jp/japan.html b/portfolio/jp/japan.html
new file mode 100644
index 0000000..5ddaeac
--- /dev/null
+++ b/portfolio/jp/japan.html
@@ -0,0 +1,10 @@
+---
+title: 日本
+logosub: 日本
+language: "jp"
+---
+
+これらのページには、日本語と言語文化に関する私のメモが含まれています。
+これらのページは英語のみで提供されています。
+
+$partial("templates/japan-language-notes.html")$
diff --git a/portfolio/nl/japan.html b/portfolio/nl/japan.html
new file mode 100644
index 0000000..c19b858
--- /dev/null
+++ b/portfolio/nl/japan.html
@@ -0,0 +1,10 @@
+---
+title: Japan
+logosub: 日本
+language: "nl"
+---
+
+Deze paginas bevatten mijn notities om de Japanse taal en cultuur te bestuderen.
+Alle paginas zijn alleen in het Engels.
+
+$partial("templates/japan-language-notes.html")$
diff --git a/portfolio/pages/en/japan/language/notes/cheat-sheet.md b/portfolio/pages/en/japan/language/notes/cheat-sheet.md
new file mode 100644
index 0000000..b967b54
--- /dev/null
+++ b/portfolio/pages/en/japan/language/notes/cheat-sheet.md
@@ -0,0 +1,71 @@
+---
+logosub: "Japanese"
+language: "en"
+title: "Cheat-sheet"
+---
+
+This is a collection of grammar that I use to glimpse over in order to remember it better.
+
+---
+
+## 文法
+
+* これは紙を切る[のに](./tameni-youni-noni#のに)使うはさみです。
+* These scissors are used cut paper.
+
+---
+
+「使っといて」: This is colloquial and means "having used" or "using and leaving it in that state,".
+
+「食べといた」: This means "ate it in advance" or "ate it beforehand," suggesting the speaker ate it in preparation for something.
+
+
+---
+
+「使ってみて」: This means "try using,".
+
+「入れてみて」: This means "try bringing it in,"
+
+---
+
+「してはならない」: This means "must not wear," which would imply things are forbidden.
+
+---
+
+「してもかまわない」: This means "it's okay to do" or "you may do it if you want," which implies that doing it is optional.
+
+---
+
+「しなければならない」: This means "must do." It implies that doing something is a requirement.
+
+「しなければいい」: This would mean "it would be good if you do...,". It suggests a recommendation, not a requirement.
+
+---
+
+「食べなくちゃ」: This means "I have to eat it,".
+
+---
+
+「入れないと」: The phrase "入れないと" (short for "入れないといけない") implies an urgent need or "you have to bring it in".
+
+---
+
+「入れてはいけない」: This means "you must not bring it in,".
+
+---
+
+「入れたらいい」: This could mean "it would be good if you brought it in," but it lacks any urgency.
+
+---
+
+「食べちゃった」: This is the casual form of "食べてしまった," which conveys that the speaker ate all, often with a nuance of regret or unintentionality.
+
+---
+
+「乗れたらいいね」: This means "It would be nice if I could ride it," which suggests a wish or hope rather than actual progress or achievement.
+
+---
+
+「乗れたほうがいいよ」: This means "It’s better if you can ride," which sounds like advice rather than a statement of progress.
+
+---
diff --git a/portfolio/site.hs b/portfolio/site.hs
index 9b974e1..9d27636 100644
--- a/portfolio/site.hs
+++ b/portfolio/site.hs
@@ -53,6 +53,18 @@ main = hakyll $ do
>>= loadAndApplyTemplate "templates/default.html" (postCtx language)
>>= relativizeUrls
+ match "pages/en/japan/language/**" $ do
+ route $ setExtension "html"
+ compile $ do
+ identifier <- getUnderlying
+ metadata <- getMetadata identifier
+ let language = lookupString "language" metadata
+
+ pandocCompiler
+ >>= loadAndApplyTemplate "templates/japan-language-note.html" (postCtx language)
+ >>= loadAndApplyTemplate "templates/default.html" (postCtx language)
+ >>= relativizeUrls
+
match "pages/*/plamo/**" $ do
route $ setExtension "html"
compile $ do
@@ -125,6 +137,30 @@ main = hakyll $ do
>>= loadAndApplyTemplate "templates/default.html" plamoCtx
>>= relativizeUrls
+ match (fromList
+ [ "nl/japan.html"
+ , "jp/japan.html"
+ , "en/japan.html"
+ ]) $ do
+ route idRoute
+ compile $ do
+ identifier <- getUnderlying
+ metadata <- getMetadata identifier
+ let language = lookupString "language" metadata
+ let lang = fromMaybe "en" language
+
+ notes <- loadAll "pages/en/japan/language/notes/*"
+
+ let japanCtx =
+ listField "notes" (postCtx language) (return notes) <>
+ langDict lang <>
+ defaultContext
+
+ getResourceBody
+ >>= applyAsTemplate japanCtx
+ >>= loadAndApplyTemplate "templates/default.html" japanCtx
+ >>= relativizeUrls
+
match (fromList
[ "index.html"
, "nl/index.html"
diff --git a/portfolio/templates/japan-language-note.html b/portfolio/templates/japan-language-note.html
new file mode 100644
index 0000000..1846ba1
--- /dev/null
+++ b/portfolio/templates/japan-language-note.html
@@ -0,0 +1,5 @@
+
+
+
diff --git a/portfolio/templates/japan-language-notes.html b/portfolio/templates/japan-language-notes.html
new file mode 100644
index 0000000..3a5ae2d
--- /dev/null
+++ b/portfolio/templates/japan-language-notes.html
@@ -0,0 +1,17 @@
+Japanese language notes
+$for(notes)$
+
+$endfor$
+て-forms
+
+Particles (助詞、じょし)
+
+Binding particles (係助詞、かかりじょし)
+
+Adverbial particles (副助詞、ふくじょし)
+
+Verbs
+
+Other2>
\ No newline at end of file
diff --git a/portfolio/templates/navbar.html b/portfolio/templates/navbar.html
index 225e6b8..5f43db5 100644
--- a/portfolio/templates/navbar.html
+++ b/portfolio/templates/navbar.html
@@ -9,7 +9,7 @@