{"id":15413569,"url":"https://github.com/kidkarolis/space-router","last_synced_at":"2025-04-12T01:43:12.880Z","repository":{"id":57366789,"uuid":"84734620","full_name":"KidkArolis/space-router","owner":"KidkArolis","description":"Framework agnostic router for single page apps","archived":false,"fork":false,"pushed_at":"2024-05-01T11:19:52.000Z","size":5322,"stargazers_count":39,"open_issues_count":0,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-10T11:31:30.338Z","etag":null,"topics":["browser","callback","hash","pushstate","react","router"],"latest_commit_sha":null,"homepage":"https://kidkarolis.github.io/space-router/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KidkArolis.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}},"created_at":"2017-03-12T15:06:54.000Z","updated_at":"2024-07-30T08:02:20.000Z","dependencies_parsed_at":"2024-05-01T12:54:50.754Z","dependency_job_id":"261b42c2-6a9e-4e94-b313-716b0943e1cf","html_url":"https://github.com/KidkArolis/space-router","commit_stats":{"total_commits":89,"total_committers":2,"mean_commits":44.5,"dds":0.0449438202247191,"last_synced_commit":"6721e45261691edc60d5d63b53abdd2c564001c9"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KidkArolis%2Fspace-router","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KidkArolis%2Fspace-router/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KidkArolis%2Fspace-router/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KidkArolis%2Fspace-router/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KidkArolis","download_url":"https://codeload.github.com/KidkArolis/space-router/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248505852,"owners_count":21115353,"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":["browser","callback","hash","pushstate","react","router"],"created_at":"2024-10-01T16:57:56.370Z","updated_at":"2025-04-12T01:43:12.857Z","avatar_url":"https://github.com/KidkArolis.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg width=\"360\" src=\"https://user-images.githubusercontent.com/324440/138553709-c9fda51d-810f-437d-8ca4-a2d89cb858f7.png\" alt=\"space router logo, a skeleton floating in space\" title=\"space-router\"\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eSpace Router\u003c/h1\u003e\n\u003ch4 align=\"center\"\u003eFramework agnostic router for single page apps\u003c/h4\u003e\n\u003cbr /\u003e\n\nSpace Router packs all the features you need to keep your app in sync with the url. It's distinct from many other routers in that there is only **a single callback**. This callback can be used to re-render your applocation, update a store and perform other actions on each url change. Space Router is **stateless**, it doesn't store the current route leaving state completely up to you to handle.\n\nIn summary, Space Router:\n\n- listens to url changes using popstate or hashchange event\n- extracts url parameters and parses query strings\n- supports nested routes and arbitrary route metadata\n- fits into a wide range of application architectures and frameworks\n- has no dependencies and weighs less than 2kb\n\n## Install\n\n    npm i space-router\n\n## API\n\nSee the [API Docs](https://kidkarolis.github.io/space-router/) for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkidkarolis%2Fspace-router","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkidkarolis%2Fspace-router","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkidkarolis%2Fspace-router/lists"}