Some specific points about contributions to the framework repository.
packages/kit: Toolkit for authoring Nuxt Modules, published as
packages/nuxt: The core of Nuxt, published as
packages/schema: Cross-version Nuxt typedefs and defaults, published as
packages/test-utils: Test utilities for Nuxt, published as
packages/vite: The Vite bundler for Nuxt, published as
packages/webpack: The webpack bundler for Nuxt 3, published as
To contribute to Nuxt, you need to set up a local environment.
- Fork the
nuxt/nuxtrepository to your own GitHub account and then clone it to your local device.
- Ensure using the latest Node.js (20.x)
- Enable Corepack to have
pnpm installto Install the dependencies with pnpm:Terminal
pnpm installIf you are adding a dependency, please use
pnpm-lock.yamlfile is the source of truth for all Nuxt dependencies.
- Activate the passive development system
- Check out a branch where you can work and commit your changes:
git checkout -b my-new-branch
While working on a pull request, you will likely want to check if your changes are working correctly.
You can modify the example app in
playground/, and run:
Every new feature should have a corresponding unit test (if possible). The
test/ directory in this repository is currently a work in progress, but do your best to create a new test following the example of what's already there.
Before creating a PR or marking it as ready-to-review, ensure that all tests pass by running:
You might have noticed already that we use ESLint to enforce a coding standard.
Before committing your changes, to verify that the code style is correct, run:
pnpm lint --fix to fix most of the style changes.
If there are still errors left, you must correct them manually.
If you are adding a new feature or refactoring or changing the behavior of Nuxt in any other manner, you'll likely want to document the changes. Please include any changes to the docs in the same PR. You don't have to write documentation up on the first commit (but please do so as soon as your pull request is mature enough).
When submitting your PR, there is a simple template that you have to fill out. Please tick all appropriate "answers" in the checklists.
If you spot an area where we can improve documentation or error messages, please do open a PR - even if it's just to fix a typo!
If you spot a typo or want to rephrase a sentence, you can click on the Edit this page link located on the right aside in the Community section.
Make the change directly in the GitHub interface and open a Pull Request.
The documentation content is inside the
docs/ directory of the nuxt/nuxt repository and written in markdown.
pnpm lint:docs:fix to highlight and resolve any lint issues.
Please make sure your PR title adheres to the conventional commits guidelines.
docs: update the section about the nuxt.config.ts file