16a0e5af32
## What? - Rendering `next info` output as code in the bug template - Removed the "Feature Request" issue template, in favor of a more granular discussion template - Added a minimal template for Help discussions ## Why? The main part of this PR is the new Feature Request template. Anyone can propose a change to Next.js. However adding new features often requires community discussions - whether to align expectations, understand the consequences (eg.: backward compatibility/lifetime of a feature), to look at and understand historical reasons for the current behavior or lack of the feature -, which [GitHub discussions](https://github.com/vercel/next.js/discussions) is more suited for than issues. ## How? - Utilizing the new discussion templates https://docs.github.com/en/discussions/managing-discussions-for-your-community/creating-discussion-category-forms - Adding a link to the [new issue](https://github.com/vercel/next.js/issues/new/choose) view to make it easier to discover [Slack thread](https://vercel.slack.com/archives/C04DUD7EB1B/p1670874727319809) Closes NEXT-742 ---------
1.6 KiB
1.6 KiB
Adding a new feature
Anyone can propose a change to Next.js. However, adding new features often requires community discussions before proceeding with the implementation.
Therefore, before opening a PR, you should use the Feature Request discussion template and collect feedback.
Why use a discussion?
The discussion's goal is to achieve the following:
- Verify the validity of the feature request: The community can upvote discussions. Highly upvoted feature requests are more likely to be considered.
- Understanding the consequences: Any feature added to Next.js is likely to be around for a while and has to be maintained. This means that a new feature has to cover many use cases, needs to consider how it affects the ecosystem, and so on.
- Looking at and understanding historical reasons for the current behavior or lack of the feature: There might be a reason why a feature does not exist, or why the current implementation is in a certain way. There must be solid reasoning to change this, as the feature needs to be maintained even after it is added. (See 2.). Next.js has a strong policy on not breaking features, so any new feature has to be added in a way that makes it possible to incrementally adopt it.
Examples
The Next.js team uses RFCs (Request For Comment), which you can find in this discussion category. Reading through these, you can get a better understanding of what is expected to be included in a good feature request.