{"id":16642930,"url":"https://github.com/horlogeskynet/cdnupdates","last_synced_at":"2026-04-27T02:31:27.657Z","repository":{"id":84678392,"uuid":"114922616","full_name":"HorlogeSkynet/CDNUpdates","owner":"HorlogeSkynet","description":":link: A Sublime Text 3+ plugin to check for CDN updates in your Web sources","archived":false,"fork":false,"pushed_at":"2022-04-23T10:20:54.000Z","size":100,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-12-26T13:45:26.266Z","etag":null,"topics":["cdn","cdn-updates","content-delivery-network","package-control","sublime-text","sublime-text-3","sublime-text-4","sublime-text-plugin","webdevelopment"],"latest_commit_sha":null,"homepage":"https://packagecontrol.io/packages/CDNUpdates","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HorlogeSkynet.png","metadata":{"files":{"readme":"README.md","changelog":null,"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-12-20T19:18:23.000Z","updated_at":"2022-01-03T14:17:39.000Z","dependencies_parsed_at":null,"dependency_job_id":"7209bd3c-f93c-4460-b7c2-9e71769336b5","html_url":"https://github.com/HorlogeSkynet/CDNUpdates","commit_stats":{"total_commits":81,"total_committers":3,"mean_commits":27.0,"dds":0.4444444444444444,"last_synced_commit":"1caa9ff6a710d9242ba204798818967a1d5fc9bc"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/HorlogeSkynet/CDNUpdates","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HorlogeSkynet%2FCDNUpdates","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HorlogeSkynet%2FCDNUpdates/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HorlogeSkynet%2FCDNUpdates/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HorlogeSkynet%2FCDNUpdates/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HorlogeSkynet","download_url":"https://codeload.github.com/HorlogeSkynet/CDNUpdates/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HorlogeSkynet%2FCDNUpdates/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32320206,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T23:26:28.701Z","status":"online","status_checked_at":"2026-04-27T02:00:06.769Z","response_time":128,"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":["cdn","cdn-updates","content-delivery-network","package-control","sublime-text","sublime-text-3","sublime-text-4","sublime-text-plugin","webdevelopment"],"created_at":"2024-10-12T08:06:50.853Z","updated_at":"2026-04-27T02:31:27.638Z","avatar_url":"https://github.com/HorlogeSkynet.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CDNUpdates\n\n\u003e A Sublime Text 3+ plugin to check for CDN updates in your Web sources\n\n![Preview](https://i.imgur.com/WrxQApP.png)\n\n## Introduction\n\nTired of manually checking if your CDN (_Content Delivery Network_) are up to date in your web pages ? Yeah, so was I... :confused:\n\nBelow is a sum-up of what this Sublime Text 3+ plugin does (well) to help you deal about this :\n\n1. Gathers links present in your current sheet\n2. Compares them to a list containing known public CDN providers\n3. Figures out a way (with providers' API or with GitHub one) to retrieve the latest \"version\" of each resource, and compares it with the one you are currently using\n4. Displays some icons in the gutter, to inform you of the results\n5. Displays a _Phantom_ object with the latest version available you should be using\n6. _Bonus_ : Shows up a warning for resources not loaded over HTTPS :+1:\n\nOf course, when this plugin does not use the API of the CDN provider, it may inform you of a newer published version, possibly not available from your provider (maybe it's time to opt out from this privacy mess ? :wink:).\n\n## Installation\n\n### With Package Control\n\n1. Open your command palette and type in : `Package Control: Install Package`\n2. Browse the list or search for `CDNUpdates`\n3. Press `Enter` and you're done !\n\nPackage Control dedicated page [here](https://packagecontrol.io/packages/CDNUpdates).\n\n### Manually\n\n1. Move into Sublime Text packages folder (usually `$HOME/.config/sublime-text-3/Packages/` or `%AppData%\\Sublime Text 3\\Packages\\`)\n2. Clone this repository there : `$ git clone https://github.com/HorlogeSkynet/CDNUpdates.git`\n3. Restart Sublime Text and... :tada:\n\n## Usage\n\n* Open your command palette and type in : `CDNUpdates`\n\n* Right click on your file : `CDNUpdates \u003e ...`\n\n* `Tools \u003e Packages \u003e CDNUpdates \u003e ...`\n\n## Settings\n\nMost of the CDN providers don't provide any API for their service, so it would be very tricky to retrieve latest version available directly from them.  \nUnless for \u003chttps://cdnjs.com/\u003e, this plugin is actually based on the GitHub API to fetch the latest existing Git tag directly from the repositories. Its `name` is compared afterwards with the CDN version present in your sources.  \nIf you have many many CDNs in your sheets (or if you want to contribute to this project 😜), you'll surely need to set a GitHub API token to avoid being blocked by the rate limit.  \nYou can generate one [here](https://github.com/settings/tokens) (`public_repo` scope), and paste in under the plugin preferences (accessible from `CDNUpdates`'s Sublime menu).\n\n## CDN Providers currently handled\n\n* [X] \u003chttps://cdnjs.com/\u003e\n* [X] \u003chttps://bootstrapcdn.com/\u003e\n* [X] \u003chttps://code.jquery.com/\u003e\n* [X] \u003chttps://ajax.googleapis.com/\u003e\n* [X] \u003chttps://jsdelivr.com/\u003e\n* [X] \u003chttps://rawgit.com/\u003e\n* [X] \u003chttps://code.ionicframework.com/\u003e\n* [X] \u003chttps://cdn.fontawesome.com/\u003e\n* [X] \u003chttps://www.keycdn.com/\u003e (partially)\n* [X] \u003chttps://www.staticfile.org/\u003e\n* [X] \u003chttps://ajax.aspnetcdn.com/\u003e (partially)\n* [X] \u003chttps://cdn.ckeditor.com\u003e\n\n## Frequently Asked Questions\n\n### How do I get rid of your horrible icons in the gutter ?\n\n\u003e It'll be done automatically next time you'll save your sheet :wink:\n\n### I've updated my links, how can I get rid of these _Phantom_ objects ?\n\n\u003e Same as above :smile:\n\n### Can I add another (or my own) CDN ?\n\n\u003e Of course you can, unless the Open Source aspect of this project would be useless :fearful:  \n\u003e You basically just have to tweak [CDNContent.py](CDNContent.py) and imitate what is done there for your provider.  \n\u003e Don't forget to share your work with the world ! :earth_africa:  \n\u003e Or... you can just open an [issue here](https://github.com/HorlogeSkynet/CDNUpdates/issues/new) and I'll do my best to handle your case !\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhorlogeskynet%2Fcdnupdates","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhorlogeskynet%2Fcdnupdates","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhorlogeskynet%2Fcdnupdates/lists"}