No Description

Olivier Massot c7c25acaff various fixes 2 years ago
assets 4c513d12fb fix font size 2 years ago
components c7c25acaff various fixes 2 years ago
composables da6f272b92 post MR fixes and minor fixes 2 years ago
config d739c6cc25 add billing_schedule menu 2 years ago
doc 0ac643b556 finalize themes 2 years ago
lang c7c25acaff various fixes 2 years ago
layouts 1aa1efb903 fix bug on profile refresh, fix lodash imports, add loading screen 2 years ago
middleware a353618569 v4027 Review todos, .env.local becomes .env.docker 3 years ago
models 954d1165d6 update structure of the education timings tab 2 years ago
pages c7c25acaff various fixes 2 years ago
plugins 639b4807a6 add useRefreshProfile composable and remove em.refreshProfile 2 years ago
public 1195370bca fix favicon 2 years ago
services c57ca9f607 onglet residence area, super admin et educationTimings 2 years ago
stores a599f06d1b changement pout app-v3 page parametre 2 years ago
tests ca0839c81c complete tests on services 2 years ago
types ed7cfa68db post MR fixes and other minor improvements 2 years ago
.env.docker 76835fb7c2 update .env, readme, and minor fixes 2 years ago
.env.prod 76835fb7c2 update .env, readme, and minor fixes 2 years ago
.env.test 76835fb7c2 update .env, readme, and minor fixes 2 years ago
.eslintrc.cjs d4019bd3db rewrite data services (ongoing) 3 years ago
.gitignore 2249d1a3a3 update app urls after 2.4 release 2 years ago
.gitlab-ci.yml 2249d1a3a3 update app urls after 2.4 release 2 years ago
.nvmrc 3324ed078f set default nvm version and fix nuxt config for non-dev env 2 years ago
.prettierrc d4019bd3db rewrite data services (ongoing) 3 years ago
README.md c7c25acaff various fixes 2 years ago
app.vue dd15fcee93 Menu 3 years ago
i18n.config.ts 1b01499d7a upgrade to nuxt 3.5.3 and vuetify 3.3.1 2 years ago
logo.png d4019bd3db rewrite data services (ongoing) 3 years ago
nuxt.config.ts 2249d1a3a3 update app urls after 2.4 release 2 years ago
package.json 4af4742dd8 remove vitest-c8, add vitest-v8 2 years ago
tsconfig.json 685085c2e4 add unit tests and minor fixes 2 years ago
vitest.config.ts af0b611284 upgrade vitest and add junit report to vitest config and CI 2 years ago
yarn.lock 4af4742dd8 remove vitest-c8, add vitest-v8 2 years ago

README.md

App

Latest Release

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

Frontend Opentalent, avec NuxtJs 3

A voir :

Installation (mode dev)

Cloner le projet :

git clone git@gitlab.2iopenservice.com:opentalent/app.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.opentalent.fr.crt
  • local.app.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

Faire fonctionner le HMR

Si le HMR (Hot Module Reload) ne fontionne pas et qu'un message d'erreur est logué en console disant que l'adresse n'est pas accessible, alors suivre les étapes suivantes :

  • Ouvrir l'inspecteur de son navigateur, onglet Réseau
  • Rafraichir la page
  • Trouver la requête en erreur. Elle devrait être de la forme https://local.app.opentalent.fr:24678/_nuxt/
  • Clic droit dessus, puis "ouvrir dans un nouvel onglet"
  • Ajouter une exception de sécurité dans le navigateur

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...)