jsdelivr / jsdelivr Goto Github PK
View Code? Open in Web Editor NEWA free, fast, and reliable Open Source CDN for npm, GitHub, Javascript, and ESM
Home Page: https://www.jsdelivr.com
License: MIT License
A free, fast, and reliable Open Source CDN for npm, GitHub, Javascript, and ESM
Home Page: https://www.jsdelivr.com
License: MIT License
Hi, Jasmine 2.0.0 was released 2 months ago, is it possible to add it to JSDelivr? Right now JSDelivr only hosts Jasmine 2.0.0rc2.
For those poor souls without gzip support.
I noticed that your lodash page lists the lodash.backbone.js
build as default:
http://www.jsdelivr.com/#!lodash
but seems the lodash.js
is the default: https://github.com/bestiejs/lodash/blob/master/README.md
Looks like an alphabetical sorting issue. Is there a way to flag a sub-version as 'default' please?
Thanks for your service & hosting the rainbow of lodash flavors!
jquery-2.0.3.min.js does not seem to be minified properly.
I wanted to add Zepto Modules but i was wondering, should it go separately (Ex: zepto.ie, zepto.data, etc.) or it can be added to the Zepto project itself?
I think it would be good if it's within the Zepto project as they don't have any version for each module and are mostly depended on the main file and should be used with the main anyway.
What you think about this? I'm gonna send the PR today after you confirm.
Try to get a reliable number of hits per project.
I don't think bandwidth is that important, authors want the hits to see the popularity of their projects.
//cdn.jsdelivr.net/sorttable/2/sorttable.min.js
is returning this atm :
[ERROR] in /home/mintymike/public_html/refresh-sf.com/public/yui/files/9d5c694fb712b2af7140d5607462e4f5f234d63c.txt
19:31:missing ; before statement
[ERROR] in /home/mintymike/public_html/refresh-sf.com/public/yui/files/9d5c694fb712b2af7140d5607462e4f5f234d63c.txt
1:0:Compilation produced 1 syntax errors.
org.mozilla.javascript.EvaluatorException: Compilation produced 1 syntax errors.
at com.yahoo.platform.yui.compressor.YUICompressor$1.runtimeError(YUICompressor.java:172)
at org.mozilla.javascript.Parser.parse(Parser.java:396)
at org.mozilla.javascript.Parser.parse(Parser.java:340)
at com.yahoo.platform.yui.compressor.JavaScriptCompressor.parse(JavaScriptCompressor.java:315)
at com.yahoo.platform.yui.compressor.JavaScriptCompressor.<init>(JavaScriptCompressor.java:536)
at com.yahoo.platform.yui.compressor.YUICompressor.main(YUICompressor.java:147)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.yahoo.platform.yui.compressor.Bootstrap.main(Bootstrap.java:21)
If an individual had several projects to update or add, would you prefer a single pull request for changes done at once? Or break apart into 1 pull = 1 project?
I can go either way, though I think my laptop HD would be happier with a single pull request for many packages ;)
Hey guys, can you update the maskmoney to version 2.1.1?
Besides that, there's any automated way to update plugin versions on jsdeliver?
All files in the Ace library are not found.
Is there any reason as to why JS files are getting served with the application/x-javascript
Content-Type
? RFC 4329 discourages the use of these "experimental" media types and suggests application/javascript
instead.
Hi,
This loads http://cdn.jsdelivr.net/g/knockout
the version 3.0.0 beta, in stead of the official release version 3.0.0.
Shouldn't that url load the latest of knockout project?
Create an automated system that will be able to keep selected/most projects updated.
Idea:
Create jsdelivr.json and fallback bower.json. Download tag, remove useless files based on rules and sync with CDN.
jsDelivr is a non-profit project that heavily relies on sponsors and the community for help. Here are some stuff that we need. If someone can help or knows people that can help please let me know.
If you can help with something else that is not listed then feel free to contact me.
All help is appreciated.
A real fully featured API is needed.
http://api.jsdelivr.com/packages/json
Outputs all hosted projects and files of latest versions
http://api.jsdelivr.com/packages/json?versions=all
Outputs all hosted projects and files for all hosted versions
http://api.jsdelivr.com/packages/xml
Same XML formatted output
http://api.jsdelivr.com/packages/xml?hash=true
Includes md5 hashes for each file
http://api.jsdelivr.com/project/jquery
By default outputs JSON with jQuery information and files of latest version
http://api.jsdelivr.com/project/jquery?version=1.9.1&hash=true&url=true
Request info for specific version and include hashes. Also instead of relative paths outputs full URLs for each file.
http://api.jsdelivr.com/versions/jquery
A list of all hosted versions of a project
http://api.jsdelivr.com/lastver/jquery
Output the latest version of a hosted project
http://api.jsdelivr.com/files/jquery
Output the list of hosted files for a project. By default latest version
http://www.jsdelivr.com/mainfile/jquery
Get the main file of a project. Relative by default. &url=true for full URLs
Hello, I noticed that http://api.jsdelivr.com/packages.php does only show data for the current version of a plugin, would much be preferred if it could list info about every version of each plugin.
I created a semipopular CSS library named Min. On its downloads page, Min links to its jsdelivr listing, but the link doesn't go directly to its jsdelivr listing. Instead, it lists all frameworks whose names include the word "min". This puts Min at the bottom of the page.
The URL in question: http://www.jsdelivr.com/#!min
Is it possible to link directly to Min's entry?
Add filter keywords to tags to help searching repos.
Thank you for the wonderful plugin :)
Hi,
I would like to have the function to reposition the items in the pinterest-like view in jquery.freewall. Basically I am implementing the filters to filter some of the div according to its content (like free text search). When I do that, I can able to hide (display:none) the items but the items are not repositioned to the top.
I know this is because freewall using position:absolute to position the items. If I use position:relative and comment the line number 272 and 273 //top: -- and //left: -- values. the blocks repositioning correctly but the blocks are not stacked one by one (there are some gaps between rows).
Is there any other way to achieve this using your plugin?
your help will be appreciated!!!
Hi,
When I search for jquery-ui or jquery.ui (notice the dash and dot) or jquery.validate or jquery-validate (tried lots of combo's, hope you got the idea), it says 'no result'.
But how come I can just go to: http://cdn.jsdelivr.net/jquery.ui/1.10.4/jquery-ui.min.js,
and see the content of it?
I'm sure that I did find the files in the past using the search field.
I was trying to load jquery 2.0.3, jquery-ui.min.js, jquery-validate.min.js in one http request.
How can I do this?
Thanks in advance!
By the way, I saw knockout 3.0.0beta (in the dropdown button), and I think it should be 3.1.0beta. Because 3.0.0 is officially out for a while now.
EDIT: it seems that moment, knockout, knockout.mappings, mustache and a few more can't be found either.
Is it possible to add QUnit 1.13.0 and 1.14.0?
This could be a convenient feature to enable automatic update the projects with the new version from github releases like the way bower does it.
So for example I have this project https://github.com/danialfarid/angular-file-upload and to maintain it in bower registry I have https://github.com/danialfarid/angular-file-upload-bower which is basically the same thing but only with the necessary files for production. Whenever I do a release on angular-file-upload-bower project the bower will automatically pull it from the github releases if someone trying to install and use that specific version.
If you could do the same thing here and just add all those file to the root it makes it much easier for me without having to create a pull request each time. I have kind of stopped updating the CDN since it's a hassle to create a pull request each time I release a new version.
Loading http://cdn.jsdelivr.net/g/[email protected],[email protected]
Results in the following JS error:
Uncaught SyntaxError: Unexpected token * [email protected],[email protected]:8
It appears the comment is closed accidentally
Reported bug:
try searching for "jquery ui" or "jquery-ui"
you wont find it, you will have to specify the word correctly as "jquery.ui"
this doesn't work if people don't know the exact name.
Dependency: #180
Idea:
Combine multiple projects into a single JS file based on user request.
Example
//cdn.jsdelivr.net/s/jquery,jquery.cookie,alertify.js,accounting.js
//cdn.jsdelivr.net/s/jquery:2.0.1,jquery.cookie,alertify.js:0.3.8,accounting.js
All names and versions should be based on jsDelivr existing projects.
(moving discussion from #235)
It would be nice to have version-dependent latest. There are two ways this can be done (examples from that wiki page):
//cdn.jsdelivr.net/abaaso/latest/3.8/abaaso.js
Loads version 3.8.16 if it is the latest version in 3.8 branch. /latest/3/abaaso.js
will return the latest version in 3
branch: e.g. 3.11.5.
//cdn.jsdelivr.net/abaaso/3.8/abaaso.js
This will load version 3.8 if there is a directory for it, or the latest version in 3.8 branch (3.8.16) it there isn't. There might be a problem if author doesn't keep version format consistent.
@jimaek: I want to make the URLs more dynamic but my problem is reliability. With static files I know 100% the user will get the contents of the file. But for example if I create a PHP script to handle different parameters like the versions you said then a lot of new points of failure are added. script code, php-fpm, MySQL, server load...
Well, latest versions are surely not generated by a PHP script, but probably just copied to some location. The same algorithm can be applied to sub-latest versions (1, 1.0, 1.1, 2, 2.0 etc). Hardlinks can remove any disk space overhead.
As for one-week update delay, this is a problem. And I don't know how it can be solved โ except for keeping a separate "routing" server, which receives a request for a sub-latest version, and routes to the correct file. But it will be a SPF, which is bad. Still, it is a task worth thinking about. It will also allow for faster latest.
Currently jsDelivr is showing our old address. The new user is lodash
and the repo is https://github.com/lodash/lodash/.
Thanks :D
Hello,
I was trying the grouping feature today to save multiple calls (Very good stuff btw ๐)
And found there are 2 issues with this:
mainfile
and vice-versa. So if you want to group a lib's CSS file with other CSS files, it isn't working the way it is supposed to work (assuming it should have supported CSS as some projects mainfile is CSS) and instead it loads the mainfile
(In this case it loads JS file) which i have already explained above. Here's the link which I'm trying to load in which i just want to group second project's CSS file along with the first one, but it simply loads the main JS file, hence it fails.So it would be good to have some sort of option to select single file of a project to group with other files and support for CSS too.
Thanks!
For some reason, whenever I search for min on jsdelivr it doesn't show up. I don't know why, because it's definitely there.
Website not showing all Bootstrap CDN files. In particular I'm looking for Bootstrap v 2.3.2 bootstrap.min.js. I know the file is there in https://github.com/jimaek/jsdelivr/tree/master/files/bootstrap/2.3.2/js. Clicking "Show More" seems to show just 10 total files.
I noticed similar issues with the other bootstrap versions.
For some reason, I cannot get the jquery.payment library to initialize. The source seems to load fine, but I cannot perform the provided functions of the library like I can if I load the script locally. Locally loading the script works just fine.
I also tried this with the version of jquery.payment hosted on cdnjs.com CDN. It has the same problem.
Example (view console error when run/loaded):
http://jsfiddle.net/DDw6A/
Any idea what is causing this?
{"message":"Account over limit."}
I was snooping to see how switching to CloudFlare changed things.
BTW, I wonder if there should be a jsdelivr.com repo?
TODO:
Add a mainfile
parameter to every project.
This will allow people to create new tools for jsDelivr.
Plus gives me the ability to add a lot of awesome features.
Hi there,
I remember you mentioned a new feature that would automagically synch the CDN every time I push a new version of my plugin to github. Is this feature already in place? In other words, should I continue to send you Pull Requests for my javascript files?
Thanks
If you believe jsDelivr is slow please report your findings and data over here.
I will do my best to fix the problem.
Please include your IP address and any other information you have.
I was using a library hosted on some other public CDN. The maintainer of the library accidentally updated an older version with new code and broke the library thus breaking our application. I didn't realize how devastating this was and am making efforts to avoid this.
Does jsdelivr have any mechanisms to avoid this? I am also looking at using a cdn and setting up jsdelivr as a pull zone origin so as to preserve the integrity of the library versions.
Names omitted for respect of respective parties.
I need a native English speaker to check out our README and fix any mistakes he finds and improve the readability of the text.
Can someone help with this?
The API appears broken.
Notice: Undefined index: github in /home/www/jimaek/jsdelivr.com/www/packages.php on line 28
is printed out many times
Warning: parse_ini_file(../www/files/wp-jupiter/info.ini): failed to open stream: No such file or directory in /home/www/jimaek/jsdelivr.com/www/packages.php on line 25
is printed once, along with Warning: Cannot modify header information - headers already sent by (output started at /home/www/jimaek/jsdelivr.com/www/packages.php:28) in /home/www/jimaek/jsdelivr.com/www/packages.php on line 53
Then follows what I assume is the actual API.
http://www.jsdelivr.com/#!leaflet is missing the JavaScript files.
The standard way of using Leaflet is to include
<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.7.2/leaflet.css" />
<script src="http://cdn.leafletjs.com/leaflet-0.7.2/leaflet.js"></script>
This seems to be an issue with chrome, which is setting the Cache-Control
to max-age=0
and ignoring the response. I'm not entirely sure how you would go about fixing this, maybe by appending script.js
to the end of the URLs so it expects JavaScript (it seems unsure about what to expect).
Request URL: http://cdn.jsdelivr.net/g/modernizr,selectivizr,jquery,jquery.equalize
Request Method: GET
Status Code: 200 OK
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-GB,en;q=0.8,en-US;q=0.6
Cache-Control: max-age=0
Connection: keep-alive
Host: cdn.jsdelivr.net
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=315360
Connection: keep-alive
Content-Encoding: gzip
Content-Type: application/javascript
Date: Sun, 16 Feb 2014 13:23:29 GMT
Server: nginx
Transfer-Encoding: chunked
Vary: Accept-Encoding
X-Age: 2199
X-Cache: HIT
X-Cache: HIT
X-Edge-IP: 185.2.138.117
X-Edge-Location: London, GB
TODO:
Server side script to handle symlinks and create a latest
version for all existing projects automatically.
You files list a selectivzr 1.0.3, but http://selectivizr.com/ and https://github.com/keithclark/selectivizr both list 1.0.2 as the latest version. Where did you get 1.0.3 from?
https://github.com/jsdelivr/jsdelivr/blob/master/files/selectivizr/1.0.3b/selectivizr.min.js seems to include a second library, and 1.0.3 appears to be an unofficial unstable version.
None of the Bootswatch themes have '../fonts/glyphicons-halflings-regular.[type]' as called for in the css, hence none of the glyphicons work. Also, is it also too much to ask for bootbox.js to be included? (From bootboxjs.com) It is being offered at MaxCDN I noticed. Thank you!
I would like to load fancybox and it's media helper in one file, but the current system does not seem to allow this.
Desired:
//cdn.jsdelivr.net/g/[email protected]
Current:
//cdn.jsdelivr.net/fancybox/2.1.5/jquery.fancybox.pack.js
//cdn.jsdelivr.net/fancybox/2.1.5/helpers/jquery.fancybox-media.js
I hate the idea of hosting all files in Github but I don't see any other alternative.
Does anyone have any ideas on how improve this system? Ideally we want to host in Github only configs/meta data required for everything to function and not the actual files.
In IE (10) debugger : I get this errors in the console, which hides all the icon-fonts, when I include //cdn.jsdelivr.net/fontawesome/3.2.0/css/font-awesome.min.css
:
CSS3117: @font-face failed cross-origin request. Resource access is restricted.
fontawesome-webfont.eot
CSS3117: @font-face failed cross-origin request. Resource access is restricted.
fontawesome-webfont.woff
CSS3117: @font-face failed cross-origin request. Resource access is restricted.
fontawesome-webfont.ttf
This error doesn't appear if I include : //cdnjs.cloudflare.com/ajax/libs/font-awesome/3.2.0/css/font-awesome.min.css
These smart people wanted to use raw.github.com/user/repo/master/filename.js
as a host but couldn't because raw.github serves everything with a text MIME. So they bought rawgithub.com
setup a proxy/mirror and filtered X-Content-Type-Options: nosniff
from the header.
Sadly, if you use it in a production site, they blacklist you and eventually start serving evil.css:
/* Don't send production traffic to rawgithub.com! */
html {
-moz-transform: rotateX(180deg) !important;
-webkit-transform: rotateX(180deg) !important;
transform: rotateX(180deg) !important;
}
You could try and get MaxCDN and others to step up and start really competing with cdnjs!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.