1# Technical values and priorities 2 3The project uses these technical values to establish priorities and guide 4collaboration. 5 6## Values and priority level 7 8* Priority 1 - Developer experience 9* Priority 2 - Stability 10* Priority 3 - Operational qualities 11* Priority 4 - Node.js maintainer experience 12* Priority 5 - Up to date Technology and APIs 13 14## Value descriptions 15 16### 1 - Developer experience 17We value ensuring that developers are productive and enjoy developing 18with Node.js. Some key elements of this include: 19* Approachability (both technical and community) 20* Great documentation 21* Bundling friction-reducing APIs and components, even though 22 they could be provided externally 23* Enabling/supporting external packages to ensure overall developer experience 24 25### 2 - Stability 26Whenever possible, we seek to ensure that working code continues to work. To 27keep the trust of developers and users, we value stability. 28Some key elements of this include: 29* Backward compatibility 30* Stable releases on a predictable schedule 31* A strong safety net, including testing how changes 32 in Node.js affect popular packages 33* Careful consideration of what goes into long term support (LTS) releases 34 35### 3 - Operational qualities 36We value keeping Node.js safe, performant, and lightweight. 37We value enabling the ability to investigate and debug problems in 38development and production. Some key elements of this include: 39* High throughput (speed) 40* Fast startup 41* Small binary size 42* Small memory footprint 43* High-quality debugging tools 44* Robust diagnostic tools (profilers, etc.) 45* Responsible security practices 46 47### 4 - Node.js maintainer experience 48We value the productivity and happiness of the Node.js maintainers. 49Some key elements of this include: 50* Approachability of the codebase 51* Good internal documentation and guides 52* Low-friction policies and processes 53* Good CI and tooling to make maintainers productive 54 55### 5 - Up to date Technology and APIs 56We value providing developers with modern APIs and technologies 57following existing standards whenever possible. 58Some key elements of this include: 59* Participating in standards work and organizations 60* Web API compatibility 61* Supporting and exposing new technologies and standards through early adoption 62