Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/laruiss/gabarit-monorepo-explained
Étapes pour un monorepo avec pnpm, turbo, une app client (vue), une app server (fastify et vite-plugin-node), et une bibliothèque partagée
https://github.com/laruiss/gabarit-monorepo-explained
fastify monorepo turbo vite-plugin-node vue
Last synced: 25 days ago
JSON representation
Étapes pour un monorepo avec pnpm, turbo, une app client (vue), une app server (fastify et vite-plugin-node), et une bibliothèque partagée
- Host: GitHub
- URL: https://github.com/laruiss/gabarit-monorepo-explained
- Owner: laruiss
- Created: 2024-03-27T14:55:26.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-03-27T16:31:37.000Z (9 months ago)
- Last Synced: 2024-11-29T08:46:40.391Z (25 days ago)
- Topics: fastify, monorepo, turbo, vite-plugin-node, vue
- Language: Vue
- Homepage:
- Size: 108 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Construire un monorepo
## Introduction
Le monorepo va consister en :
- une configuration eslint partagée
- une bibliothèque partagée par le front et le back
- une application cliente
- une application server (fastify ou NestJS)## Les prérequis pour la compréhension
Les workspaces facilitent :
- le **partage de code** entre différents packages
Des outils spécialisées permettent
- l’**exécution de plusieurs tâches en une seule commande** (test, lint, build, deploy ou publish de plusieurs packages, par exemple)
## Les outils utilisées
### pnpm
Pour limiter les téléchargements et gagner de l’espace disque, ainsi que pour une gestions plus facile des workspaces, nous utiliserons pnpm.
### turbo
Pour gérer les actions sur plusieurs packages, nous utiliserons turborepo.
### back
Pour le back, nous allons faire une API avec Fastify.
### front
Pour le front, nous utiliserons Vue et VueDsfr
## Les étapes
1. Créons d’abord un fichier [.gitignore](./docs/gitignore.md)
2. Créons ensuite un fichier [.editorconfig](./docs/editorconfig.md)
3. Créons ensuite un fichier [pnpm-workspace.yaml](./docs/pnpm.mdgi)
4. Ajoutons turbo dans les dépendances et configurons-le [`turbo.json`](./docs/turbo.md)
5. Ajoutons un serveur simple fait avec [fastify](./docs/fastify.md)
6. Ajoutons une application client avec [vue](./docs/vue.md)