diff --git a/website/src/lib/components/Menu.svelte b/website/src/lib/components/Menu.svelte
index 8e062a36..b450c070 100644
--- a/website/src/lib/components/Menu.svelte
+++ b/website/src/lib/components/Menu.svelte
@@ -25,7 +25,8 @@
Moon,
Layers3,
MountainSnow,
- GalleryVertical
+ GalleryVertical,
+ Languages
} from 'lucide-svelte';
import {
@@ -39,7 +40,7 @@
updateSelectionFromKey
} from '$lib/stores';
import { selectAll, selection } from '$lib/components/file-list/Selection';
- import { derived } from 'svelte/store';
+ import { derived, get } from 'svelte/store';
import { canUndo, canRedo, dbUtils, fileObservers, settings } from '$lib/db';
import { anySelectedLayer } from '$lib/components/layer-control/utils';
import { defaultOverlays } from '$lib/assets/layers';
@@ -47,7 +48,9 @@
import { resetMode, setMode, systemPrefersMode } from 'mode-watcher';
- import { _ } from 'svelte-i18n';
+ import { _, locale } from 'svelte-i18n';
+ import { languages } from '$lib/languages';
+ import { goto } from '$app/navigation';
const {
distanceUnits,
@@ -249,6 +252,26 @@
+
+
+
+ {$_('menu.language')}
+
+
+ {
+ if (value) {
+ goto('/' + (value === 'en' ? '' : value));
+ }
+ }}
+ >
+ {#each Object.entries(languages) as [code, name]}
+ {name}
+ {/each}
+
+
+
{#if $mode === 'system'}
diff --git a/website/src/lib/languages.ts b/website/src/lib/languages.ts
new file mode 100644
index 00000000..a3e24e4a
--- /dev/null
+++ b/website/src/lib/languages.ts
@@ -0,0 +1,3 @@
+export const languages = {
+ 'en': 'English',
+};
\ No newline at end of file
diff --git a/website/src/locales/en.json b/website/src/locales/en.json
index 413a0465..6bccdcb2 100644
--- a/website/src/locales/en.json
+++ b/website/src/locales/en.json
@@ -29,6 +29,7 @@
"temperature_units": "Temperature units",
"celsius": "Celsius",
"fahrenheit": "Fahrenheit",
+ "language": "Language",
"mode": "Mode",
"light": "Light",
"dark": "Dark",