feat(slides): add workshop slides for JSR-354 Money and Currency API

Introduce complete slide deck covering:
- problem statement and limitations of double, BigDecimal, and Currency
- fundamentals of MonetaryAmount, CurrencyUnit, and Money
- arithmetic operations, rounding, formatting, and parsing
- advanced concepts: currency conversion, MonetaryOperator, MonetaryQuery, MonetaryContext
- architecture and integration topics
- hands-on exercises for all sections

Add informational slide about JSR-354, its origins, and key contributors.
Include exercise guidance, pause slide, and workshop wrap-up.

Signed-off-by: Marcus Fihlon <marcus@fihlon.swiss>
This commit is contained in:
Marcus Fihlon 2026-04-19 20:50:17 +02:00
commit e83a9a5b93
Signed by: McPringle
GPG key ID: C6B7F469EE363E1F
8 changed files with 7333 additions and 0 deletions

9
slides/.gitignore vendored Normal file
View file

@ -0,0 +1,9 @@
.DS_Store
.remote-assets
.vite-inspect
components.d.ts
node_modules
dist
*.local
*.pdf
*.pptx

3
slides/.npmrc Normal file
View file

@ -0,0 +1,3 @@
# for pnpm
shamefully-hoist=true
auto-install-peers=true

35
slides/README.md Normal file
View file

@ -0,0 +1,35 @@
# Folien für den Workshop
**Beyond BigDecimal: Money and Currency API in Java (JSR-354)**
## Folien bearbeiten
Die Folien werden in Markdown-Syntax in der Datei `slides.md` beschrieben. Enthaltene Grafiken und andere Dateien werden im Unterverzeichnis `public` abgelegt.
Eine umfangreiche Dokumentation von Slidev gibt es online: https://sli.dev/guide/
## Präsentation starten
Ganz einfach im Terminal:
```
pnpm slidev
```
Anschliessend einfach `o` tippen, um den Standard-Browser mit der URL http://localhost:3030/ zu öffnen.
## Folien exportieren
Slidev beherrscht den Export der Präsentation als PDF und PowerPoint.
### PDF
```
pnpm slidev export --format pdf
```
### PowerPoint
```
pnpm slidev export --format pptx
```

16
slides/netlify.toml Normal file
View file

@ -0,0 +1,16 @@
[build]
publish = "dist"
command = "npm run build"
[build.environment]
NODE_VERSION = "20"
[[redirects]]
from = "/.well-known/*"
to = "/.well-known/:splat"
status = 200
[[redirects]]
from = "/*"
to = "/index.html"
status = 200

19
slides/package.json Normal file
View file

@ -0,0 +1,19 @@
{
"name": "jugch-gv-2026",
"type": "module",
"private": true,
"scripts": {
"build": "slidev build",
"dev": "slidev --open",
"export": "slidev export"
},
"dependencies": {
"@slidev/cli": "^52.14.1",
"@slidev/theme-default": "latest",
"@slidev/theme-seriph": "latest",
"vue": "^3.5.29"
},
"devDependencies": {
"playwright-chromium": "^1.58.2"
}
}

6183
slides/pnpm-lock.yaml generated Normal file

File diff suppressed because it is too large Load diff

1061
slides/slides.md Normal file

File diff suppressed because it is too large Load diff

7
slides/vercel.json Normal file
View file

@ -0,0 +1,7 @@
{
"rewrites": [
{ "source": "/(.*)", "destination": "/index.html" }
],
"buildCommand": "npm run build",
"outputDirectory": "dist"
}