Tout employeur doit assurer la sécurité et la santé au travail de ses salariés (Art. L4121-1 du code du travail).
L’employeur doit garantir que le bâtiment accueillant les travailleurs (ERT) et le public (ERP) est conforme aux normes de sécurité.
L’employeur doit effectuer des vérifications générales périodiques (VGP) sur tout équipement pouvant présenter un danger en cas de dysfonctionnement (chauffage, électricité, …) et sur les moyens de lutte contre l’incendie (extincteur, alarme incendie, désenfumage, …).
Les vérifications générales périodiques (VGP) sont annotées dans un registre qui doit être à disposition dans tout bâtiment ERT ou ERP.
Il est appelé Registre de Sécurité et fait foi en cas d’incident (incendie, accident, maladie professionnelles, …)
Le Registre de Sécurité est le plus souvent un document papier.
Il existe des versions digitalisées dont les informations sont centralisées.
Création d’un registre de sécurité suite à une vérification.
Le registre de sécurité est validé par le vérificateur et le vérifié.
Le registre de sécurité une fois créé ne peut être modifié.
Le registre de sécurité est public.
Ce registre de sécurité est stocké sur la blockchain par le moyen d’une application décentralisée.
Le choix de la technologie blockchain est motivée pour son caractère infalsifiable, sa traçabilité, etc.
Les registres de sécurités sont consultables librement.
(Extra) Le registre de sécurité permet au travers de méta données de constituer un rapport détaillé
- NEXT.js (TypeScript)
- Hardhat 2.16.1
- RainbowKit
- Wagmi
- Solidity 0.8.18
-----------------------|----------|----------|----------|----------|----------------|
File | % Stmts | % Branch | % Funcs | % Lines |Uncovered Lines |
-----------------------|----------|----------|----------|----------|----------------|
contracts/ | 100 | 96.08 | 100 | 100 | |
SecurityRegister.sol | 100 | 96.08 | 100 | 100 | |
-----------------------|----------|----------|----------|----------|----------------|
All files | 100 | 96.08 | 100 | 100 | |
-----------------------|----------|----------|----------|----------|----------------|
Ce fichier contient les informations nécessaires pour s'authentifier au réseau de test Sepolia.
INFURA_ID=<YOUR_ID>
SEPOLIA_PRIVATE_KEY=<YOUR_KEY>
3.1.2. Renommer le fichier sample.env
en .env.developement
et .env.production
dans le dossier frontend
.
NEXT_PUBLIC_CONTRACT_ADDRESS=<YOUR_SMART_CONTRACT_ADDRESS>
NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID=<YOUR_WALLET_CONNECT_PROJECT_ADDRESS>
NEXT_PUBLIC_ENABLE_TESTNETS=<true or false>
NEXT_PUBLIC_NETWORK=<hardhat or sepolia>
NEXT_PUBLIC_GENESIS_BLOCK=<GENESIS_BLOCK>
Renseigner les valeurs en fonction de l'environnement:
- .env.development
NEXT_PUBLIC_ENABLE_TESTNETS=true
NEXT_PUBLIC_NETWORK=hardhat
NEXT_PUBLIC_GENESIS_BLOCK=1
- .env.production
NEXT_PUBLIC_ENABLE_TESTNETS=false
NEXT_PUBLIC_NETWORK=sepolia
Note: Par default le réseau de test
hardhat
est activé.
Depuis le dossier racine se positionner dans le dossier backend
et installez les dépendances
cd backend
npm install
Depuis le dossier racine se positionner dans le dossier frontend
et installez les dépendances
cd frontend
npm install
Depuis le dossier racine se positionner dans le dossier backend
cd backend
Ouvrez une console exécutez le code suivant pour démarrer le testnet hardhat
:
npx hardhat node
Important: Laissez ouverte cette console
Ouvrez une seconde console et exécutez le code suivant pour déployer le smart contract:
npx hardhat run --network localhost scripts/01-deploy.ts
npx hardhat run --network sepolia scripts/01-deploy.ts
Depuis le dossier racine se positionner dans le dossier frontend
cd frontend
npm run dev
npm run build && npm run start
Depuis un navigateur web http://localhost:3000
Depuis le dossier racine se positionner dans le dossier backend
cd backend
npx hardhat compile
npx hardhat test
Avec le coverage
npx hardhat coverage
Avec le gas report
REPORT_GAS=true npx hardhat test
Seul le frontend sera déployé sur Vercel.
Le testnet utilisé sera Sepolia.