Récupération, validation, nettoyage et conversion des données publiques (open data) de Légifrance
Find a file
Emmanuel Raviart 69fd6d2a51
All checks were successful
/ test (push) Successful in 42s
feat: add 'AVIS' to allLegiSectionTaLienSectionTaEtats
2025-11-07 07:27:02 +01:00
.forgejo/workflows fix: add anomalies database to action 2025-09-26 13:33:18 +02:00
.vscode Improve configuration & README. Add license. 2022-08-09 11:15:42 +02:00
doc chore: update doc 2025-10-15 00:29:52 +02:00
src feat: add 'AVIS' to allLegiSectionTaLienSectionTaEtats 2025-11-07 07:27:02 +01:00
static chore: update doc & JSON schemas 2025-09-13 12:40:30 +02:00
.gitignore feat: extend script extract_texts_titles_infos.ts to work with laws 2025-07-19 21:45:32 +02:00
.gitlab-ci.yml Remove obsolete configuration 2023-02-24 06:40:32 +01:00
.npmrc Migrate to ESLint 9 2024-09-16 11:14:06 +02:00
.prettierignore chore: migrate to Tailwind CSS v4 2025-08-18 14:19:28 +02:00
.prettierrc chore: migrate to Tailwind CSS v4 2025-08-18 14:19:28 +02:00
components.json chore: migrate to Tailwind CSS v4 2025-08-18 14:19:28 +02:00
eslint.config.js chore: improve eslint configuration to ignore some svelte errors 2025-10-18 16:06:33 +02:00
example.env feat: add Anomalies database & class 2025-09-15 10:20:10 +02:00
LICENSE.md Improve description 2025-03-21 07:20:59 +01:00
package-lock.json 0.16.0 2025-10-18 16:08:01 +02:00
package.json 0.16.0 2025-10-18 16:08:01 +02:00
README.md feat: add Anomalies database & class 2025-09-15 10:20:10 +02:00
svelte.config.js chore: migrate to Tailwind CSS v4 2025-08-18 14:19:28 +02:00
tsconfig.json chore: migrate to Tailwind CSS v4 2025-08-18 14:19:28 +02:00
vite.config.ts fix: exclude generated directories from tests 2025-08-18 22:34:57 +02:00

Tricoteuses Légifrance

Tricoteuses Légifrance is free and open source software.

documentation

Main definitions used by these data: https://www.legifrance.gouv.fr/contenu/Media/files/lexique-api-lgf.docx Some documentation and the DTD of the XML files: https://echanges.dila.gouv.fr/OPENDATA/DTD_LEGIFRANCE/

Installation

Create database

Using Debian GNU/Linux, install PostgreSQL, then:

sudo su - postgres
createuser legi -P # and enter the password
createdb -O legi legi
psql legi
  CREATE EXTENSION IF NOT EXISTS pg_trgm;
\q
createuser legi_anomalies -P # and enter the password
createdb -O legi_anomalies legi_anomalies
exit

Install dependencies

npm install

Server Configuration

Create a .env file to set configuration variables (you can use example.env as a template). Then:

npm run configure

Datasets Initialization

mkdir -p ../dila-data/dole
cd ../dila-data/dole
git init
cd -

mkdir -p ../dila-data/jorf
cd ../dila-data/jorf
git init
cd -

mkdir -p ../dila-data/kali
cd ../dila-data/kali
git init
cd -

mkdir -p ../dila-data/legi
cd ../dila-data/legi
git init
cd -

Datasets Update

npx tsx src/scripts/download_dila_dataset.ts dole ../dila-data/
npx tsx src/scripts/download_dila_dataset.ts jorf ../dila-data/
npx tsx src/scripts/download_dila_dataset.ts kali ../dila-data/
npx tsx src/scripts/download_dila_dataset.ts legi ../dila-data/

Database Update

npx tsx src/scripts/import_dole.ts ../dila-data/
npx tsx src/scripts/import_jorf.ts ../dila-data/
npx tsx src/scripts/import_kali.ts ../dila-data/
npx tsx src/scripts/import_legi.ts ../dila-data/

# Note: Assemblee database must be updated before launching this script:
npx tsx src/scripts/associate_dossiers_legislatifs_with_assemblee.ts

Server Launch

In development mode:

npm run dev

In production mode:

npm run build
npm run preview

Development

JSON Schemas Generation

npx tsx src/scripts/generate_legifrance_json_schemas.ts
# Prettify generated JSON file.
npm run format

Note: JSON schemas are generated in file static/schemas.json

Package Generation & Publishing

npm version patch # or major or minor
npm run package
npm publish