diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index c69d15f..35a47f6 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -37,11 +37,23 @@ jobs: - name: Install dependencies run: pnpm install - - name: Lint all projects - run: pnpm run lint + - name: Lint - Backend + run: pnpm run lint:back - - name: Build all projects - run: pnpm run build + - name: Build - Backend + run: pnpm run build:back + + - name: Lint - Frontend + run: pnpm run lint:front + + - name: Build - Frontend + run: pnpm run build:front + + - name: Lint - Documentation + run: pnpm run lint:docs + + - name: Build - Documentation + run: pnpm run build:docs - name: Deploy with Docker Compose run: | diff --git a/documentation/biome.json b/documentation/biome.json index 383bfff..7a60e1c 100644 --- a/documentation/biome.json +++ b/documentation/biome.json @@ -17,7 +17,15 @@ "linter": { "enabled": true, "rules": { - "recommended": true + "recommended": true, + "a11y": { + "useAriaPropsForRole": "warn", + "useSemanticElements": "warn", + "useFocusableInteractive": "warn" + }, + "suspicious": { + "noUnknownAtRules": "off" + } }, "domains": { "next": "recommended", diff --git a/documentation/next.config.mjs b/documentation/next.config.mjs index 649208d..d3f7c05 100644 --- a/documentation/next.config.mjs +++ b/documentation/next.config.mjs @@ -4,8 +4,8 @@ const withMDX = createMDX(); /** @type {import('next').NextConfig} */ const config = { - reactStrictMode: true, - output: 'standalone', + reactStrictMode: true, + output: "standalone", }; export default withMDX(config); diff --git a/documentation/src/app/(home)/page.tsx b/documentation/src/app/(home)/page.tsx index f70999c..46dfec9 100644 --- a/documentation/src/app/(home)/page.tsx +++ b/documentation/src/app/(home)/page.tsx @@ -1,5 +1,13 @@ +import { + ArrowRight, + Code, + Database, + Scale, + Server, + Shield, + Zap, +} from "lucide-react"; import Link from "next/link"; -import { Shield, Scale, Zap, Database, Server, Code, ArrowRight } from "lucide-react"; export default function HomePage() { return ( @@ -33,8 +41,9 @@ export default function HomePage() { La Bible Technique de MemeGoat 🐐

- Parce que partager des MEME de qualité demande une infrastructure qui ne broute pas. - Découvrez comment nous avons bùti le futur du rire avec une pointe de sérieux (mais pas trop). + Parce que partager des MEME de qualité demande une infrastructure qui ne + broute pas. Découvrez comment nous avons bùti le futur du rire avec une + pointe de sérieux (mais pas trop).

-

Les Fondations

+

+ Les Fondations +

Une plateforme bĂątie pour tenir

@@ -68,21 +79,27 @@ export default function HomePage() { {[ { name: "Coffre-Fort BĂȘĂȘĂȘĂȘ-ton", - description: "Chiffrement PGP au repos et hachage Argon2id. Vos donnĂ©es sont plus en sĂ©curitĂ© ici que dans un enclos fermĂ© Ă  double tour.", + description: + "Chiffrement PGP au repos et hachage Argon2id. Vos donnĂ©es sont plus en sĂ©curitĂ© ici que dans un enclos fermĂ© Ă  double tour.", icon: Shield, }, { name: "RGPD & Relax", - description: "Droit Ă  l'oubli et portabilitĂ©. On respecte votre vie privĂ©e autant que vous respectez un bon mĂšme bien placĂ©.", + description: + "Droit Ă  l'oubli et portabilitĂ©. On respecte votre vie privĂ©e autant que vous respectez un bon mĂšme bien placĂ©.", icon: Scale, }, { name: "Vitesse Turbo-ChĂšvre", - description: "Transcodage WebP/WebM instantanĂ©. Vos GIFs se chargent plus vite que votre ombre, mĂȘme sur le vieux smartphone de mamie.", + description: + "Transcodage WebP/WebM instantanĂ©. Vos GIFs se chargent plus vite que votre ombre, mĂȘme sur le vieux smartphone de mamie.", icon: Zap, }, ].map((feature) => ( -
+