getting-started icon indicating copy to clipboard operation
getting-started copied to clipboard

Getting started in Node.js!

Getting Started in Node.js MIT Licensed

Find out how you can get started in Node.js and where you can find answers to questions of any kind.

Node.js green hexagon

Whether you're new to programming, new to JavaScript, moving to Node.js from another language, or interested in contributing to Node.js, the aim of this repository is to get you on your feet.


Node.js: General

These are free, high-quality resources that anyone should be able to pick up to start learning Node.js right away.

  • Node.js Getting Started Guide
    • One of the most basic projects you can build with Node.js.
  • NodeSchool Workshoppers
    • NodeSchool is an unofficial community group that has built out various workshops that you can walk through yourself.
    • Many workshoppers can also be run online via the NodeSchool organization's workshoppers on Glitch
  • Have an additional resource? Send a Pull Request on this file!

Node.js: Node.js and {{ something else }}

At this point, very few people use just Node.js. As such, it's important to also learn how Node.js works with other tools in our ecosystem. These resources aim to help you get up and running with Node.js and other technologies.

Node.js: Contributing

If you're looking to contribute directly to Node.js, these guides will help move you in the right direction.

Good First Issues in the Node.js Organization

All repositories in the Node.js GitHub organization have the "good first issue" label as a part of the repository. Some are more active than others, and have more opportunities for tackling good first issues and getting started with the project.

Here's a set of repositories within the project that have multiple good first issues open:

  • nodejs/node: the core project. There are many good first issues here. The easiest ones often get snatched up quickly, but we try our best to ensure there are always some.
  • nodejs/ our effort to build a new website based off of React using Gatsby.js.
  • nodejs/citgm: Canary in the Gold Mine, or CITGM, is a tool Node.js uses to test changes to see if they'll impact the most used modules in the ecosystem. It's a highly impactful project and one that's a great place to contribute to.
  • node/community-committee: The Community Committee is a top-level committee in Node.js that foucses on outward-facing projects. Various aspects of the committee and its initiatives are incredibly beginner-friendly.

Node.js: Finding Help

If you're looking for help while writing Node.js, ask questions in the nodejs/help repository. No question is too small!

When looking for help, these are a few places you may be able to find an answer:

  • The Node.js Website
    • This has a lot of meta information about Node.js, downloads, and metrics.
  • The nodejs/help repository.
    • Here, you can directly ask questions about Node.js. Everyone who is responding is a volunteer, so please be patient with us ❤️
  • Open and Closed issues in the core nodejs/node repository
    • With over 10,000 total issues, there is a chance you may be able to find the information you're looking for!
  • Questions tagged with node.js on StackOverflow
    • There are over 250,000 questions on StackOverflow tagged with Node.js – many of the answers are useful but there are also some that are out of date. Be sure to double check the age of the answer and don't get frustrated if the answers aren't perfect!
  • Node.js Slack Community

Contributing to the nodejs/getting-started Repository

Want to write a document?

Please contribute! Check out our existing documents in this repository to improve existing resources, and look at issues to discover resources people would love to learn from but don't yet exist. To get started, you have to fork this repo to your own GitHub account first.

Please try to write documentation that prioritizes the LTS version. Keeping work updated is ideal but understandably tough.

If you want to submit a new feature or a bugfix, the best way is to create the changes in a separate branch, e.g.: git checkout -b feature/mycoolfeature. This will make it easier for you to submit a pull request and get your contribution merged.

Getting Started Collaborators

The Getting Started repository is a joint responsibility of the Node.js TSC and Node.js Community Committee, as defined in nodejs/admin.