{"id":14261902,"url":"https://github.com/Orange-OpenSource/floss-toolbox","last_synced_at":"2025-08-13T09:32:22.512Z","repository":{"id":40482902,"uuid":"331288099","full_name":"Orange-OpenSource/floss-toolbox","owner":"Orange-OpenSource","description":"A toolbox to help developers and open source referents to not waste their time with manual and boring tasks. Provides simple and light tools to make investigations in source code to look for hot data. Provides also primitives to manage GitHub and GitLab organizations.","archived":false,"fork":false,"pushed_at":"2024-12-01T14:57:51.000Z","size":853,"stargazers_count":23,"open_issues_count":51,"forks_count":7,"subscribers_count":11,"default_branch":"dev","last_synced_at":"2024-12-09T01:47:46.989Z","etag":null,"topics":["admin","bash","commits","dco","dependabot","github","gitlab","gitleaks","hacktoberfest","hacktoberfest2024","hotwords","logs","octokit","osint","ruby","shell","signed-off","toolbox","vulnerabilities"],"latest_commit_sha":null,"homepage":"","language":"Python","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/Orange-OpenSource.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":".github/CODEOWNERS","security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-01-20T11:38:11.000Z","updated_at":"2024-11-22T06:31:08.000Z","dependencies_parsed_at":"2024-03-12T23:32:04.510Z","dependency_job_id":"4033ab8f-4b3c-4612-a6f9-1ac22a02d464","html_url":"https://github.com/Orange-OpenSource/floss-toolbox","commit_stats":null,"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Orange-OpenSource%2Ffloss-toolbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Orange-OpenSource%2Ffloss-toolbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Orange-OpenSource%2Ffloss-toolbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Orange-OpenSource%2Ffloss-toolbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Orange-OpenSource","download_url":"https://codeload.github.com/Orange-OpenSource/floss-toolbox/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229754481,"owners_count":18119125,"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":["admin","bash","commits","dco","dependabot","github","gitlab","gitleaks","hacktoberfest","hacktoberfest2024","hotwords","logs","octokit","osint","ruby","shell","signed-off","toolbox","vulnerabilities"],"created_at":"2024-08-22T13:01:27.621Z","updated_at":"2025-08-13T09:32:22.474Z","avatar_url":"https://github.com/Orange-OpenSource.png","language":"Python","readme":"[![Opened issues](https://img.shields.io/github/issues-raw/Orange-OpenSource/floss-toolbox?style=for-the-badge)](https://github.com/Orange-OpenSource/floss-toolbox/issues)\n[![Apache 2.0 license](https://img.shields.io/github/license/Orange-OpenSource/floss-toolbox?style=for-the-badge)](https://github.com/Orange-OpenSource/floss-toolbox/blob/dev/LICENSE.txt)\n[![Versions](https://img.shields.io/github/v/release/Orange-OpenSource/floss-toolbox?label=Last%20version\u0026style=for-the-badge)](https://github.com/Orange-OpenSource/floss-toolbox/releases)\n[![Still maintained](https://img.shields.io/maintenance/yes/2025?style=for-the-badge)](https://github.com/Orange-OpenSource/floss-toolbox/issues?q=is%3Aissue+is%3Aclosed)\n[![Code size](https://img.shields.io/github/languages/code-size/Orange-OpenSource/floss-toolbox?style=for-the-badge)](https://github.com/Orange-OpenSource/floss-toolbox)\n\n[![Shell](https://img.shields.io/badge/-Shell-89e051?style=for-the-badge)](https://github.com/Orange-OpenSource/floss-toolbox/search?l=shell)\n[![Python](https://img.shields.io/badge/-Python-3572A5?style=for-the-badge)](https://github.com/Orange-OpenSource/floss-toolbox/search?l=python)\n[![Ruby](https://img.shields.io/badge/-Ruby-701516?style=for-the-badge)](https://github.com/Orange-OpenSource/floss-toolbox/search?l=ruby)\n[![PHP](https://img.shields.io/badge/-PHP-4F5B93?style=for-the-badge)](https://github.com/Orange-OpenSource/floss-toolbox/search?l=php)\n\n# FLOSS Toolbox\n\nToolbox to help developers and open source referents to have cleaner projects in _GitHub_ organizations, and more.\n\nToolbox is mainly written in _Shell_ because this language is very efficient for files processing and provides a strong and rich standard API with cool primitives and nice performances due to system calls. It helps also to call system primitives easily.\nContains also _Ruby_ scripts. _Ruby_ are shiny gems, I love them.\n_Python_ is also used. \nAnd a bit of _PHP_ because it is nice to use several languages we are not used to (stop the routine!).\nFor these needs scripting is enough.\n\n## Environment\n\nYou should have mainly the following environments bellow, but have a look on each folder README:\n- _Bash_ version **3.2.5**\n- _Ruby_ version **2.7.1**\n- _Python_ version **3.7**\n\n## Project tree\n\nThere are 5 folders containing scripts and programs to make your life a bit easier:\n\n1. _toolbox/diver_ contains scripts to scrap data in Git logs and histories, look for sensitive data in sources, etc ;\n2. _toolbox/github_ contains scripts and programs to make requests to GitHub API so as to automate some actions ;\n3. _toolbox/gitlab_ contains scripts and programs to make requests to GitLab API so as to automate some actions ;\n4. _toolbox/LicensesInventory_ contains program to get licenses of third party components thanks to dependency manager files ;\n5. _toolbox/utils_ contains scripts to generate texts and stuff like that.\n\nFeel free to read each README available in all of the subdirectories listed above.\n\n## Dry run\n\nTo be sure you have a ready-to-run project, you can run the following dry-run command which will check if runtimes, third party tools and files are available.\n\n```shell\nbash dry-run.sh\n```\n\n## About the repository\n\n### Renovate\n\n[Renovate](https://docs.renovatebot.com/) is used to as to try to keep updated dependencies of the project.\nA _renovate.json_ must be added at the project root with cofiguration details ; but **the organization admins must enable it** (through the [admin console](https://developer.mend.io/)).\nBy default [Dependabot](https://docs.github.com/fr/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security#what-is-dependabot) was enabled for this project but has been replaced by _Renovate_.\n\n### Gitleaks\n\n[Gitleaks](https://github.com/gitleaks/gitleaks) is used so as to look for secrets and leak of sensitive data.\nA _gitleaks.toml_ file has been placed at the project root, picked from the _Gitleaks_ repository, to define rules.\nA *gitleaks-action.yml* is also defined to define the GitHub Action to call and some secrets to use to do so.\nThe *GITLEAKS_LICENSE* is defined in the organization level, **only the organization admins can make it visible to projects**.\nThis key (dedicated to organization) has been asked to the *Gitleaks* team and received gratefully from them.\n\n### DCO\n\nThe *Developer Certificate of Origin* is applied here thanks to a [Probot bot](https://probot.github.io/apps/dco/).\nOn pull requests all commits must be signed off. This control is processed in an action.\n","funding_links":[],"categories":["Python","bash"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FOrange-OpenSource%2Ffloss-toolbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FOrange-OpenSource%2Ffloss-toolbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FOrange-OpenSource%2Ffloss-toolbox/lists"}