Brak opisu

Olivier Massot fe6b36e9ef improve lodash imports and minor fixes 2 lat temu
assets 38cef80d19 V8-4103 2 lat temu
components fe6b36e9ef improve lodash imports and minor fixes 2 lat temu
composables fe6b36e9ef improve lodash imports and minor fixes 2 lat temu
config c97085daac minor style fixes 2 lat temu
doc 0ac643b556 finalize themes 2 lat temu
lang f0d09190c3 finalize Notification component 2 lat temu
layouts 0ac643b556 finalize themes 2 lat temu
middleware a353618569 v4027 Review todos, .env.local becomes .env.docker 3 lat temu
models f0d09190c3 finalize Notification component 2 lat temu
pages 273e9b162e various fixes 2 lat temu
plugins 4f07ad2b53 add and configure vue-date-picker 2 lat temu
public 508c42b1af Merge branch 'feature/v8-4103' into develop 2 lat temu
services fe6b36e9ef improve lodash imports and minor fixes 2 lat temu
stores f4f2921e88 various fixes 2 lat temu
tests 6f71f2ab8b complete tests and add default locale to tests 2 lat temu
types 662e88eeb8 reorganize menuBuilder services and add menuComposer.test.ts 2 lat temu
.env.docker 9ceefa6367 fix imports and add env to runtime config 2 lat temu
.env.prod 9ceefa6367 fix imports and add env to runtime config 2 lat temu
.env.test 273e9b162e various fixes 2 lat temu
.eslintrc.cjs d4019bd3db rewrite data services (ongoing) 3 lat temu
.gitignore 93fe0f054a update readme 2 lat temu
.gitlab-ci.yml 90faf43c9d fix ci config 2 lat temu
.nvmrc 3324ed078f set default nvm version and fix nuxt config for non-dev env 2 lat temu
.prettierrc d4019bd3db rewrite data services (ongoing) 3 lat temu
README.md 3324ed078f set default nvm version and fix nuxt config for non-dev env 2 lat temu
app.vue dd15fcee93 Menu 3 lat temu
logo.png d4019bd3db rewrite data services (ongoing) 3 lat temu
nuxt.config.ts fe6b36e9ef improve lodash imports and minor fixes 2 lat temu
package.json 273e9b162e various fixes 2 lat temu
tsconfig.json 685085c2e4 add unit tests and minor fixes 2 lat temu
vitest.config.ts af0b611284 upgrade vitest and add junit report to vitest config and CI 2 lat temu
yarn.lock f4f2921e88 various fixes 2 lat temu

README.md

App - Migration Nuxt 3

Latest Release

Branch Status Coverage
master pipeline status coverage report
develop pipeline status coverage report

Frontend développé avec NuxtJs 3

A voir :

Installation (mode dev)

Cloner le projet :

git clone git@gitlab.2iopenservice.com:opentalent/app_nuxt3.git

Installer les dépendances :

yarn install

Créer le symlink vers le bon fichier env (remplacer <environnement> par l'env courant):

ln -s .env.<environnement> .env

Copier les certificats à la racine de ce projet :

  • local.app-v3.opentalent.fr.crt
  • local.app-v3.opentalent.fr.key

Lancer le serveur de développement :

yarn dev -o

Déploiement en prod

Premier déploiement en tant que service

On commence par cloner le projet app, puis par se placer dans le répertoire ainsi créé.

On créé un symlink vers le fichier .env.xxx voulu sous le nom de .env (selon l'environnement)

ln -s .env.xxx .env

Pour déployer le projet en mode SSR, on commence par mettre à jour et compiler avec la commande custom :

yarn deploy

Cette commande est un alias qui équivaut à lancer :

git pull
yarn install
yarn build

Mettre à jour

Se placer dans le répertoire de l'application, puis lancer :

yarn deploy

Spécial : environnement de test

Attention, sur les environnements de test, il faut utiliser nvm pour exécuter la bonne version de node, exemple :

nvm exec yarn install

Autres

Lancer les tests

Pour lancer les tests unitaires :

jest

Générer la doc

Pour régénérer la documentation automatique :

yarn docs

Déboguer en prod ou en test

Sur les environnements où app est servie par supervisor, on peut consulter les logs d'erreur avec :

sudo supervisorctl tail -6000 app:app_00 stderr

le -6000 étant le nombre de bytes à afficher Voir plus : http://supervisord.org/running.html#supervisorctl-command-line-options

Plus d'infos

Structure du projet

Répertoire Rôle
assets Contient les fichiers style et medias
components Les différents composants graphiques qui composent l'application
composables Des fonctions conscientes du contexte applicatif, qui font le lien entre les pages et les services
config La configuration de l'application
doc Documentation du projet
lang Les fichiers de traduction
layouts Layouts des pages
middleware Code exécuté avant le rendu des pages (ex: pour vérifier l'authentification)
models Définition des entités (ou modèles)
node_modules Modules node installés via npm
pages Définition des pages qui composent l'application
plugins Configuration des modules
public Ressources statiques et publiques
services Rassemble les classes utilitaires non graphiques et indépendantes du contexte applicatif
stores Le store et ses composants servent d'entrepôt de donnés, et s'assurent de la cohérence de celles-ci
tests Regroupe les tests (unitaires, end-to-end...)
types Types Typescript (interfaces, enums...)