- Scaffold packages/site with 11 Vue components: hero (animated terminal), features, showcase, work groups, how-it-works, security, FAQ accordion, footer - i18n EN/FR via vue-i18n with 82+ keys, autodetect navigator.language, toggle without reload - Animated timeline (terminal, dialog, toast) ported from design, scroll-reveal, copy buttons (2 instances) - Self-hosted JetBrains Mono fonts (@fontsource), optimized assets (mark 28KB, og-cover 1200×630) - SEO: canonical, og:image, theme-color, robots.txt, sitemap.xml for git-arboretum.com - Monorepo integration (decoupled from npm release): build:site / dev:site / preview:site scripts - CI: add build:site step to ci.yml for early detection; create .gitea/workflows/prod.yml for FTPS deploy (lftp mirror) to git-arboretum.com - Validated builds ✓ and UI rendering (EN/FR headless test) ✓
13 lines
534 B
TypeScript
13 lines
534 B
TypeScript
import { createApp } from 'vue';
|
|
// Polices self-host (subset latin) — bundlées par Vite, aucune requête Google Fonts.
|
|
import '@fontsource/jetbrains-mono/latin-400.css';
|
|
import '@fontsource/jetbrains-mono/latin-500.css';
|
|
import '@fontsource/jetbrains-mono/latin-600.css';
|
|
import '@fontsource/jetbrains-mono/latin-700.css';
|
|
import App from './App.vue';
|
|
import { i18n } from './i18n';
|
|
import { reveal } from './composables/useScrollReveal';
|
|
import './style.css';
|
|
|
|
createApp(App).use(i18n).directive('reveal', reveal).mount('#app');
|