{"id":20461374,"url":"https://github.com/antvis/layout","last_synced_at":"2025-05-16T07:03:17.480Z","repository":{"id":37815738,"uuid":"317808843","full_name":"antvis/layout","owner":"antvis","description":"Layout algorithms for graphs.","archived":false,"fork":false,"pushed_at":"2024-09-14T10:02:44.000Z","size":5155,"stargazers_count":201,"open_issues_count":64,"forks_count":55,"subscribers_count":12,"default_branch":"v5","last_synced_at":"2024-10-29T21:05:31.289Z","etag":null,"topics":["layout"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/antvis.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","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":"2020-12-02T09:16:35.000Z","updated_at":"2024-10-29T09:09:23.000Z","dependencies_parsed_at":"2023-09-29T03:22:30.386Z","dependency_job_id":"a904926d-e990-4422-ba8c-3dfde9802f9f","html_url":"https://github.com/antvis/layout","commit_stats":{"total_commits":185,"total_committers":20,"mean_commits":9.25,"dds":0.7027027027027026,"last_synced_commit":"f9fc94f9bce362ff77e7a49cd21f355791717bdd"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antvis%2Flayout","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antvis%2Flayout/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antvis%2Flayout/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antvis%2Flayout/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/antvis","download_url":"https://codeload.github.com/antvis/layout/tar.gz/refs/heads/v5","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247458468,"owners_count":20942031,"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":["layout"],"created_at":"2024-11-15T12:25:07.252Z","updated_at":"2025-04-06T17:10:44.306Z","avatar_url":"https://github.com/antvis.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n\u003cb\u003e@antv/layout\u003c/b\u003e\n\u003c/h1\u003e\n\n[![Build Status](https://github.com/antvis/layout/actions/workflows/build.yml/badge.svg)](https://github.com/antvis/layout/actions)\n[![Coverage Status](https://img.shields.io/coveralls/github/antvis/layout/v5.svg)](https://coveralls.io/github/antvis/layout?branch=v5)\n[![npm Version](https://img.shields.io/npm/v/@antv/layout.svg)](https://www.npmjs.com/package/@antv/layout)\n[![npm Download](https://img.shields.io/npm/dm/@antv/layout.svg)](https://www.npmjs.com/package/@antv/layout)\n[![npm License](https://img.shields.io/npm/l/@antv/layout.svg)](https://www.npmjs.com/package/@antv/layout)\n\nThis is a collection of basic layout algorithms. We provide the following packages to support different runtime environments:\n\n- [@antv/layout](./packages/layout/README.md) [![npm Version](https://img.shields.io/npm/v/@antv/layout/alpha)](https://www.npmjs.com/package/@antv/layout) Implemented with TypeScript. [Online Demo](https://observablehq.com/d/2db6b0cc5e97d8d6)\n- [@antv/layout-rust](./packages/layout-rust/README.md) Implemented with Rust.\n- [@antv/layout-wasm](./packages/layout-wasm/README.md) [![npm Version](https://img.shields.io/npm/v/@antv/layout-wasm)](https://www.npmjs.com/package/@antv/layout-wasm) Provide a WASM binding of `@antv/layout-rust`. [Online Demo](https://observablehq.com/d/288c16a54543a141)\n- [@antv/layout-gpu](./packages/layout-gpu/README.md) [![npm Version](https://img.shields.io/npm/v/@antv/layout-gpu)](https://www.npmjs.com/package/@antv/layout-gpu) Accelerate some parallelizable algorithms such as Fruchterman with WebGPU which has a better performance under large amount of data.\n\nOnline benchmarks: https://antv.vision/layout/index.html\n\n## Development\n\nWe use [Vite](https://vitejs.dev/) to start a dev server:\n\n```bash\n$ pnpm dev\n```\n\n## Test\n\n```bash\n$ pnpm test\n```\n\n## Publish\n\nUsing Changesets with pnpm: https://pnpm.io/next/using-changesets\n\nThe generated markdown files in the .changeset directory should be committed to the repository.\n\n```bash\npnpm changeset\n```\n\nThis will bump the versions of the packages previously specified with pnpm changeset (and any dependents of those) and update the changelog files.\n\n```bash\npnpm changeset version\n```\n\nCommit the changes. This command will publish all packages that have bumped versions not yet present in the registry.\n\n```bash\npnpm publish -r\n```\n\nIf you want to publish versions for test:\n\n```bash\npnpm changeset pre enter alpha   # 发布 alpha 版本\npnpm changeset pre enter beta    # 发布 beta 版本\npnpm changeset pre enter rc      # 发布 rc 版本\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantvis%2Flayout","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantvis%2Flayout","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantvis%2Flayout/lists"}