Repository navigation
Give each package a homepage and fix the links its README carries - #29
Merged
Merged
Conversation
The published manifests had no homepage, so npm fell back to the repository README. Each now links the 51degrees.com page for its area. The README npm shows for each package tags its 51degrees.com links for npm, ends with a Find out more section, and links to this repository where it used root-relative paths from the earlier repositories, which lead nowhere here. The product READMEs get the same path fixes as relative links, and links to renamed documentation pages go to the page each became.
jwrosewell
marked this pull request as ready for review
November 4, 2026 17:24
Merged
jwrosewell
added a commit
that referenced
this pull request
Nov 4, 2026
Releases what has collected on `rc` since #24: - [#23](#23) Describe the rc approach to releases in AGENTS.md - [#22](#22) Move the examples, tests and CI to the cxx data submodule - [#26](#26) Say in AGENTS.md how to get the data, build and run the examples - [#29](#29) Give each package a homepage and fix the links its README carries - [#25](#25) Check the callback URL before the JavaScript builder writes it - [#28](#28) Stop the data file watcher and update timer keeping pipelines alive The cxx submodule moves from [4.5.102](https://github.com/51Degrees/51degrees-cxx/releases/tag/4.5.102) to [4.5.103](https://github.com/51Degrees/51degrees-cxx/releases/tag/4.5.103). That release adds the [data](https://github.com/51Degrees/data) repository at `cxx/data` and changes nothing under `src/`. No commit asks for a major or minor version change, so the publish moves only patch numbers. The last release into `main` was #24, merged at 09:24 UTC on 4 November 2026.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
An npm package page shows the package's homepage, repository and README. The published manifests had no
homepage, so npm showed the repository README as the home page. The README npm shows for each package carried GitHub's UTM tags, had no "Find out more" section, and linked to other packages and examples with root-relative paths such as/fiftyone.devicedetection.cloud/examples/cloud/gettingstarted-console. Those paths come from the earlier per-package repositories and do not exist in this repository, where the same folders are underdevice-detection/,ip-intelligence/andpipeline/. Separately, many links went to documentation pages that were renamed when the documentation was reorganised.Package metadata
Each published package's
package.jsonandremote_package.jsongets ahomepage, placed beforebugs.ci/build-package.ps1movesremote_package.jsonoverpackage.jsonbefore it packs, soremote_package.jsonholds what npm shows, and the three packages without one publishpackage.json.homepagefiftyone.pipeline.core,.engines,.engines.fiftyone,.cloudrequestengine,.translationfiftyone.pipeline.didfiftyone.devicedetection,.cloud,.onpremise,.sharedfiftyone.ipintelligence,.cloud,.onpremise,.shared,.translationfiftyone.geolocationEach
homepagecarriesutm_source=npm,utm_medium=package,utm_campaign=51degrees-node, the package name asutm_contentandutm_term=homepage.repositoryalready names this repository with each package'sdirectory, andbugsalready points at this repository's issues, so neither changes. No other field changes.The README on each npm page
The 16 published packages' READMEs change in four ways.
utm_source=npm&utm_medium=package&utm_campaign=51degrees-node, with the package name asutm_content. Each link keeps itsutm_term. Before, they carriedutm_source=github&utm_medium=readmeand the file name asutm_content. The same files are shown on GitHub, so clicks there will now be counted under npm too./fiftyone.devicedetection.cloud/examples/cloud/gettingstarted-consolebecomes https://github.com/51Degrees/51degrees-node/tree/main/device-detection/fiftyone.devicedetection.cloud/examples/cloud/gettingstarted-console. An absolute link works on npmjs.com and on GitHub alike. A link that ended in#readme.mdnow points at the package's folder, which shows its README.https://51degrees.com/Licencing-Pricing/On-Premiseinfiftyone.devicedetection.onpremisebecomes https://51degrees.com/pricing, the page it redirected to.https://51degrees.com/location-node/4.2/index.htmlinlocation/README.mdlanded on the documentation home page and becomes the Location reference.fiftyone.pipeline.cloudrequestenginealso links the cloud service documentation.The product READMEs
device-detection/readme.md,ip-intelligence/readme.md,pipeline/readme.md,device-detection/run_examples.mdandip-intelligence/run_examples.mdare not published to npm. Their root-relative links become relative to the file's own folder, for example/fiftyone.devicedetection.cloud/examples/cloudindevice-detection/readme.mdbecomesfiftyone.devicedetection.cloud/examples/cloud, and/readme.mdinrun_examples.mdbecomesreadme.md. Their UTM tags do not change.Documentation links
The renamed pages now redirect to the documentation home page, so a reader never reached the page a link was for. Each old page below was found in the 4.4 documentation, which keeps the old names, and matched to the current page with the same title. Where the title changed, as for the Configurator page, the two pages open with the same text. The UTM parameters of each link are unchanged.
_concepts__configuration__builders__index.html_pipeline_api__concepts__configuration__builders__index.html_concepts__configurator.html_services__configurator.html_examples__device_detection__getting_started__console__cloud.html_device_detection__examples__getting_started__console__cloud.html_examples__device_detection__index.html_device_detection__examples__index.html_features__automatic_datafile_updates.html_pipeline_api__features__automatic_datafile_updates.html_features__usage_sharing.html_pipeline_api__features__usage_sharing.html_info__resource_keys.html_services__cloud__resource_keys.html_info__tested_versions.html_product_summaries__tested_versions.html67 links in 30 files
Two links to
_info__dependencies.html, indevice-detection/readme.mdandip-intelligence/readme.md, are left as they are, because the current documentation has no page that replaces it.How it was checked
homepageis in the 51degrees.com sitemap.scripts/utm-lint.ps1reports no violations, both onrcand with this change.Other pull requests
#15 changes
descriptionandkeywordsin the same manifests, near the top of each file, andhomepagegoes in further down besidebugs. A three-way merge of the 12 files both change finds no conflict. #22 changes some of the same READMEs. Two lines that #22 rewrites, or that sit directly next to a line it rewrites, are left as they are, so that neither pull request conflicts with the other. With those two lines left as they are, a three-way merge withgit merge-fileof each of the 17 files both pull requests change finds no conflict.ip-intelligence/fiftyone.ipintelligence.translation/readme.mdline 16 links/fiftyone.ipintelligence.onpremise#readme.md, which leads nowhere. Move the examples, tests and CI to the cxx data submodule #22 rewrites that sentence. The link should become https://github.com/51Degrees/51degrees-node/tree/main/ip-intelligence/fiftyone.ipintelligence.onpremise.ip-intelligence/fiftyone.ipintelligence/readme.mdline 14 keeps GitHub's tags on its two Configurator links, because Move the examples, tests and CI to the cxx data submodule #22 changes line 15.