{"id":19646587,"url":"https://github.com/amzn/glad","last_synced_at":"2025-07-20T01:08:39.390Z","repository":{"id":41389745,"uuid":"415609745","full_name":"amzn/glad","owner":"amzn","description":"Generate Layer Diagram from your Javascript/Typescript app","archived":false,"fork":false,"pushed_at":"2024-01-06T20:54:09.000Z","size":375,"stargazers_count":11,"open_issues_count":1,"forks_count":5,"subscribers_count":4,"default_branch":"main","last_synced_at":"2024-09-28T20:07:54.291Z","etag":null,"topics":["architecture","diagram","generator","graph","javascript","layers","nodejs","npm","typescript","validation"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/amzn.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}},"created_at":"2021-10-10T14:30:42.000Z","updated_at":"2024-01-26T14:59:24.000Z","dependencies_parsed_at":"2023-02-09T12:46:21.686Z","dependency_job_id":null,"html_url":"https://github.com/amzn/glad","commit_stats":null,"previous_names":["amzn/generate-layer-architecture-diagram"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amzn%2Fglad","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amzn%2Fglad/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amzn%2Fglad/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amzn%2Fglad/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/amzn","download_url":"https://codeload.github.com/amzn/glad/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224123012,"owners_count":17259540,"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":["architecture","diagram","generator","graph","javascript","layers","nodejs","npm","typescript","validation"],"created_at":"2024-11-11T14:39:21.656Z","updated_at":"2024-11-11T14:39:22.711Z","avatar_url":"https://github.com/amzn.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GLAD - Generate Layer Architecture Diagram\n\nAutomatically generate **layer diagram** view of your Javascript/Typescript source code dependencies.\n\n## Motivation\n\nView and Keep your project source files layer dependencies clean. Avoid circular reference or referencing an upper layer from a lower layer.  \n\nSupports source files of type JS \u0026 TS, simply launch the ```glad``` and open the resulting ```glad.svg``` file.\n\n## Example\n\n![example](glad.svg)\n\n## Technologies used\n\n[\u003cimg src=\"https://img.shields.io/badge/Node.js-43853D.svg?\u0026logo=node.js\u0026logoColor=white\"\u003e](https://nodejs.org/)\n[\u003cimg src=\"https://img.shields.io/badge/npm-CB3837.svg?\u0026logo=npm\u0026logoColor=white\"\u003e](https://npmjs.org/)\n[\u003cimg src=\"https://img.shields.io/badge/JavaScript-F7DF1E.svg?\u0026logo=javascript\u0026logoColor=black\"\u003e](https://en.wikipedia.org/wiki/JavaScript)\n[\u003cimg src=\"https://img.shields.io/badge/Json-F7DF1E.svg?logo=json\u0026logoColor=black\"\u003e](https://en.wikipedia.org/wiki/JSON)\n[\u003cimg src=\"https://img.shields.io/badge/TS--Morph-3178C6.svg?logo=TypeScript\u0026logoColor=white\"\u003e](https://ts-morph.com/)\n[\u003cimg src=\"https://img.shields.io/badge/SVG-FFB13B.svg?logo=svg\u0026logoColor=black\"\u003e](https://en.wikipedia.org/wiki/Scalable_Vector_Graphics)\n[\u003cimg src=\"https://img.shields.io/badge/eslint-4B32C3.svg?logo=ESLint\u0026logoColor=white\"\u003e](https://eslint.org/)\n[\u003cimg src=\"https://img.shields.io/badge/code_style-standard-brightgreen.svg\" alt=\"Standard - JavaScript Style Guide\"\u003e](https://standardjs.com/)\n\n## Features\n\n- Optional grouping of layers by folders.\n- Rendering views as Posters, Layers, or Grid.\n- Render with or without edges (arrow lines).\n\n## Installation\n\n### Globally\n\n```bash\nnpm install -g .\n```\n\n### DevDependencies\n\n```bash\nnpm install -D @amazon/glad\n```\n\n### As  part of your build script step\n\nBy adding \"glad\" to your build step, you will be alerted if you introduce a circular dependencies.\n\n```JSon\n{\n  \"scripts\": {\n    \"build\": \"glad .\"\n  }\n}\n```\n\n## Execute\n\n```bash\nglad\n```\n\n## CLI Help\n\n```text\nglad -h\n\nUsage: glad \u003c path \u003e [options]  \"Generates an SVG layer diagram file based on your TS \u0026 JS source files dependencies\"\n\nOptions:\n  -h, --help              Show help  [boolean]\n  -i, --input             File path to scan  [string]\n  -o, --output            File path to output svg  [string] [default: \"./glad.svg\"]\n  -e, --exclude           File glob to exclude from the analysis, eg: \"**/*.test.js\"  [string]\n      --view              Type of diagram to generate  [string] [choices: \"poster\", \"layers\", \"grid\"] [default: \"poster\"]\n      --align             Set the horizontal position of the nodes  [string] [choices: \"left\", \"center\", \"right\"] [default: \"center\"]\n      --edges             Type of rendering for all edges  [string] [choices: \"files\", \"folders\"] [default: \"files\"]\n      --lines             Type of rendering for all edges  [string] [choices: \"curve\", \"strait\", \"elbow\", \"angle\", \"hide\", \"warnings\"] [default: \"curve\"]\n      --lineEffect, --le  Special effect on the lines  [string] [default: \"flat\"]\n  -l, --layers            Display the layers background and numbers  [boolean] [default: false]\n  -d, --details           Show additional values for each folders  [boolean] [default: false]\n      --json              Output the graph to file called glad.json  [boolean] [default: false]\n      --debug             For tech support  [boolean] [default: false]\n      --listFiles         List all input files found  [boolean] [default: false]\n  -s, --silent            No output except for errors  [boolean] [default: false]\n  -v, --version           Show version number  [boolean]\n\nExamples:\n  glad . --view layers -l --edges -hide  \"\u003e\u003e\u003e Produce a diagram with no edges, each layers are numbered.\"\n```\n\n## License\n\nThis project is licensed under the Apache-2.0 License.\n\n[\u003cimg src=\"https://img.shields.io/badge/Apache--2.0-gray.svg?logo=Apache\"\u003e](https://www.apache.org/licenses/LICENSE-2.0)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famzn%2Fglad","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famzn%2Fglad","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famzn%2Fglad/lists"}