-
Notifications
You must be signed in to change notification settings - Fork 303
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
modularize, publish to npm #3
Comments
hum i have to test that, i don't use command or node.js |
IMO, it doesn't make sense to publish this library on npm. npm is for node packages, not client-side js libraries. If oimo.js is going to be published as a package, it should be on Bower. Bower is specifically used to manage front-end libraries like this one. If I have time next week, I can try to take a stab at AMD modularization and publishing to Bower. |
@positlabs I disagree with you here. Babylon.js (which uses Oimo.js in its example documentation) is itself available at npm (as are many, many, many client side libaries). I think @substack makes a great point - if this were available on npm, a person could just |
@computersarecool ditto. It's no longer true that npm is mainly server-side packages. If I could use it for server and client packages consistently, it would be ideal. |
perhaps @lo-th might reconsider... |
Any news about this? |
@lo-th should reconsider this for 2 reasons :
Obviously, my server has no need to be rendering graphics, but if I could run the same physics on the server that are running on the client, I wouldn't need to be resorting to a myriad of nasty hacks I've implemented in the mean time. I'm sure myself and some others who are interested could go about building the Oimo code to work in such a manner. Not a lot needs to be changed, but it would make all the difference in the world. |
I agree with making this an NPM package, |
Beginner in 3D here. |
@quasipedia Awesome! I'm going to use cannonjs now! 😄 |
yea npm version is on way i hope someday Saharan help me for adding creazy function |
Great to hear about! |
is done !!! |
🕺 🎆 🙇 ❤️ |
In the main example there are 17 script tags:
https://github.com/lo-th/Oimo.js/blob/master/index.html#L16-L32
That's not a great way for third parties to consume this library. It's common practice to generate a umd build so that people using module systems such as commonjs or AMD can
require()
this module and people not using any module system will still have their window globals as usual, but with only a single<script>
tag to include.Once the code has been modularized, you can generate a
package.json
file with npm, which ships by node.js by default. Just do:And the command will walk you through filling out the right fields. You should point the
"main"
field at the singular entry point for this package, which could be a dist build since the internals aren't modularized yet. A really simple way to do this with what you've already got is just tocat
together all the files necessary and then append someexports.FOO=...
statements, at least for commonjs. Once the build works, just publish to npm with:You can test the build with a tool like browserify.
The text was updated successfully, but these errors were encountered: