{"id":23170987,"url":"https://github.com/ignatandrei/rscg_exportdiagram","last_synced_at":"2026-01-04T06:35:57.095Z","repository":{"id":250559707,"uuid":"834819381","full_name":"ignatandrei/RSCG_ExportDiagram","owner":"ignatandrei","description":"export diagram for external relations for a csproj   ","archived":false,"fork":false,"pushed_at":"2024-09-04T11:28:22.000Z","size":63,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-27T13:38:09.963Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ignatandrei.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2024-07-28T13:10:53.000Z","updated_at":"2024-09-04T11:28:25.000Z","dependencies_parsed_at":"2024-08-12T07:01:45.345Z","dependency_job_id":"f3bc3ef8-7f49-488b-8541-eabafe95e898","html_url":"https://github.com/ignatandrei/RSCG_ExportDiagram","commit_stats":null,"previous_names":["ignatandrei/rscg_exportdiagram"],"tags_count":28,"template":false,"template_full_name":null,"purl":"pkg:github/ignatandrei/RSCG_ExportDiagram","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ignatandrei%2FRSCG_ExportDiagram","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ignatandrei%2FRSCG_ExportDiagram/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ignatandrei%2FRSCG_ExportDiagram/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ignatandrei%2FRSCG_ExportDiagram/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ignatandrei","download_url":"https://codeload.github.com/ignatandrei/RSCG_ExportDiagram/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ignatandrei%2FRSCG_ExportDiagram/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270961623,"owners_count":24675914,"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","status":"online","status_checked_at":"2025-08-18T02:00:08.743Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2024-12-18T04:15:48.084Z","updated_at":"2026-01-04T06:35:57.070Z","avatar_url":"https://github.com/ignatandrei.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RSCG_ExportDiagram\n\nexport diagram for external relations for a csproj  with other csproj\n\n## Install\n\nAdd to the csproj\n    \n```xml\n\n\u003cItemGroup\u003e\n\u003cPackageReference Include=\"RSCG_ExportDiagram\" Version=\"2024.904.427\" OutputItemType=\"Analyzer\" ReferenceOutputAssembly=\"false\"   /\u003e\n\u003c/ItemGroup\u003e\n\u003cItemGroup\u003e\n\t\u003cCompilerVisibleProperty Include=\"RSCG_ExportDiagram_OutputFolder\" /\u003e\n\t\u003cCompilerVisibleProperty Include=\"RSCG_ExportDiagram_Exclude\" /\u003e\n\u003c/ItemGroup\u003e\t\n\u003cPropertyGroup\u003e\n\u003cRSCG_ExportDiagram_OutputFolder\u003e..\u003c/RSCG_ExportDiagram_OutputFolder\u003e\n\u003cRSCG_ExportDiagram_Exclude\u003e\u003c/RSCG_ExportDiagram_Exclude\u003e\n\u003c/PropertyGroup\u003e\n\n```\n\n\n    And the diagram will be generated in the folder parent for the .csproj file\n\nAlternatively, you can use the command line tool to generate the diagram for a solution\n\n```powershell\n\nfunction ProcessCsproj {\n  param (\n      [string]$project,\n      [string]$folderOutput\n  )\n\n$version = \"2024.904.427\"\n#$folderOutput= \"..\"\n$newNode = [xml]@\"\n\u003cMainData\u003e\n\u003cItemGroup\u003e\n  \u003cCompilerVisibleProperty Include=\"RSCG_ExportDiagram_OutputFolder\" /\u003e\n  \u003cCompilerVisibleProperty Include=\"RSCG_ExportDiagram_Exclude\" /\u003e\n\u003c/ItemGroup\u003e\n\n\u003cPropertyGroup\u003e\n  \u003cRSCG_ExportDiagram_OutputFolder\u003e$folderOutput\u003c/RSCG_ExportDiagram_OutputFolder\u003e\n  \u003cRSCG_ExportDiagram_Exclude\u003e\u003c/RSCG_ExportDiagram_Exclude\u003e\n\u003c/PropertyGroup\u003e\n\u003c/MainData\u003e\n\"@\n\n\n\n\n# Write-Host $newNode.MainData.InnerXml\n$backFile =$project + \".bak\"\nCopy-Item $project $backFile \ndotnet add $project package RSCG_ExportDiagram -v $version \n\n$proj = [xml](Get-Content $project)\n\n$foundNode = $proj.Project\n#Write-Host $proj.Project.InnerXml\n\n$ItemGroup = $proj.ImportNode($newNode.DocumentElement.ItemGroup,$true)\n$proj.Project.PrependChild($ItemGroup) \n$proj.DocumentElement.AppendChild($ItemGroup )\n\n\n$PropertyGroup = $proj.ImportNode($newNode.DocumentElement.PropertyGroup,$true)\n$proj.Project.PrependChild($PropertyGroup) \n$proj.DocumentElement.AppendChild($PropertyGroup)\n$proj.Save($project) \ndotnet build\n# pause\nCopy-Item $backFile  $project -Force\nRemove-Item $backFile  -Force\n\n}\n\n$solution  = gci *.sln | %{ $_.FullName}\n$folderSolution = Split-Path $solution\n# Write-Host $folderSolution\nGet-Content $solution |\n  Select-String 'Project\\(' |\n    ForEach-Object {\n      $projectParts = $_ -Split '[,=]' | ForEach-Object { $_.Trim('[ \"{}]') };\n      # New-Object PSObject -Property @{\n      #   Name = $projectParts[1];\n      #   File = $projectParts[2];\n      #   Guid = $projectParts[3]\n      # }\n      if ($projectParts[2] -match '.csproj$'){\t\n        $fileProject =Join-Path  $folderSolution $projectParts[2]\n        Write-Host $fileProject\n        ProcessCsproj -project $fileProject -folderOutput $folderSolution\n      }\n    }\n\n\n```\n    \n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fignatandrei%2Frscg_exportdiagram","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fignatandrei%2Frscg_exportdiagram","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fignatandrei%2Frscg_exportdiagram/lists"}