Before starting, make sure you have completed installation and can run the development server locally.
Create a new branch
Create a branch with a descriptive name for your change:Use a name that reflects what you are changing, for example
fix/navigation-accessibility or feat/download-stats-component.Make your changes
Make the changes you want to contribute. A few pointers:
- For repository structure guidance, refer to the technologies documentation.
- For adding new pages, follow the adding pages guide.
- For building UI components, follow the creating components guide.
Format and lint your code
Before committing, run the formatter and linter to ensure your code meets the project’s standards:This single command runs Prettier, ESLint fixes, and all other formatting checks across the entire codebase.
Run the tests
Run the test suite to make sure your changes do not break anything:If you are adding a new feature or fixing a bug, include tests for your changes. Contributors are responsible for fixing any tests that fail.
Commit your changes
Stage and commit your changes. This project follows the Conventional Commits specification:Commit message rules:
- Must include a type prefix (e.g.
feat:,fix:,docs:,chore:) - Must be written in lowercase, except for proper nouns
- Must not end with a period
.
Open a pull request
- Go to your fork on GitHub.
- Click New Pull Request.
- Select your branch and compare it against
nodejs/nodejs.org’smainbranch. - Fill in the pull request description, explaining what changed and why.
- Submit the pull request.
Pull requests must remain open for at least 48 hours (72 hours if opened on a weekend) before they can be merged. See the pull request policy for full details.
Getting help
If you get stuck at any point:- Open a Discussion to ask a question.
- Check existing Issues for known problems.
- Review the Code of Conduct.