{"id":18486618,"url":"https://github.com/SocialGouv/dashlord","last_synced_at":"2025-04-08T19:33:32.051Z","repository":{"id":37759171,"uuid":"354546123","full_name":"SocialGouv/dashlord","owner":"SocialGouv","description":"The best-practices Dashboard","archived":false,"fork":false,"pushed_at":"2024-04-02T15:51:18.000Z","size":121745,"stargazers_count":71,"open_issues_count":23,"forks_count":23,"subscribers_count":4,"default_branch":"main","last_synced_at":"2024-04-13T13:51:51.443Z","etag":null,"topics":["best-practices","dashboard","web"],"latest_commit_sha":null,"homepage":"https://socialgouv.github.io/dashlord","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SocialGouv.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null}},"created_at":"2021-04-04T13:08:16.000Z","updated_at":"2024-02-22T23:29:03.000Z","dependencies_parsed_at":"2023-02-18T21:01:02.672Z","dependency_job_id":"10bbbd37-6e0f-46b2-9db6-a7caa1d01681","html_url":"https://github.com/SocialGouv/dashlord","commit_stats":{"total_commits":379,"total_committers":11,"mean_commits":34.45454545454545,"dds":0.4617414248021108,"last_synced_commit":"97dfd63780a6b7059dfa05e95b2f1c1bc92cbb71"},"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SocialGouv%2Fdashlord","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SocialGouv%2Fdashlord/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SocialGouv%2Fdashlord/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SocialGouv%2Fdashlord/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SocialGouv","download_url":"https://codeload.github.com/SocialGouv/dashlord/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223335123,"owners_count":17128520,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["best-practices","dashboard","web"],"created_at":"2024-11-06T12:49:41.163Z","updated_at":"2025-04-08T19:33:32.030Z","avatar_url":"https://github.com/SocialGouv.png","language":"HTML","funding_links":[],"categories":["HTML","Uncategorized"],"sub_categories":["Uncategorized"],"readme":"# DashLord\n\nTableau de bord des bonnes pratiques techniques\n\nExemples :\n\n- https://dashlord.incubateur.net\n- https://socialgouv.github.io/dashlord-fabrique\n- https://mtes-mct.github.io/dashlord\n- https://socialgouv.github.io/dnum-dashboard\n\n## Usage\n\n### Ajouter une URL dans le dashlord\n\nVous devez éditer le fichier [./dashlord.yml](./dashlord.yml) et ajouter une entrée pour votre URL.\n\n💡 Bonne pratique : enlever les slashs à la fin des urls\n\n### Déployer sa propre version de DashLord :\n\n- Créer un nouveau repository [**à partir du template dashlord**](https://github.com/SocialGouv/dashlord)\n- Éditer le fichier `dashlord.yml`\n- Éditer le fichier `.github/workflows/scans.yml` si nécessaire\n- Éditer le fichier `.github/workflows/report.yml` si nécessaire (vérifier le `base-path` où sera publié le site web, il s'agira du nom du repository)\n- Dans les settings du repository, dans \"Actions\", positionner \"Workflows permissions\" sur \"Read and write\" (si l'option n'est pas disponible pour le dépôt, activez la d'abord au niveau de l'organisation)\n- Dans les settings du repository, dans \"Pages\", selectionner `gh-pages` comme branche source (vous pouvez soit la créer en amont soit la selectionner après le premier scan qui la créera)\n- Lancer `DashLord scans` dans l'onglet `Actions` de votre projet GitHub\n\nUne fois les scans terminés, un rapport sera généré dans la branche `gh-pages` du repository, il sera disponible sur `https://[organisation].github.io/[repository]` (publiquement).\n\n#### Customisation\n\n- Le fichier [`dashlord.yml`](./dashlord.yml) permet de paramétrer les urls et quelques options du tableau de bord\n- Le workflow [DashLord scans `.github/workflows/scans.yml`](./.github/workflows/scans.yml) permet de customiser certains scanners, et régler la fréquence de scan (paramètre `schedule` positionné par défaut tous les dimanches à minuit)\n- Le workflow [DashLord report `.github/workflows/report.yml`](./.github/workflows/report.yml) génére automatiquement le rapport web en se basant sur [SocialGouv/dashlord-actions/report](https://github.com/SocialGouv/dashlord-actions)\n\nCes workflows sont également déclenchables manuellement dans l'onglet \"Actions\"\n\n## Outils\n\nChaque outil peut être activé/désactivé dans le rapport avec la clé `tools` de dashlord.yml.\n\n| Repo                                                                                      | desc                                   |\n| ----------------------------------------------------------------------------------------- | -------------------------------------- |\n| [SocialGouv/dashlord-actions](https://github.com/SocialGouv/dashlord-actions)             | Dashlord specific actions              |\n| [SocialGouv/dashlord-nuclei-action](https://github.com/SocialGouv/dashlord-nuclei-action) | Dump nuclei result                     |\n| [SocialGouv/httpobs-action](https://github.com/SocialGouv/httpobs-action)                 | Dump Mozilla HTTP Observatory result   |\n| [SocialGouv/thirdparties-action](https://github.com/SocialGouv/thirdparties-action)       | Dump third party scripts scan result   |\n| [SocialGouv/wappalyzer-action](https://github.com/SocialGouv/wappalyzer-action)           | Dump Wappalyzer scan result            |\n| [MTES-MCT/dependabotalerts-action](https://github.com/MTES-MCT/dependabotalerts-action)   | Dump Github dependabot security alerts |\n| [MTES-MCT/codescanalerts-action](https://github.com/MTES-MCT/codescanalerts-action)       | Dump Github CodeQL security alerts     |\n| [MTES-MCT/updownio-action](https://github.com/MTES-MCT/updownio-action)                   | Dump updown.io stats                   |\n| [MTES-MCT/nmap-action](https://github.com/MTES-MCT/nmap-action)                           | Dump nmap port scan stats              |\n| [MTES-MCT/stats-action](https://github.com/MTES-MCT/stats-action)                         | Detect /stats page.                    |\n| [SocialGouv/thirdparties](https://github.com/SocialGouv/thirdparties)                     | thirdparty scripts database            |\n| [swinton/screenshot-website](https://github.com/swinton/screenshot-website)               | grab website screenshot                |\n| [SocialGouv/detect-404-action](https://github.com/SocialGouv/detect-404-action)           | detect 404 errors                      |\n| [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action)                 | Scan docker images vulnerabilities     |\n\n## Configuration\n\nCertains outils nécessitent une configuration supplémentaire :\n\n### dependabot (détection de vulnérabilités issues des dépendances du projet)\n\najouter un secret GitHub `DEPENDABOTALERTS_TOKEN` et lui donner pour valeur un [token d'accès personnel](https://github.com/settings/personal-access-tokens/new) ayant droit de lecture sur **\"Dependabot alerts\"** en sélectionnant les dépôts à scanner\n\n### codescan (analyse statique de la qualité de code)\n\najouter un secret GitHub `CODESCANALERTS_TOKEN` et lui donner pour valeur un [token d'accès personnel](https://github.com/settings/personal-access-tokens/new) ayant droit de lecture sur **\"Code scanning alerts\"** en sélectionnant les dépôts à scanner\n\n### updown.io (Mesures de disponibilité)\n\nDashLord peut monitorer le niveau de performance et de disponibilité de vos applications. (mise en place = 10mins)\n\n- Créez un compte sur [updown.io](https://updown.io)\n- Ajoutez-y les urls à monitorer (telles que définies dans dashlord.yml)\n- Activez l'outil avec `updownio: true` dans le fichier dashlord.yml\n- Ajouter votre clé d'API updown.io \"readonly\" dans un secret GitHub nommé `UPDOWNIO_API_KEY` (onglet settings/secrets)\n\nSi vous fournissez un token `write` à l'action [`init`](https://github.com/SocialGouv/dashlord/blob/48b9362391dc45cf604ceb9d91ee300a028a3021/.github/workflows/scans.yml#L55), les urls manquantes seront automatiquement ajoutées à votre compte updown.io.\n\n▶ Au prochain scan, les informations updown.io seront remontées dans DashLord\n\n### customCss :\n\nYou can host the css file in your Dashlord repo but the link needs to point to a file with the correct Content-Type Header. See here for [details](https://www.twistblogg.com/2020/06/use-github-for-hosting-files.html)\n\n## Contribute\n\nVous pouvez contribuer en remontant des issues de qualité, en améliorant la documentation, ou en ajoutant du code.\n\n🤗 Toutes les suggestions sont bienvenues.\n\ncf [CONTRIBUTING.md](./CONTRIBUTING.md)\n\n### Dev\n\nDashLord fonctionne en deux étapes :\n\n1. **Acquisition des données** : Pour chaque URL, chaque outil est executé et génère un fichier JSON qui sera versionné dans le repository\n2. **Génération du rapport** : À partir des données existantes, l'action [report](https://github.com/SocialGouv/dashlord-actions) aggrège, compresse les résultats et produit un rapport web statique.\n\nVoir aussi : [SocialGouv/dashlord-actions](https://github.com/SocialGouv/dashlord-actions)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSocialGouv%2Fdashlord","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSocialGouv%2Fdashlord","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSocialGouv%2Fdashlord/lists"}