MCPcopy Index your code
hub / github.com/codegouvfr/react-dsfr

github.com/codegouvfr/react-dsfr @v1.32.4

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.32.4 ↗ · + Follow
345 symbols 1,562 edges 402 files 1 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README
<img src="https://github.com/codegouvfr/react-dsfr/releases/download/assets/dsfr-react_repo-card.png">






🇫🇷 <i>React intégration pour le <a href="https://www.systeme-de-design.gouv.fr/">System de design du gouvernement français (alias DSFR)</a></i> 🇫🇷






<a href="https://github.com/codegouvfr/react-dsfr/actions">
  <img src="https://github.com/codegouvfr/react-dsfr/actions/workflows/ci.yaml/badge.svg">
</a>
<a href="https://www.npmjs.com/package/@codegouvfr/react-dsfr">
  <img src="https://img.shields.io/npm/v/@codegouvfr/react-dsfr?logo=npm">
</a>
<a href="https://bundlephobia.com/package/@codegouvfr/react-dsfr">
  <img src="https://img.shields.io/bundlephobia/minzip/@codegouvfr/react-dsfr">
</a>
<a href="https://github.com/codegouvfr/react-dsfr/blob/main/LICENSE">
  <img src="https://img.shields.io/npm/l/@codegouvfr/react-dsfr">
</a>

Documentation des composants - guides - essai immédiat

AVERTISSEMENT : Ce système de conception est uniquement destiné à être utilisé pour les sites web officiels des services publics français.
Son objectif principal est de faciliter l'identification des sites gouvernementaux par les citoyens. Voir les conditions.

Ce module est une boîte à outils avancée qui tire parti de @gouvfr/dsfr, l'implémentation en JS/CSS vanilla du DSFR.

image

Bien que ce module soit écrit en TypeScript, l'utilisation de TypeScript dans votre application est optionnelle (mais recommandée car elle apporte des avantages exceptionnels à la fois pour vous et votre base de code).

💡 Besoin de pages de connexion et d'inscription prêtes à l'emploi et conformes au DSFR ? Consultez keycloak-theme-dsfr.

🚀 Commencez ici 🚀

Gouvernance

Ce module est un produit du pôle Logiciel libre et open source d'Etalab.

Ce projet est co-maintenu par des fonctionnaires de diverses administrations françaises :

Développement

git clone https://github.com/codegouvfr/react-dsfr
cd react-dsfr
yarn

# Démarrer storybook
yarn storybook

# Démarrer les applications de test
yarn start-cra  # Pour tester dans une configuration Create React App
yarn start-vite # Pour tester dans une configuration Vite
yarn start-next-pagesdir # Pour tester dans une configuration Next.js 13 PagesDir (la configuration par défaut)
yarn start-next-appdir # Pour tester dans une configuration Next.js 13 AppDir

# Exécuter tous les tests unitaires (test/runtime):
yarn test
# Exécuter uniquement test/runtime/cssVariable.test.ts (par exemple)
npx vitest -t "Resolution of CSS variables"

Vous voulez contribuer ?

Merci ! Voir le guide de contribution.

Comment publier une nouvelle version sur NPM, comment sortir une version bêta

Ce dépôt a été initialisé à partir de garronej/ts-ci, consultez la documentation de ce starter pour comprendre le cycle de vie de ce dépôt.

Cas d'utilisation

Quelques projets qui utilisent @codegouvfr/react-dsfr.

  • https://adresse.data.gouv.fr
  • https://cartes.gouv.fr
  • https://code.gouv.fr/sill
  • https://diagoriente.beta.gouv.fr
  • https://egapro.travail.gouv.fr
  • https://github.com/BaseAdresseNationale/bal-admin
  • https://github.com/DISIC/monfranceconnect
  • https://github.com/EIG6-ArtificIA/predictia_front
  • https://github.com/EIG6-Geocommuns/geocommuns-core
  • https://github.com/EIG6-Geocommuns/lidarviz-front
  • https://github.com/inclusion-numerique/mediature
  • https://github.com/InseeFr/Lunatic-DSFR
  • https://github.com/SocialGouv/bpco-site
  • https://immersion-facile.beta.gouv.fr
  • https://maisondelautisme.gouv.fr/
  • https://observatoire.numerique.gouv.fr
  • https://potentiel.beta.gouv.fr
  • https://refugies.info
  • https://signal.conso.gouv.fr
  • https://territoiresentransitions.fr
  • https://www.mediateur-public.fr

Extension points exported contracts — how you extend this code

RegisterLink (Interface)
(no doc)
test/integration/next-appdir/app/StartDsfr.tsx
RegisterLink (Interface)
(no doc)
src/link.tsx
Column (Interface)
(no doc)
src/Footer.tsx
Element (Interface)
(no doc)
src/tools/JSX.ts
IntrinsicElements (Interface)
(no doc)
src/Chart/GaugeChart.tsx
Window (Interface)
(no doc)
src/useIsDark/scriptToRunAsap.ts
ExpandMoreProps (Interface)
(no doc)
test/integration/next-appdir/app/mui/page.tsx
Link (Interface)
(no doc)
src/Footer.tsx

Core symbols most depended-on inside this repo

getStory
called by 308
stories/getStory.tsx
cx
called by 259
src/tools/cx.ts
t
called by 103
src/i18n.ts
createPicto
called by 101
src/picto/utils/PictoWrapper.tsx
getStoryFactory
called by 55
stories/getStory.tsx
useAnalyticsId
called by 38
src/tools/useAnalyticsId.ts
useTranslation
called by 36
src/i18n.ts
logCallbacks
called by 36
stories/getStory.tsx

Shape

Function 322
Interface 18
Class 4
Method 1

Languages

TypeScript100%

Modules by API surface

test/integration/next-pagesdir/pages/mui.tsx23 symbols
test/integration/next-appdir/app/mui/page.tsx23 symbols
scripts/picto-builder.ts10 symbols
src/mui/mui.tsx9 symbols
test/integration/vite/src/Mui.tsx8 symbols
test/integration/vite/src/Home.tsx8 symbols
test/integration/cra/src/Mui.tsx8 symbols
src/useIsDark/client.ts8 symbols
src/i18n.ts8 symbols
src/consentManagement/processConsentChanges.ts7 symbols
src/consentManagement/ConsentBannerAndConsentManagement/ConsentBannerAndConsentManagement.tsx7 symbols
src/Modal/useIsModalOpen.ts7 symbols

For agents

$ claude mcp add react-dsfr \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact