diff --git a/.vuepress/config.ts b/.vuepress/config.ts index fb9c5ea..147a85f 100644 --- a/.vuepress/config.ts +++ b/.vuepress/config.ts @@ -1,155 +1,25 @@ import { defineUserConfig, defaultTheme } from 'vuepress'; import { removeHtmlExtensionPlugin } from 'vuepress-plugin-remove-html-extension'; +import head from './head'; +import locales from './locales'; +import themeLocales from './themeLocales'; export default defineUserConfig({ lang: 'fr-FR', title: 'Lucien Cartier-Tilet', description: 'Site web personnel de Lucien Cartier-Tilet', lastUpdated: true, - head: [ - [ - 'link', - { - rel: 'icon', - href: 'https://cdn.phundrak.com/img/mahakala-128x128.png', - }, - ], - [ - 'meta', - { - name: 'author', - content: 'Lucien Cartier-Tilet', - }, - ], - [ - 'meta', - { - property: 'og:image', - content: 'https://cdn.phundrak.com/img/rich_preview.png', - }, - ], - [ - 'meta', - { - property: 'org:title', - content: 'Lucien Cartier-Tilet', - }, - ], - [ - 'meta', - { - property: 'og:description', - content: 'Site web personnel de Lucien Cartier-Tilet', - }, - ], - [ - 'meta', - { - name: 'twitter:card', - content: 'summary', - }, - ], - [ - 'meta', - { - name: 'twitter:site', - content: '@phundrak', - }, - ], - [ - 'meta', - { - name: 'twitter:creator', - content: '@phundrak', - }, - ], - ], + head: head, markdown: { html: true, linkify: true, typographer: true, }, plugins: [removeHtmlExtensionPlugin()], - locales: { - '/': { - lang: 'fr-FR', - title: 'Lucien Cartier-Tilet', - description: 'Site web personnel de Lucien Cartier-Tilet', - }, - '/en/': { - lang: 'en-US', - title: 'Lucien Cartier-Tilet', - description: 'Personal website of Lucien Cartier-Tilet', - }, - '/lfn/': { - lang: 'lfn', - title: 'Lucien Cartier-Tilet', - description: 'loca ueb de Lucien Cartier-Tilet', - }, - }, + locales: locales, theme: defaultTheme({ contributors: false, - locales: { - '/': { - selectLanguageName: 'Français', - tip: 'nota bene', - warning: 'attention', - sidebar: [ - '/README.md', - '/about.md', - '/resume.md', - '/projects.md', - '/conlanging.md', - '/vocal-synthesis.md', - ], - notFound: [ - 'C’est bien vide ici', - 'Pourquoi sommes-nous ici?', - 'Erreur 404', - 'Le lien ne semble pas être correct', - ], - backToHome: 'Retour accueil', - openInNewWindow: 'Ouvrir dans une nouvelle fenêtre', - toggleColorMode: 'Changer de thème', - toggleSidebar: 'Barre latérale', - lastUpdatedText: 'Dernière mise à jour', - }, - '/lfn/': { - selectLanguageName: 'Elefen', - tip: 'avisa', - warning: 'averti', - danger: 'peril', - sidebar: [ - '/lfn/index.md', - '/lfn/about.md', - '/lfn/resume.md', - '/lfn/projects.md', - '/lfn/conlanging.md', - '/lfn/vocal-synthesis.md', - ], - notFound: [ - 'Ce? Se no ave no cosa asi', - 'A do vade tu?', - 'Era 404', - 'La lia no es coreta', - ], - backToHome: 'reversa a la paja prima', - openInNewWindow: 'abri en un nova fenetra', - toggleColorMode: 'cambia la colores', - toggleSidebar: 'bara ladal', - lastUpdatedText: 'Ultima refresci', - }, - '/en/': { - selectLanguageName: 'English', - sidebar: [ - '/en/index.md', - '/en/about.md', - '/en/resume.md', - '/en/projects.md', - '/en/conlanging.md', - '/en/vocal-synthesis.md', - ], - }, - }, + locales: themeLocales, + repo: 'https://labs.phundrak.com/phundrak/phundrak.com', }), }); diff --git a/.vuepress/head.ts b/.vuepress/head.ts new file mode 100644 index 0000000..3830428 --- /dev/null +++ b/.vuepress/head.ts @@ -0,0 +1,128 @@ +interface SimplifiedHeader { + tag: string; + content: [any]; +} + +const simplifiedHead = [ + { + tag: 'meta', + content: [ + { + name: 'author', + content: 'Lucien Cartier-Tilet', + }, + { + property: 'og:image', + content: 'https://cdn.phundrak.com/img/rich_preview.png', + }, + { + property: 'org:title', + content: 'Lucien Cartier-Tilet', + }, + { + property: 'og:description', + content: 'Site web personnel de Lucien Cartier-Tilet', + }, + { + name: 'twitter:card', + content: 'summary', + }, + { + name: 'twitter:site', + content: '@phundrak', + }, + { + name: 'twitter:creator', + content: '@phundrak', + }, + { name: 'msapplication-TileColor', content: '#3b4252' }, + { name: 'msapplication-TileImage', content: '/ms-icon-144x144.png' }, + { name: 'theme-color', content: '#3b4252' }, + ], + }, + { + tag: 'link', + content: [ + { + rel: 'apple-touch-icon', + sizes: '57x57', + href: '/apple-icon-57x57.png', + }, + { + rel: 'apple-touch-icon', + sizes: '60x60', + href: '/apple-icon-60x60.png', + }, + { + rel: 'apple-touch-icon', + sizes: '72x72', + href: '/apple-icon-72x72.png', + }, + { + rel: 'apple-touch-icon', + sizes: '76x76', + href: '/apple-icon-76x76.png', + }, + { + rel: 'apple-touch-icon', + sizes: '114x114', + href: '/apple-icon-114x114.png', + }, + { + rel: 'apple-touch-icon', + sizes: '120x120', + href: '/apple-icon-120x120.png', + }, + { + rel: 'apple-touch-icon', + sizes: '144x144', + href: '/apple-icon-144x144.png', + }, + { + rel: 'apple-touch-icon', + sizes: '152x152', + href: '/apple-icon-152x152.png', + }, + { + rel: 'apple-touch-icon', + sizes: '180x180', + href: '/apple-icon-180x180.png', + }, + { + rel: 'icon', + type: 'image/png', + sizes: '192x192', + href: '/android-icon-192x192.png', + }, + { + rel: 'icon', + type: 'image/png', + sizes: '32x32', + href: '/favicon-32x32.png', + }, + { + rel: 'icon', + type: 'image/png', + sizes: '96x96', + href: '/favicon-96x96.png', + }, + { + rel: 'icon', + type: 'image/png', + sizes: '16x16', + href: '/favicon-16x16.png', + }, + { rel: 'manifest', href: '/manifest.json' }, + ], + }, +]; + +let head = []; +simplifiedHead.map((tag: SimplifiedHeader) => { + let tagName = tag.tag; + tag.content.forEach((element) => { + head.push([tagName, element]); + }); +}); + +export default head; diff --git a/.vuepress/locales.ts b/.vuepress/locales.ts new file mode 100644 index 0000000..4531590 --- /dev/null +++ b/.vuepress/locales.ts @@ -0,0 +1,19 @@ +const locales = { + '/': { + lang: 'fr-FR', + title: 'Lucien Cartier-Tilet', + description: 'Site web personnel de Lucien Cartier-Tilet', + }, + '/en/': { + lang: 'en-US', + title: 'Lucien Cartier-Tilet', + description: 'Personal website of Lucien Cartier-Tilet', + }, + '/lfn/': { + lang: 'lfn', + title: 'Lucien Cartier-Tilet', + description: 'loca ueb de Lucien Cartier-Tilet', + }, +}; + +export default locales; diff --git a/.vuepress/public/android-icon-144x144.png b/.vuepress/public/android-icon-144x144.png new file mode 100644 index 0000000..e7c0d26 Binary files /dev/null and b/.vuepress/public/android-icon-144x144.png differ diff --git a/.vuepress/public/android-icon-192x192.png b/.vuepress/public/android-icon-192x192.png new file mode 100644 index 0000000..b37490b Binary files /dev/null and b/.vuepress/public/android-icon-192x192.png differ diff --git a/.vuepress/public/android-icon-36x36.png b/.vuepress/public/android-icon-36x36.png new file mode 100644 index 0000000..b5a48ba Binary files /dev/null and b/.vuepress/public/android-icon-36x36.png differ diff --git a/.vuepress/public/android-icon-48x48.png b/.vuepress/public/android-icon-48x48.png new file mode 100644 index 0000000..988638a Binary files /dev/null and b/.vuepress/public/android-icon-48x48.png differ diff --git a/.vuepress/public/android-icon-72x72.png b/.vuepress/public/android-icon-72x72.png new file mode 100644 index 0000000..34146d5 Binary files /dev/null and b/.vuepress/public/android-icon-72x72.png differ diff --git a/.vuepress/public/android-icon-96x96.png b/.vuepress/public/android-icon-96x96.png new file mode 100644 index 0000000..6b2b1dd Binary files /dev/null and b/.vuepress/public/android-icon-96x96.png differ diff --git a/.vuepress/public/apple-icon-114x114.png b/.vuepress/public/apple-icon-114x114.png new file mode 100644 index 0000000..9dbe1df Binary files /dev/null and b/.vuepress/public/apple-icon-114x114.png differ diff --git a/.vuepress/public/apple-icon-120x120.png b/.vuepress/public/apple-icon-120x120.png new file mode 100644 index 0000000..3a2a9cb Binary files /dev/null and b/.vuepress/public/apple-icon-120x120.png differ diff --git a/.vuepress/public/apple-icon-144x144.png b/.vuepress/public/apple-icon-144x144.png new file mode 100644 index 0000000..e7c0d26 Binary files /dev/null and b/.vuepress/public/apple-icon-144x144.png differ diff --git a/.vuepress/public/apple-icon-152x152.png b/.vuepress/public/apple-icon-152x152.png new file mode 100644 index 0000000..45c5a17 Binary files /dev/null and b/.vuepress/public/apple-icon-152x152.png differ diff --git a/.vuepress/public/apple-icon-180x180.png b/.vuepress/public/apple-icon-180x180.png new file mode 100644 index 0000000..7b9b181 Binary files /dev/null and b/.vuepress/public/apple-icon-180x180.png differ diff --git a/.vuepress/public/apple-icon-57x57.png b/.vuepress/public/apple-icon-57x57.png new file mode 100644 index 0000000..80c2f72 Binary files /dev/null and b/.vuepress/public/apple-icon-57x57.png differ diff --git a/.vuepress/public/apple-icon-60x60.png b/.vuepress/public/apple-icon-60x60.png new file mode 100644 index 0000000..3424c80 Binary files /dev/null and b/.vuepress/public/apple-icon-60x60.png differ diff --git a/.vuepress/public/apple-icon-72x72.png b/.vuepress/public/apple-icon-72x72.png new file mode 100644 index 0000000..34146d5 Binary files /dev/null and b/.vuepress/public/apple-icon-72x72.png differ diff --git a/.vuepress/public/apple-icon-76x76.png b/.vuepress/public/apple-icon-76x76.png new file mode 100644 index 0000000..d937a79 Binary files /dev/null and b/.vuepress/public/apple-icon-76x76.png differ diff --git a/.vuepress/public/apple-icon-precomposed.png b/.vuepress/public/apple-icon-precomposed.png new file mode 100644 index 0000000..be81289 Binary files /dev/null and b/.vuepress/public/apple-icon-precomposed.png differ diff --git a/.vuepress/public/apple-icon.png b/.vuepress/public/apple-icon.png new file mode 100644 index 0000000..be81289 Binary files /dev/null and b/.vuepress/public/apple-icon.png differ diff --git a/.vuepress/public/browserconfig.xml b/.vuepress/public/browserconfig.xml new file mode 100644 index 0000000..e88c0f9 --- /dev/null +++ b/.vuepress/public/browserconfig.xml @@ -0,0 +1,2 @@ + +#eceff4 diff --git a/.vuepress/public/favicon-16x16.png b/.vuepress/public/favicon-16x16.png new file mode 100644 index 0000000..8c12608 Binary files /dev/null and b/.vuepress/public/favicon-16x16.png differ diff --git a/.vuepress/public/favicon-32x32.png b/.vuepress/public/favicon-32x32.png new file mode 100644 index 0000000..3f516ec Binary files /dev/null and b/.vuepress/public/favicon-32x32.png differ diff --git a/.vuepress/public/favicon-96x96.png b/.vuepress/public/favicon-96x96.png new file mode 100644 index 0000000..6b2b1dd Binary files /dev/null and b/.vuepress/public/favicon-96x96.png differ diff --git a/.vuepress/public/favicon.ico b/.vuepress/public/favicon.ico new file mode 100644 index 0000000..af79819 Binary files /dev/null and b/.vuepress/public/favicon.ico differ diff --git a/.vuepress/public/ms-icon-144x144.png b/.vuepress/public/ms-icon-144x144.png new file mode 100644 index 0000000..e7c0d26 Binary files /dev/null and b/.vuepress/public/ms-icon-144x144.png differ diff --git a/.vuepress/public/ms-icon-150x150.png b/.vuepress/public/ms-icon-150x150.png new file mode 100644 index 0000000..9b28b08 Binary files /dev/null and b/.vuepress/public/ms-icon-150x150.png differ diff --git a/.vuepress/public/ms-icon-310x310.png b/.vuepress/public/ms-icon-310x310.png new file mode 100644 index 0000000..8077cbb Binary files /dev/null and b/.vuepress/public/ms-icon-310x310.png differ diff --git a/.vuepress/public/ms-icon-70x70.png b/.vuepress/public/ms-icon-70x70.png new file mode 100644 index 0000000..810f6a3 Binary files /dev/null and b/.vuepress/public/ms-icon-70x70.png differ diff --git a/.vuepress/themeLocales.ts b/.vuepress/themeLocales.ts new file mode 100644 index 0000000..23542df --- /dev/null +++ b/.vuepress/themeLocales.ts @@ -0,0 +1,64 @@ +const themeLocales = { + '/': { + selectLanguageName: 'Français', + tip: 'nota bene', + warning: 'attention', + sidebar: [ + '/README.md', + '/about.md', + '/resume.md', + '/projects.md', + '/conlanging.md', + '/vocal-synthesis.md', + ], + notFound: [ + 'C’est bien vide ici', + 'Pourquoi sommes-nous ici?', + 'Erreur 404', + 'Le lien ne semble pas être correct', + ], + backToHome: 'Retour accueil', + openInNewWindow: 'Ouvrir dans une nouvelle fenêtre', + toggleColorMode: 'Changer de thème', + toggleSidebar: 'Barre latérale', + lastUpdatedText: 'Dernière mise à jour', + }, + '/lfn/': { + selectLanguageName: 'Elefen', + tip: 'avisa', + warning: 'averti', + danger: 'peril', + sidebar: [ + '/lfn/index.md', + '/lfn/about.md', + '/lfn/resume.md', + '/lfn/projects.md', + '/lfn/conlanging.md', + '/lfn/vocal-synthesis.md', + ], + notFound: [ + 'Ce? Se no ave no cosa asi', + 'A do vade tu?', + 'Era 404', + 'La lia no es coreta', + ], + backToHome: 'reversa a la paja prima', + openInNewWindow: 'abri en un nova fenetra', + toggleColorMode: 'cambia la colores', + toggleSidebar: 'bara ladal', + lastUpdatedText: 'Ultima refresci', + }, + '/en/': { + selectLanguageName: 'English', + sidebar: [ + '/en/index.md', + '/en/about.md', + '/en/resume.md', + '/en/projects.md', + '/en/conlanging.md', + '/en/vocal-synthesis.md', + ], + }, +}; + +export default themeLocales;