- NodeJs v16, you can use
nvmto use the version specify in the.nvmrcfile.
You can lauch the backend with or withour docker. To configure these methods you must have an env file :
.env
Copy and rename .env.example.
Label depends on 2 other services from the Cour de cassation : dbsder-api and nlp-pseudonymisation-api. You can lauch these services locally to simulate operation close to production or you can disable theses services from env files. In this case these 2 services are emulated by Label with the storage folder. To do so, follow the Add documents you want to annotate step in the reuser guide or just rename the storage-example folder to storage.
To manage local authentication label uses keycloak.
You should take a look at juridependencies to install theses services.
Install dependencies with:
yarnStart the backend with:
yarn start:client:dockerTo lauch the frontend run:
yarn start:client:devThen, on your web browser, open http://localhost:55432
Start the backend with:
yarn start:backend:dockerStart the backend:
yarn start:backend:devYou can init database with :
yarn init:dbThis script is lauch with the .env configuration.
Label contains many scripts, they are listed here You can launch scripts with theses commands :
docker compose exec labelbk sh -c "cd packages/courDeCassation; sh scripts/runLocalScript.sh ./dist/scripts/myScript.js --myArgument"scripts/runScriptLocally.sh "myScript.js --myArgument"Follow the installation guide.
The LABEL application leverages the SSO module as a dependency for its integration with the Single Sign-On (SSO) system. The details of this integration are documented in the README of the SSO module.
The backend exposes the following URLs to interact with the SSO:
- /api/sso/login: Endpoint to initiate the login process via SSO.
- /api/sso/acs: Endpoint for processing SAML assertions following a successful authentication.
- /api/sso/logout: Endpoint to disconnect the user from the SSO.
The attributes returned by the SSO, as well as the roles used by the application, are specified in the configuration file.