Repository navigation
Hack node.js internal ... #4931
Description
Activity
- addedquestionIssues asking questions about Node.js.Issues asking questions about Node.js.
on Jan 28, 2016 cc @nodejs/inclusivity @nodejs/documentation
There's a little bit of info here: https://github.com/nodejs/nodejs.org/blob/master/locale/en/docs/meta/topics/dependencies.md. We need more docs on internals though. We'd really appreciate help identifying what things newbies to the internals don't understand. 😺
We need to narrow down this issue here. What part of the internal you wanna hack? If you wanna build a native add-on there is https://nodejs.org/dist/latest-v5.x/docs/api/addons.html
hi @jackzzjack ! right now there aren't many great docs to help you get started, but there are a few working groups who are very interested in improving that experience. do you have some specific questions that we can answer? they'll also help us know what new contributors are looking for. thanks!
I'm a a little bit disappointed no one linked it yet, but currently the best resource for this is probably a talk I recently gave at Node.js Interactive.
The documentation is not really so good right now, but a lot of people are interested in it and hopefully there will be more motion soon.
For now, the best place to look is issue labels. There are a couple good ones that list issues where newer people may find it easier to help out:
good first contribution-- issues we've specifically tagged for people looking to contribute.test-- Investigating test failures. There have been several people who have gotten involved this way.
If you have questions, please feel free to ask. :) (even like this!)
There is also a
#node-devIRC channel where most of the collaborators hang out to help collaboration around core, which is always a good place to ask questions.yea dude @jackzzjack, you should totally watch @Fishrock123 talk. I think that's what you're looking for. It's not exactly docs, but it should get you sorted out.
@chrisdickinson Just bought more developers to the
Docs teamso I'm sure we will tackle this in the near future.There are some big topics, V8 and libuv. Maybe somebody can provide some big pictures about the whole node.js architecture to lead the newbies get in.
I am curious about the relationship between V8, libuv and node.js.
Fishrock's talk is far better, but my talk about getting involved with Node has more Muppets. So there's that. https://www.youtube.com/watch?v=1F8F-EbdX40
I'm not a libuv expert by a long shot, so ignore me if someone else points to something better, but I've found this helpful from time to time: https://nikhilm.github.io/uvbook/index.html
I don't think there's a canonical overview document explaining v8 and libuv and how it all fits into Node.js. If you're super-motivated, maybe do your best to write up what it is that you do know (or can find in other sources), and hop on the #node-dev IRC channel and start asking questions to fill in the gaps. Then submit the resulting doc in markdown format as a PR. (Sorry if that's a distinctly not-helpful response.)
+1 @Trott
Libuv bookhttps://nikhilm.github.io/uvbook/index.htmlAnd introduction to libuv, I just downloaded that book last week and don't hesitate to check out the
V8 repositoryhttps://github.com/v8/v8 and just for kicks as well check out theChromium Repohttps://github.com/chromium/chromium 🔥 🚀I think uvbook might be quite out of date so don't expect all the code samples to work. At least it was very out of date last time I has a proper look at it, maybe someone's done some work on it recently?
There's also a neat workshopper for libuv called learnuv: https://github.com/thlorenz/learnuv and it comes with a short gitbook: http://thlorenz.com/learnuv/book/
Fishrock's talk is far better, but my talk about getting involved with Node has more Muppets. So there's that. https://www.youtube.com/watch?v=1F8F-EbdX40
:O :O :O
There are some big topics, V8 and libuv. Maybe somebody can provide some big pictures about the whole node.js architecture to lead the newbies get in.
I agree it would be useful to have some of this, but I wouldn't worry to much about not knowing all the details. I'm on the core technical committee and I definitely don't claim to know all the details either! :)
I'm happy to answer questions on node.js / libuv / V8 for anyone doing a write-up.
I'm happy to answer questions on node.js / libuv / V8 for anyone doing a write-up.
@bnoordhuis if you haven't already, would you PTAL at my pull request regarding the event loop and provide any feedback that might be helpful :) #4936
+1 @bnoordhuis
I'm happy to answer questions on node.js / libuv / V8 for anyone doing a write-up.
What got me confused when starting to work with node internals was the JS/native interface (HandleWrap/_handle) and how ownership works out between the two. Not sure if there are docs covering that topic already..?
Since there is much more documentation and examples for writing native addons for Node, perhaps that's the best way to enter into this kind of work, have a look at the addons docs, examples and what's out there in the ecosystem. That might give you a better understanding of what's going on between Node's C++ and JS.
- http://nodejs.org/api/addons.html
- https://github.com/nodejs/node-addon-examples
- https://github.com/nodejs/nan has some pretty extensive documentation from a NAN perspective but that should connect well to Node internals if you work back from there, follow the links into the sub-pages there, including ObjectWrap. There are also some links to the V8 embedders guide and other V8 docs.
Look like this is answered!
If I want to hack node.js internal, how can I start it ?
Are there any internal developer documents ? or about some node.js architecture documents ?
Thanks