{"id":20292138,"url":"https://github.com/candidosales/dependency-report","last_synced_at":"2025-04-11T11:22:33.311Z","repository":{"id":40289048,"uuid":"244802602","full_name":"candidosales/dependency-report","owner":"candidosales","description":"📊 Analyze the consistency of the dependencies in your company's frontend projects","archived":false,"fork":false,"pushed_at":"2024-12-17T05:19:31.000Z","size":30824,"stargazers_count":7,"open_issues_count":5,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-25T07:41:36.803Z","etag":null,"topics":["angular","go","golang","report-generator"],"latest_commit_sha":null,"homepage":"https://dependency-report.web.app/","language":"TypeScript","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/candidosales.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":"https://www.buymeacoffee.com/candidosales"}},"created_at":"2020-03-04T03:55:34.000Z","updated_at":"2024-10-20T02:05:19.000Z","dependencies_parsed_at":"2023-02-07T13:31:48.141Z","dependency_job_id":null,"html_url":"https://github.com/candidosales/dependency-report","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/candidosales%2Fdependency-report","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/candidosales%2Fdependency-report/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/candidosales%2Fdependency-report/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/candidosales%2Fdependency-report/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/candidosales","download_url":"https://codeload.github.com/candidosales/dependency-report/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248382135,"owners_count":21094541,"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":["angular","go","golang","report-generator"],"created_at":"2024-11-14T15:15:46.645Z","updated_at":"2025-04-11T11:22:33.286Z","avatar_url":"https://github.com/candidosales.png","language":"TypeScript","readme":"# 📊 Dependencies report\n\nDependencies report aims to help analyze the consistency of the dependencies in your company's frontend projects. See an example [https://dependency-report.web.app/](https://dependency-report.web.app/). [Em português](./README_pt-BR.md)\n\n## 🎯 Features\n\n- View what percentage of projects are in a given version;\n- View what percentage of components are in a given version;\n- View all the dependencies of your projects and how many different versions are used by projects;\n- View link to frontend and design documentation for each project/component;\n- View Github notifications related to security vulnerabilities for each project/component;\n- View which dependencies need to be updated by projects;\n\n![Github Notifications](https://i.imgur.com/zazY53M.gif)\n\n## ⚙️ How to setup\n\nThe project is divided into two folders:\n\n- `client`: Frontend developed in Angular for presentation of graphics. Angular 18+ - [How to install Node?](https://nodejs.org/en/download/package-manager/);\n- `server`: Backend developed in Go to generate data for reports. Go 1.15 - [How to install Go?](https://golang.org/doc/install);\n\n### Creating your personal Github Auth Token\n\nIt is necessary to create your `Personal Access Token` for the server to be allowed to use the Github API. For further instructions [visit](https://docs.cachethq.io/docs/github-oauth-token) or [here](https://github.com/settings/tokens).\n\n### Initializing the client\n\nThe project uses Angular 18+ and requires version of Node 20+. You can use the [NVM](https://github.com/nvm-sh/nvm) to control the node versions of your machine.\n\n```bash\ncd client/\nnpm install # Install dependencies\nng serve\n```\n\nWill boot on the port `4200`. [http://localhost:4200](http://localhost:4200).\n\n### Initializing the server\n\n```bash\ncd server/\nGITHUB_AUTH_TOKEN=\u003cpersonal-auth-token\u003e go run *.go # Example: GITHUB_AUTH_TOKEN=12321wqdd12e12321dse go run *.go\n```\n\nWill create a server on the port `3000`. [http://localhost:3000](http://localhost:3000).\n\n### Adapting to your projects\n\nYou have to edit the [server/config.json](./server/config.json) file to add the repositories for your frontend and component projects. Don't forget to specify the type of repository if it is `project` or `component`.\n\n- `project`: Are your frontend projects that can be an admin or backoffice for your company;\n- `component`: Modular components that are used in your projects;\n\nExample:\n\n```json\n{\n    \"repositories\": [\n        {\n            \"url\": \"https://github.com/vendasta/listing-builder-client\",\n            \"type\": \"project\"\n        },\n        {\n            \"url\": \"https://github.com/vendasta/frontend/tree/master/angular/projects/business-categories\",\n            \"type\": \"component\"\n        },\n    ]\n}\n```\n\nThe filter is used to analyze the dependencies of your repositories and thus generate the statistics. The filter format is the name of the library and the version: `\u003clibrary-name\u003e_\u003cversion\u003e`. You see your dependency on your `package.json` in this format `\"@angular/core\":\"~9.1.1\"` then you create your filter this way: `@angular/core_9.1.1`.\n\nThat way, you can create any filter for any dependency or version..\n\nExample:\n\n- `\"@angular/core\": \"~9.0.0\"` switch to `@angular/core_9.0.0` or `@angular/core_9`;\n- `\"react\": \"^16.12.0\"` switch to `react_16.12.0` or `react_16`;\n\n```json\n{\n    \"filters\": [\n        \"@angular/core_4\",\n        \"@angular/core_6\",\n        \"@angular/core_7\",\n        \"@angular/core_8\",\n        \"@angular/core_9\"\n    ],\n}\n```\n\n### Initializing\n\nAfter configuring [server/config.json](./server/config.json) and initializing `server` and `client` you access `client` via [http://localhost:4200](http://localhost:4200) and click the button `REFRESH` on the top bar to generate the data you need.\n\n## 📚 Reference\n\n- [https://segment.com/blog/driving-adoption-of-a-design-system/](https://segment.com/blog/driving-adoption-of-a-design-system/)\n\n## 👍 Contribute\n\nIf you want to say thank you and/or support the active development this project:\n\n1. Add a [GitHub Star](https://github.com/candidosales/dependency-report/stargazers) to the project.\n2. Tweet about the project [on your Twitter](https://twitter.com/intent/tweet?url=https%3A%2F%2Fgithub.com%2Fcandidosales%2Fdependency-report\u0026text=Dependencies%20report%20aims%20to%20help%20analyze%20the%20consistency%20of%20the%20dependencies%20in%20your%20company%27s%20frontend%20projects).\n3. Write a review or tutorial on [Medium](https://medium.com/), [Dev.to](https://dev.to/) or personal blog.\n4. Support the project by donating a [cup of coffee](https://buymeacoff.ee/candidosales).\n\n## ☕ Supporters\n\nIf you want to support Dependency Report, you can ☕ [**buy a coffee here**](https://buymeacoff.ee/candidosales)\n\n## ✨ Acknowledgment\n\n[Joel Kesler](https://github.com/joelkesler), [Rafael Lins](https://github.com/g0dkar)\n\n## Author\n\n- Cândido Sales - [@candidosales](https://twitter.com/candidosales)\n\n## ⚠️ Copyright and license\n\nCode and documentation copyright 2024-2034 the [Authors](https://github.com/candidosales/dependency-report/graphs/contributors) and Code released under the [MIT License](https://github.com/candidosales/dependency-report/blob/master/LICENSE). Docs released under [Creative Commons](https://creativecommons.org/licenses/by/3.0/).","funding_links":["https://www.buymeacoffee.com/candidosales"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcandidosales%2Fdependency-report","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcandidosales%2Fdependency-report","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcandidosales%2Fdependency-report/lists"}