Skip to content

Commit 086a858

Browse files
committed
feat: ✨ configure le module pour VueDsfr
1 parent 05d4d88 commit 086a858

File tree

14 files changed

+366
-75
lines changed

14 files changed

+366
-75
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: Release Please
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
8+
permissions:
9+
contents: write
10+
pull-requests: write
11+
12+
jobs:
13+
release-please:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Release Please
17+
id: release
18+
uses: google-github-actions/release-please-action@v4
19+
with:
20+
token: ${{ secrets.GITHUB_TOKEN }}
21+
release-type: node
22+
target-branch: main
23+
- name: Checkout repository
24+
uses: actions/checkout@v4
25+
if: ${{ steps.release.outputs.release_created }}
26+
- uses: actions/setup-node@v4
27+
with:
28+
node-version: 20
29+
registry-url: 'https://registry.npmjs.org'
30+
if: ${{ steps.release.outputs.release_created }}
31+
- run: npm ci
32+
if: ${{ steps.release.outputs.release_created }}
33+
- run: npm publish --access public
34+
if: ${{ steps.release.outputs.release_created }}
35+
env:
36+
NPM_TOKEN: ${{secrets.NPM_TOKEN}}

.npmrc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
1+
@laruiss:registry=https://registry.npmjs.com
2+
//registry.npmjs.com/:_authToken=${NPM_TOKEN}
3+
always-auth=true
14
shamefully-hoist=true
25
strict-peer-dependencies=false

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "0.0.0"
2+
".": "1.0.0"
33
}

README.md

Lines changed: 74 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -3,56 +3,108 @@ Get your module up and running quickly.
33
44
Find and replace all on all files (CMD+SHIFT+F):
55
- Name: My Module
6-
- Package name: my-module
6+
- Package name: vue-dsfr-nuxt-module
77
- Description: My new Nuxt module
88
-->
99

10-
# My Module
10+
# Module VueDsfr pour Nuxt
1111

1212
[![npm version][npm-version-src]][npm-version-href]
1313
[![npm downloads][npm-downloads-src]][npm-downloads-href]
1414
[![License][license-src]][license-href]
1515
[![Nuxt][nuxt-src]][nuxt-href]
1616

17-
My new Nuxt module for doing amazing things.
17+
Ce module facilite l’utilisation de la bibliothèque VueDsfr dans un projet Nuxt 3.
1818

