{"id":24967017,"url":"https://github.com/sergergood/csvdotnetpackagelist","last_synced_at":"2025-03-29T02:40:17.319Z","repository":{"id":274627736,"uuid":"923531972","full_name":"SergerGood/CsvDotNetPackageList","owner":"SergerGood","description":"CsvDotNetPackageList is a .NET utility that scans a solution for NuGet package dependencies including transitive and exports them to a CSV file.","archived":false,"fork":false,"pushed_at":"2025-03-22T19:19:45.000Z","size":60,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-22T20:24:35.354Z","etag":null,"topics":["csv","dotnet","packages","transitive"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SergerGood.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-28T12:20:24.000Z","updated_at":"2025-03-22T19:19:45.000Z","dependencies_parsed_at":"2025-01-28T13:38:08.754Z","dependency_job_id":"9df3bf20-503d-495e-a02d-e3f3272949d9","html_url":"https://github.com/SergerGood/CsvDotNetPackageList","commit_stats":null,"previous_names":["sergergood/csvdotnetpackagelist"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SergerGood%2FCsvDotNetPackageList","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SergerGood%2FCsvDotNetPackageList/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SergerGood%2FCsvDotNetPackageList/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SergerGood%2FCsvDotNetPackageList/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SergerGood","download_url":"https://codeload.github.com/SergerGood/CsvDotNetPackageList/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246131244,"owners_count":20728299,"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":["csv","dotnet","packages","transitive"],"created_at":"2025-02-03T12:36:03.053Z","updated_at":"2025-03-29T02:40:17.313Z","avatar_url":"https://github.com/SergerGood.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"## About\n\nCsvDotNetPackageList is a .NET utility designed to generate a CSV file containing a list of all NuGet packages referenced in a .NET solution including transitive dependencies. This tool is particularly useful who need to audit or document the dependencies used across their projects.\n\n## Features\n\n- Scans a .NET solution to identify all referenced NuGet packages.\n- Generates a CSV file listing each package's ID and version.\n- Configurable execution via `appsettings.json`.\n- Simple and straightforward command-line interface.\n\n## Configuration\n\n### Configuration Options\n\n- **Framework** (_optional_): If not specified, the analysis will search for packages across all target frameworks.\n- **WorkingDirectory** (_optional_): The base directory used for resolving relative paths and generating the final CSV output file.\n- **Sources** (_required_): A list of project or solution files to analyze. If absolute file paths are provided, WorkingDirectory will only be used when generating the final CSV report.\n\n### Example Configuration\n\nTo customize the behavior of the tool, you can modify the `appsettings.json` file as follows:\n\n```json\n{\n  \"DotNetListSettings\": {\n    \"Framework\": \"net8.0\",\n    \"Sources\": [\n      \"C:\\\\Projects\\\\MySolution.sln\"\n    ]\n  }\n}\n```\n\n```json\n{\n  \"DotNetListSettings\": {\n    \"Framework\": \"net8.0\",\n    \"WorkingDirectory\": \"C:\\\\Projects\\\\MySolution\",\n    \"Sources\": [\n      \"Project1.csproj\",\n      \"Project2.csproj\"\n    ],\n  }\n}\n```\n\n## Usage\n\nFollow these steps to use the application:\n\n1. Clone the repository:\n```bash\ngit clone https://github.com/SergerGood/CsvDotNetPackageList.git\n```\n2. Publish the application. The result will be in subfolder `out`.\n```bash\n./publish.sh\n```\n3. Configure the application by modifying `appsettings.json` according to your needs.\n4. Run the tool using the generated `csv-package-list` executable and analyze the dependencies.\n5. The tool will generate a `packages.csv` file in the specified working directory with the following structure:\n```csv\nNewtonsoft.Json;13.0.1\nSerilog;2.10.0\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsergergood%2Fcsvdotnetpackagelist","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsergergood%2Fcsvdotnetpackagelist","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsergergood%2Fcsvdotnetpackagelist/lists"}