{"id":13567101,"url":"https://github.com/swup/swup","last_synced_at":"2026-10-18T23:49:16.817Z","repository":{"id":38985733,"uuid":"106345099","full_name":"swup/swup","owner":"swup","description":"Versatile and extensible page transition library for server-rendered websites 🎉","archived":false,"fork":false,"pushed_at":"2026-10-06T17:49:07.000Z","size":171961,"stargazers_count":5246,"open_issues_count":2,"forks_count":201,"subscribers_count":36,"default_branch":"main","last_synced_at":"2026-10-18T22:08:53.655Z","etag":null,"topics":["animation","javascript","page-transitions","router","transition","view-transitions"],"latest_commit_sha":null,"homepage":"https://swup.js.org","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/swup.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null},"funding":{"github":["gmrchk","daun","hirasso"],"open_collective":"swup"}},"created_at":"2017-10-09T23:19:14.000Z","updated_at":"2026-10-18T08:14:58.000Z","dependencies_parsed_at":"2026-10-02T15:57:50.541Z","dependency_job_id":null,"html_url":"https://github.com/swup/swup","commit_stats":{"total_commits":1567,"total_committers":17,"mean_commits":92.17647058823529,"dds":0.3446075303126994,"last_synced_commit":"39afd30c1fe4650bad59c26220e0a8e5de777000"},"previous_names":["gmrchk/swup"],"tags_count":51,"template":false,"template_full_name":null,"purl":"pkg:github/swup/swup","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swup%2Fswup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swup%2Fswup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swup%2Fswup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swup%2Fswup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/swup","download_url":"https://codeload.github.com/swup/swup/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swup%2Fswup/sbom","scorecard":{"id":430923,"data":{"date":"2025-08-11","repo":{"name":"github.com/swup/swup","commit":"c7fdba3a15eb28de6726f06f85f1ff286e96924e"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":6.2,"checks":[{"name":"Maintained","score":10,"reason":"21 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:97: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:100: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:108: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:118: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:185: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:66: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e-tests.yml:79: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/e2e-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/npm-prerelease.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/npm-prerelease.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/npm-prerelease.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/npm-prerelease.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/npm-prerelease.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/npm-prerelease.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/npm-publish.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/npm-publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/npm-publish.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/npm-publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/size.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/size.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/size.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/size.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/unit-tests.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/unit-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/unit-tests.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/unit-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/version-update.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/version-update.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/version-update.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/version-update.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/version-update.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/swup/swup/version-update.yml/main?enable=pin","Info:   0 out of  27 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   4 third-party GitHubAction dependencies pinned","Info:   7 out of   7 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:16","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:17","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/e2e-tests.yml:94","Warn: no topLevel permission defined: .github/workflows/codeql.yml:1","Warn: no topLevel permission defined: .github/workflows/e2e-tests.yml:1","Warn: topLevel 'contents' permission set to 'write': .github/workflows/lint.yml:10","Warn: topLevel 'checks' permission set to 'write': .github/workflows/lint.yml:9","Warn: no topLevel permission defined: .github/workflows/npm-prerelease.yml:1","Warn: no topLevel permission defined: .github/workflows/npm-publish.yml:1","Warn: no topLevel permission defined: .github/workflows/size.yml:1","Warn: no topLevel permission defined: .github/workflows/unit-tests.yml:1","Warn: no topLevel permission defined: .github/workflows/version-update.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/npm-publish.yml:10"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: SAST configuration detected: CodeQL","Info: all commits (30) are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":1,"reason":"9 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-76c9-3jph-rj3q","Warn: Project is vulnerable to: GHSA-9wv6-86v2-598j","Warn: Project is vulnerable to: GHSA-4r4m-qw57-chr8","Warn: Project is vulnerable to: GHSA-xcj6-pq6g-qj4x","Warn: Project is vulnerable to: GHSA-356w-63v5-8wf4","Warn: Project is vulnerable to: GHSA-859w-5945-r5v3"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-19T03:19:23.437Z","repository_id":38985733,"created_at":"2025-08-19T03:19:23.437Z","updated_at":"2025-08-19T03:19:23.437Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":344872684,"owners_count":38343425,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-10-03T21:59:58.778Z","status":"online","status_checked_at":"2026-10-18T02:00:06.448Z","response_time":63,"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":["animation","javascript","page-transitions","router","transition","view-transitions"],"created_at":"2024-08-01T13:02:23.602Z","updated_at":"2026-10-18T23:49:16.809Z","avatar_url":"https://github.com/swup.png","language":"TypeScript","funding_links":["https://github.com/sponsors/gmrchk","https://github.com/sponsors/daun","https://github.com/sponsors/hirasso","https://opencollective.com/swup"],"categories":["TypeScript","JavaScript","Frontend Libraries","🎨 Design \u0026 Creative","Animations"],"sub_categories":["For building layouts"],"readme":"\u003cdiv align=\"center\"\u003e\n\n**swup 4 is released  🎉  Check out the [release notes](https://swup.js.org/announcements/swup-4/) and [upgrade guide](https://swup.js.org/getting-started/upgrading/).**\n\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg width=\"280\" alt=\"swup\" src=\"https://swup.js.org/assets/images/swup-logo.svg\"\u003e\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![npm version](https://img.shields.io/npm/v/swup.svg)](https://www.npmjs.com/package/swup)\n[![Bundle size](https://img.shields.io/bundlejs/size/swup?exports=default%20as%20Swup\u0026label=size)](https://bundlejs.com/?q=swup\u0026treeshake=%5B%7B+default+%7D%5D)\n[![npm downloads](https://img.shields.io/npm/dt/swup.svg)](https://www.npmjs.com/package/swup)\n[![Test status](https://img.shields.io/github/actions/workflow/status/swup/swup/e2e-tests.yml?branch=main\u0026label=tests)](https://github.com/swup/swup/actions/workflows/e2e-tests.yml)\n[![License](https://img.shields.io/github/license/swup/swup.svg)](https://github.com/swup/swup/blob/main/LICENSE)\n\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n# Swup\n\nVersatile and extensible **page transition library** for server-rendered websites.\n\n[Features](#features) •\n[Demos](#demos) •\n[Plugins](#plugins) •\n[Themes](#themes) •\n[Documentation](https://swup.js.org/getting-started) •\n[Discussions](https://github.com/swup/swup/discussions)\n\n## Overview\n\nSwup adds **page transitions** to server-rendered websites. It manages the complete page load lifecycle\nand smoothly animates between the current and next page. In addition, it offers many other\nquality-of-life improvements like **caching**, **smart preloading**, native **browser history** and\nenhanced **accessibility**.\n\nMake your site feel like a snappy single-page app — without any of the complexity.\n\n## Features\n\n- ✏️ Works out of the box with [minimal markup](https://swup.js.org/getting-started/example/)\n- ✨ Auto-detects [CSS transitions](https://swup.js.org/getting-started/how-it-works/) \u0026 animations for perfect timing\n- 🔗 Updates URLs and preserves native [browser history](https://swup.js.org/options/#animatehistorybrowsing)\n- 🏓 Manages the scroll position between pages and anchor links\n- 🚀 Uses a [cache](https://swup.js.org/api/cache/) to speed up subsequent page loads\n- 📡 Offers [hooks](https://swup.js.org/hooks/) to customize and extend the page load lifecycle\n- 🔌 Has a powerful [plugin system](https://swup.js.org/plugins/) and many official and third-party plugins\n- 🎨 Provides ready-to-go [themes](https://swup.js.org/themes/) to get started quickly\n\n## Demos\n\nExplore our [interactive demos](https://swup.js.org/getting-started/demos/) to see swup in action.\n\n## Documentation\n\nVisit our [official documentation](https://swup.js.org/getting-started) to learn more.\n\n## Plugins\n\nSwup is small by design. Extended features can be added via [plugins](https://swup.js.org/plugins/):\n\n- Display a [progress bar](https://swup.js.org/plugins/progress-plugin/) while loading\n- Enable [smooth scrolling](https://swup.js.org/plugins/scroll-plugin/) between visits\n- Update [meta tags and stylesheets](https://swup.js.org/plugins/head-plugin/) after page loads\n- Add support for [preloading pages](https://swup.js.org/plugins/preload-plugin/) in the background\n- Improve [accessibility](https://swup.js.org/plugins/a11y-plugin/) for screen readers\n- Perform your [animations in JS](https://swup.js.org/plugins/js-plugin/) instead of CSS transitions\n- Animate [form submissions](https://swup.js.org/plugins/forms-plugin/)\n- Get help in [debug mode](https://swup.js.org/plugins/debug-plugin/)\n\nCheck out the list of [official](https://swup.js.org/plugins/) and [third-party](https://swup.js.org/third-party-plugins/) plugins.\n\n## Themes\n\nGet started quickly with one of three official themes: [fade](https://swup.js.org/themes/fade-theme/),\n[slide](https://swup.js.org/themes/slide-theme/), and [overlay](https://swup.js.org/themes/overlay-theme/).\n\n## Examples\n\n\u003cimg src=\"https://user-images.githubusercontent.com/9338324/49190360-50125480-f372-11e8-89e9-d2fb091a2240.gif\" width=\"100%\"\u003e\n\nTake a look at the [interactive demos](https://swup.js.org/getting-started/demos/) and\n[sites using swup](https://github.com/swup/swup/discussions/333) for more examples.\n\n## Having trouble?\n\nIf you're having trouble implementing swup, check out the [Common Issues](https://swup.js.org/getting-started/common-issues/) section of the docs, look at [closed issues](https://github.com/swup/swup/issues?q=is%3Aissue+is%3Aclosed) or create a [new discussion](https://github.com/swup/swup/discussions/new).\n\n## Want to Contribute?\n\n[We're looking for maintainers!](https://github.com/swup/swup/discussions/424)   👀\n\nBecome a sponsor on [Open Collective](https://opencollective.com/swup) or support development through\n[GitHub sponsors](https://github.com/sponsors/gmrchk).\n\nThis project is tested with BrowserStack.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswup%2Fswup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fswup%2Fswup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswup%2Fswup/lists"}