1919
- [ Release Notes](/CHANGELOG.md)
20-
<!-- - [🏀 Online playground](https://stackblitz.com/github/your-org/my-module?file=playground%2Fapp.vue) -->
20+
<!-- - [🏀 Online playground](https://stackblitz.com/github/your-org/vue-dsfr-nuxt-module?file=playground%2Fapp.vue) -->
2121
<!-- - [📖 &nbsp;Documentation](https://example.com) -->
2222

2323
## Features
2424

2525
<!-- Highlight some of the features your module provide here -->
26-
- &nbsp;Foo
27-
- 🚠 &nbsp;Bar
28-
- 🌲 &nbsp;Baz
26+
- 🪄 &nbsp;Imports automagique des imports des composables VueDsfr
27+
- 🪄 &nbsp;Imports automagique des imports des composants VueDsfr
28+
- &nbsp;Facilitation de l’utilisation des icônes de [Oh, Vue Icons](https://oh-vue-icons.netlify.app/)
2929

30-
## Quick Setup
30+
## Configuration rapide
3131

32-
1. Add `my-module` dependency to your project
32+
1. Ajouter la dépendance `vue-dsfr-nuxt-module` au projet
3333

3434
```bash
3535
# Using pnpm
36-
pnpm add -D my-module
36+
pnpm add -D vue-dsfr-nuxt-module
3737

3838
# Using yarn
39-
yarn add --dev my-module
39+
yarn add --dev vue-dsfr-nuxt-module
4040

4141
# Using npm
42-
npm install --save-dev my-module
42+
npm i -D vue-dsfr-nuxt-module
4343
```
4444

45-
2. Add `my-module` to the `modules` section of `nuxt.config.ts`
45+
2. Ajouter `vue-dsfr-nuxt-module` dans la section `modules` de `nuxt.config.ts`
4646

47-
```js
47+
```ts{3}
4848
export default defineNuxtConfig({
4949
modules: [
50-
'my-module'
50+
'vue-dsfr-nuxt-module'
5151
]
5252
})
5353
```
5454

55-
That's it! You can now use My Module in your Nuxt app ✨
55+
3. Ajouter le CSS de DSFR dans la section `css` de `nuxt.config.ts`
56+
57+
```ts{5-12}
58+
export default defineNuxtConfig({
59+
modules: [
60+
'vue-dsfr-nuxt-module'
61+
],
62+
css: [
63+
'@gouvfr/dsfr/dist/core/core.main.min.css', // Le CSS minimal du DSFR
64+
'@gouvfr/dsfr/dist/component/component.main.min.css' // Styles de tous les composants du DSFR
65+
'@gouvfr/dsfr/dist/utility/utility.main.min.css' // Classes utilitaires : les composants de VueDsfr en ont besoin
66+
67+
'@gouvfr/dsfr/dist/scheme/scheme.min.css' // Facultatif : Si les thèmes sont utilisés (thème sombre, thème en bernes)
68+
'@gouvfr/dsfr/dist/utility/icons/icons.min.css', // Facultatif : Si des icônes sont utilisées avec les classes "fr-icon-..."
69+
],
70+
})
71+
```
72+
73+
4. Facultatif : ajouter les icônes à utiliser avec OhVueIcon
74+
75+
```ts{5-12}
76+
import * as icons from './icons'
77+
78+
export default defineNuxtConfig({
79+
modules: [
80+
'vue-dsfr-nuxt-module'
81+
],
82+
css: [
83+
'@gouvfr/dsfr/dist/core/core.main.min.css', // Le CSS minimal du DSFR
84+
'@gouvfr/dsfr/dist/component/component.main.min.css' // Styles de tous les composants du DSFR
85+
'@gouvfr/dsfr/dist/utility/utility.main.min.css' // Classes utilitaires : les composants de VueDsfr en ont besoin
86+
87+
'@gouvfr/dsfr/dist/scheme/scheme.min.css' // Facultatif : Si les thèmes sont utilisés (thème sombre, thème en bernes)
88+
'@gouvfr/dsfr/dist/utility/icons/icons.min.css', // Facultatif : Si des icônes sont utilisées avec les classes "fr-icon-..."
89+
],
90+
runtimeConfig: {
91+
public: {
92+
vueDsfr: {
93+
icons: Object.values(icons),
94+
}
95+
},
96+
},
97+
})
98+
```
99+
100+
```ts
101+
export {
102+
RiFlagLine,
103+
RiHome2Line,
104+
} from 'oh-vue-icons/icons'
105+
```
106+
107+
Et voilà ! Vous êtes prêts à utiliser VueDsfr dans votre app Nuxt ✨
56108

57109
## Development
58110

@@ -81,14 +133,14 @@ npm run release
81133
```
82134

83135
<!-- Badges -->
84-
[npm-version-src]: https://img.shields.io/npm/v/my-module/latest.svg?style=flat&colorA=18181B&colorB=28CF8D
85-
[npm-version-href]: https://npmjs.com/package/my-module
136+
[npm-version-src]: https://img.shields.io/npm/v/vue-dsfr-nuxt-module/latest.svg?style=flat&colorA=18181B&colorB=28CF8D
137+
[npm-version-href]: https://npmjs.com/package/vue-dsfr-nuxt-module
86138

87-
[npm-downloads-src]: https://img.shields.io/npm/dm/my-module.svg?style=flat&colorA=18181B&colorB=28CF8D
88-
[npm-downloads-href]: https://npmjs.com/package/my-module
139+
[npm-downloads-src]: https://img.shields.io/npm/dm/vue-dsfr-nuxt-module.svg?style=flat&colorA=18181B&colorB=28CF8D
140+
[npm-downloads-href]: https://npmjs.com/package/vue-dsfr-nuxt-module
89141

90-
[license-src]: https://img.shields.io/npm/l/my-module.svg?style=flat&colorA=18181B&colorB=28CF8D
91-
[license-href]: https://npmjs.com/package/my-module
142+
[license-src]: https://img.shields.io/npm/l/vue-dsfr-nuxt-module.svg?style=flat&colorA=18181B&colorB=28CF8D
143+
[license-href]: https://npmjs.com/package/vue-dsfr-nuxt-module
92144

93145
[nuxt-src]: https://img.shields.io/badge/Nuxt-18181B?logo=nuxt.js
94146
[nuxt-href]: https://nuxt.com

0 commit comments

Comments
 (0)