mirror of
https://github.com/nodejs/node.git
synced 2025-08-15 13:48:44 +02:00
doc: make contributing info more discoverable
There are been several discussions in recent PRs about the docs related to contributing not being very discoverable. Move these docs from doc/guides/ to doc/contributing. Signed-off-by: Michael Dawson <mdawson@devrus.com> PR-URL: https://github.com/nodejs/node/pull/41408 Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Derek Lewis <DerekNonGeneric@inf.is> Reviewed-By: Mary Marchini <oss@mmarchini.me> Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
parent
65910c0d6c
commit
a199387f04
53 changed files with 58 additions and 60 deletions
84
doc/contributing/technical-values.md
Normal file
84
doc/contributing/technical-values.md
Normal file
|
@ -0,0 +1,84 @@
|
|||
# Technical values and their priorities
|
||||
|
||||
The project uses these technical values to establish priorities and guide
|
||||
collaboration.
|
||||
|
||||
These are the shared values as of this writing and will
|
||||
evolve. We hope they are useful to people new
|
||||
to the project in order to better understand which contributions
|
||||
will be aligned with the current direction and as thinking
|
||||
points when trading off between conflicting goals.
|
||||
|
||||
The factors influencing every discussion/decision are
|
||||
different and priority 1 does not always trump priority 2
|
||||
and so on.
|
||||
|
||||
## Values and priority level
|
||||
|
||||
* Priority 1 - Developer experience
|
||||
* Priority 2 - Stability
|
||||
* Priority 3 - Operational qualities
|
||||
* Priority 4 - Node.js maintainer experience
|
||||
* Priority 5 - Up to date technology and APIs
|
||||
|
||||
## Value descriptions
|
||||
|
||||
### 1 - Developer experience
|
||||
|
||||
We value ensuring that developers are productive and enjoy developing
|
||||
with Node.js. Some key elements of this include:
|
||||
|
||||
* Approachability (both technical and community)
|
||||
* Great documentation
|
||||
* Bundling friction-reducing APIs and components, even though
|
||||
they could be provided externally
|
||||
* Compatibility and interoperability with browsers and other JavaScript
|
||||
environments so that as much code as possible runs as is both in Node.js and
|
||||
in the other environments
|
||||
* Enabling/supporting external packages to ensure overall developer experience
|
||||
|
||||
### 2 - Stability
|
||||
|
||||
Whenever possible, we seek to ensure that working code continues to work. To
|
||||
keep the trust of developers and users, we value stability.
|
||||
Some key elements of this include:
|
||||
|
||||
* Backward compatibility
|
||||
* Stable releases on a predictable schedule
|
||||
* A strong safety net, including testing how changes
|
||||
in Node.js affect popular packages
|
||||
* Careful consideration of what goes into Long Term Support (LTS) releases
|
||||
|
||||
### 3 - Operational qualities
|
||||
|
||||
We value keeping Node.js safe, performant, and lightweight.
|
||||
We value enabling the ability to investigate and debug problems in
|
||||
development and production. Some key elements of this include:
|
||||
|
||||
* High throughput (speed)
|
||||
* Fast startup
|
||||
* Small binary size
|
||||
* Small memory footprint
|
||||
* High-quality debugging tools
|
||||
* Robust diagnostic tools (profilers, etc.)
|
||||
* Responsible security practices
|
||||
|
||||
### 4 - Node.js maintainer experience
|
||||
|
||||
We value the productivity and happiness of the Node.js maintainers.
|
||||
Some key elements of this include:
|
||||
|
||||
* Approachability of the codebase
|
||||
* Good internal documentation and guides
|
||||
* Low-friction policies and processes
|
||||
* Good CI and tooling to make maintainers productive
|
||||
|
||||
### 5 - Up to date technology and APIs
|
||||
|
||||
We value providing developers with modern APIs and technologies
|
||||
following existing standards whenever possible.
|
||||
Some key elements of this include:
|
||||
|
||||
* Participating in standards work and organizations
|
||||
* Web API compatibility
|
||||
* Supporting and exposing new technologies and standards through early adoption
|
Loading…
Add table
Add a link
Reference in a new issue