{"id":13527717,"url":"https://github.com/nodejs/build","last_synced_at":"2025-12-16T14:34:14.451Z","repository":{"id":37405444,"uuid":"22736886","full_name":"nodejs/build","owner":"nodejs","description":"Better build and test infra for Node.","archived":false,"fork":false,"pushed_at":"2025-04-11T03:01:42.000Z","size":14323,"stargazers_count":520,"open_issues_count":112,"forks_count":169,"subscribers_count":64,"default_branch":"main","last_synced_at":"2025-04-14T05:19:14.725Z","etag":null,"topics":["node","nodejs"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nodejs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":"GOVERNANCE.md","roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-08-07T21:20:06.000Z","updated_at":"2025-04-11T03:01:47.000Z","dependencies_parsed_at":"2022-07-12T23:10:30.921Z","dependency_job_id":"e855ca76-f4ee-45e5-8f8d-3bd51bdd36a3","html_url":"https://github.com/nodejs/build","commit_stats":{"total_commits":1648,"total_committers":88,"mean_commits":"18.727272727272727","dds":0.7621359223300971,"last_synced_commit":"117f8bf9e78509ddf5bfb4f429c6b048282df424"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodejs%2Fbuild","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodejs%2Fbuild/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodejs%2Fbuild/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodejs%2Fbuild/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nodejs","download_url":"https://codeload.github.com/nodejs/build/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248824716,"owners_count":21167347,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["node","nodejs"],"created_at":"2024-08-01T06:01:58.340Z","updated_at":"2025-12-16T14:34:14.443Z","avatar_url":"https://github.com/nodejs.png","language":"Shell","readme":"![ARM Cluster](./static-assets/ns-arm-cluster.jpg)\n\u003cp align=\"center\"\u003e\u003ci\u003e\u003csmall\u003eSome of the Node.js Build ARM resources: 3\ngenerations of Raspberry Pi and other ARMv7 \u0026 ARM64 hardware\u003c/small\u003e\u003c/i\u003e\u003c/p\u003e\n\n# Node.js Build Working Group\n\nChat with us on [Slack][1].\n\n## Purpose\n\nThe Node.js Build Working Group maintains and controls infrastructure used for\ncontinuous integration (CI), releases, benchmarks, web hosting\n(of [nodejs.org][node] and other Node.js web properties) and more.\n\nOur mission is to provide Node.js Project and libuv with solid computing\ninfrastructure in order to improve the quality of the software itself by\ntargeting correctness, speed and compatibility and to ensure streamlined\ndelivery of binaries and source code to end-users.\n\nThis repository contains information used to set up and maintain the various\npieces of Node.js Project infrastructure managed by the Build Working Group.\nIt is intended to be open and transparent, if you see any relevant information\nmissing please open an issue. If you are interested in joining, please read\n[GOVERNANCE.md][] to understand the process and reasoning we use for granting access\nto the resources we manage.\n\n## Build WG Members\n\n\u003c!-- ncu-team-sync.team(nodejs/build) --\u003e\n\n* [@abmusse](https://github.com/abmusse) - Abdirahim Musse\n* [@AshCripps](https://github.com/AshCripps) - Ash Cripps\n* [@joaocgreis](https://github.com/joaocgreis) - João Reis\n* [@joyeecheung](https://github.com/joyeecheung) - Joyee Cheung\n\n* [@MoLow](https://github.com/MoLow) - Moshe Atlow\n* [@node-forward-build](https://github.com/node-forward-build) - node-forward build infrastructure\n* [@richardlau](https://github.com/richardlau) - Richard Lau\n* [@rvagg](https://github.com/rvagg) - Rod Vagg\n* [@ryanaslett](https://github.com/ryanaslett) - Ryan Aslett\n* [@StefanStojanovic](https://github.com/StefanStojanovic) - Stefan Stojanovic\n* [@sxa](https://github.com/sxa) - Stewart X Addison\n* [@targos](https://github.com/targos) - Michaël Zasso\n* [@UlisesGascon](https://github.com/UlisesGascon) - Ulises Gascón\n\n\u003c!-- ncu-team-sync end --\u003e\n\nAbove list is manually synced with the [gpg member list](https://github.com/nodejs-private/secrets/tree/master/build/test/.gpg).\n\n### Infra Admins\n\n\u003c!-- ncu-team-sync.team(nodejs/build-infra) --\u003e\n\n* [@joaocgreis](https://github.com/joaocgreis) - João Reis\n* [@MoLow](https://github.com/MoLow) - Moshe Atlow\n* [@richardlau](https://github.com/richardlau) - Richard Lau\n* [@rvagg](https://github.com/rvagg) - Rod Vagg\n* [@ryanaslett](https://github.com/ryanaslett) - Ryan Aslett\n* [@StefanStojanovic](https://github.com/StefanStojanovic) - Stefan Stojanovic\n* [@sxa](https://github.com/sxa) - Stewart X Addison\n* [@targos](https://github.com/targos) - Michaël Zasso\n* [@UlisesGascon](https://github.com/UlisesGascon) - Ulises Gascón\n\n\u003c!-- ncu-team-sync end --\u003e\n\n### Jenkins Admins\n\nAdmin access to https://ci.nodejs.org/.\n\n\u003c!-- ncu-team-sync.team(nodejs/jenkins-admins) --\u003e\n\n* [@AshCripps](https://github.com/AshCripps) - Ash Cripps\n* [@joaocgreis](https://github.com/joaocgreis) - João Reis\n* [@joyeecheung](https://github.com/joyeecheung) - Joyee Cheung\n* [@MoLow](https://github.com/MoLow) - Moshe Atlow\n* [@node-forward-build](https://github.com/node-forward-build) - node-forward build infrastructure\n* [@richardlau](https://github.com/richardlau) - Richard Lau\n* [@rvagg](https://github.com/rvagg) - Rod Vagg\n* [@ryanaslett](https://github.com/ryanaslett) - Ryan Aslett\n* [@StefanStojanovic](https://github.com/StefanStojanovic) - Stefan Stojanovic\n* [@sxa](https://github.com/sxa) - Stewart X Addison\n* [@targos](https://github.com/targos) - Michaël Zasso\n* [@UlisesGascon](https://github.com/UlisesGascon) - Ulises Gascón\n\n\u003c!-- ncu-team-sync end --\u003e\n\n### Release Admins\n\nAccess to [release secrets][].\n\n- [@AshCripps](https://github.com/AshCripps) - Ash Cripps\n- [@joaocgreis](https://github.com/joaocgreis) - João Reis\n- [@MoLow](https://github.com/MoLow) - Moshe Atlow\n- [@richardlau](https://github.com/richardlau) - Richard Lau\n- [@rvagg](https://github.com/rvagg) - Rod Vagg\n- [@ryanaslett](https://github.com/ryanaslett) - Ryan Aslett\n- [@StefanStojanovic](https://github.com/StefanStojanovic) - Stefan Stojanovic\n- [@sxa](https://github.com/sxa) - Stewart X Addison\n- [@targos](https://github.com/targos) - Michaël Zasso\n- [@UlisesGascon](https://github.com/UlisesGascon) - Ulises Gascón\n\nAbove list is manually synced with the [gpg member list](https://github.com/nodejs-private/secrets/tree/master/build/release/.gpg).\n\n### Release Jenkins Admins\n\nAdmin access to https://ci-release.nodejs.org/.\n\n\u003c!-- ncu-team-sync.team(nodejs/jenkins-release-admins) --\u003e\n\n* [@AshCripps](https://github.com/AshCripps) - Ash Cripps\n* [@joaocgreis](https://github.com/joaocgreis) - João Reis\n* [@MoLow](https://github.com/MoLow) - Moshe Atlow\n* [@node-forward-build](https://github.com/node-forward-build) - node-forward build infrastructure\n* [@richardlau](https://github.com/richardlau) - Richard Lau\n* [@rvagg](https://github.com/rvagg) - Rod Vagg\n* [@ryanaslett](https://github.com/ryanaslett) - Ryan Aslett\n* [@StefanStojanovic](https://github.com/StefanStojanovic) - Stefan Stojanovic\n* [@sxa](https://github.com/sxa) - Stewart X Addison\n* [@targos](https://github.com/targos) - Michaël Zasso\n* [@UlisesGascon](https://github.com/UlisesGascon) - Ulises Gascón\n\n\u003c!-- ncu-team-sync end --\u003e\n\n### GitHub Bot Admins\n\n\u003c!-- ncu-team-sync.team(nodejs/github-bot) --\u003e\n\n* [@jbergstroem](https://github.com/jbergstroem) - Johan Bergström\n* [@joyeecheung](https://github.com/joyeecheung) - Joyee Cheung\n* [@phillipj](https://github.com/phillipj) - Phillip Johnsen\n* [@Starefossen](https://github.com/Starefossen) - Hans Kristian Flaatten\n\n\u003c!-- ncu-team-sync end --\u003e\n\nIf you are interested in joining the Build WG, or for more information about\naccesses and team roles see [GOVERNANCE.md][].\n\n### Emeriti\n\n- [@addaleax](https://github.com/addaleax) - Anna Henningsen\n- [@anonrig](https://github.com/anonrig) - Yagiz Nizipli\n- [@bnoordhuis](https://github.com/bnoordhuis) - Ben Noordhuis\n- [@gibfahn](https://github.com/gibfahn) - Gibson Fahnestock\n- [@gireeshpunathil](https://github.com/gireeshpunathil) - Gireesh Punathil\n- [@jbergstroem](https://github.com/jbergstroem) - Johan Bergström\n- [@LucaLanziani](https://github.com/LucaLanziani) - Luca Lanziani\n- [@maclover7](https://github.com/maclover7) - Jon Moss\n- [@mhdawson](https://github.com/mhdawson) - Michael Dawson\n- [@mmarchini](https://github.com/mmarchini) - mary marchini\n- [@MylesBorins](https://github.com/MylesBorins) - Myles Borins\n- [@phillipj](https://github.com/phillipj) - Phillip Johnsen\n- [@refack](https://github.com/refack) - Refael Ackermann (רפאל פלחי)\n- [@sam-github](https://github.com/sam-github) - Sam Roberts\n- [@Starefossen](https://github.com/Starefossen) - Hans Kristian Flaatten\n- [@Trott](https://github.com/Trott) - Rich Trott\n\n## Infrastructure Providers\n\nThe Node.js Project is proud to receive contributions from many companies,\nboth in the form of monetary contributions in exchange for membership or\nin-kind contributions for required resources. The Build Working Group\ncollaborates with the following companies who contribute various kinds of\ncloud and physical hardware to the Node.js project.\n\n\n### Tier-1 Providers\n\nThe Node.js Project's tier-1 infrastructure providers contribute the largest\nshare of infrastructure to the Node.js project. Without these companies,\nthe project would not be able to provide the quality, speed and availability of\ntest coverage that it does today.\n\n![Tier 1 Infrastructure Providers](./static-assets/tier-1-providers.png)\n\n- **[DigitalOcean][2]**: a popular cloud hosting service, provides a\n  significant amount of the resources required to run the Node.js project\n  including key CI infrastructure/servers required to host [nodejs.org][node].\n\n- **[Rackspace][3]**: a popular managed cloud company, provides significant\n  resources used to power much of the Node.js project's CI system, including\n  key Windows compilation servers, along with additional services such as\n  [Mailgun][5] for some [nodejs.org and iojs.org email][6] services.\n\n\n### Tier-2 Providers\n\nThe Node.js Project's tier-2 infrastructure providers fill essential gaps\nin architecture and operating system variations and shoulder some of the burden\nfrom the tier-1 providers, contributing to availability\nand speed in our CI system.\n\n![Tier 2 Infrastructure Providers](./static-assets/tier-2-providers.png)\n\n- **[Microsoft][7]**: Provides Windows-related test infrastructure\n  on [Azure][8] for the Node.js CI system.\n\n- **[Joyent][9]**: A private cloud infrastructure company, provides SmartOS\n  and other test/build resources for the Node.js CI system, resources for\n  backup of our critical infrastructure, redundancy for nodejs.org and or\n  [unencrypted.nodejs.org](http://unencrypted.nodejs.org) mirror.\n\n- **[IBM][10]**:\n  - [IBM Cloud][11] provides hardware for testing and benchmarking for the\n    Node.js project's CI system.\n  - Via the [Oregon State University Open Source Lab][12], provides\n    PPC-based test and build infrastructure.\n  - Via the [IBM LinuxOne(TM) Community Cloud][13], provides linuxOne\n    based test and build infrastructure.\n\n- **[Scaleway][15]**: Scalable cloud platform designed for developers \u0026\n  growing companies, contributes key ARMv7 hardware for test and release\n  builds for the Node.js CI system.\n\n- **[Cloudflare][16]**: CDN and internet traffic management\n  provider, are responsible for providing fast and always-available\n  access to [nodejs.org][node].\n\n- **[ARM][17]**: Semiconductor intellectual property supplier, have donated\n  ARMv8 / ARM64 hardware used by the Node.js CI system for build and testing\n  Node.js.\n\n- **[Intel][22]**: \"The world leader in silicon innovation,\" contributes\n  hardware used for benchmarking in the Node.js project's CI system to advance\n  and accelerate Node.js performance.\n\n- **[MacStadium][23]**: Managed hosting provider for Mac. Provides Mac\n  hardware used for testing in the Node.js project's CI system.\n\n- **[Packet][24]**: Bare metal cloud for developers. Through their\n  [Works on Arm](https://www.worksonarm.com/), Packet provides ARM64 build\n  infrastructure and additional resources for powering our CI system.\n\n### Community Donations\n\nFrom time to time, the Node.js Build Working group calls for, and receives\ndonations of hardware in order to expand the breadth of the build and test\ninfrastructure it maintains.\n\nThe Node.js Project would like to thank the following individuals and\ncompanies that have donated miscellaneous hardware:\n\n- [NodeSource][ns] for a Raspberry Pi B, a Raspberry Pi B+,\n  a Raspberry Pi 2 B and an ODROID-XU3\n- Andrew Chilton [@chilts](https://github.com/chilts) for a Raspberry Pi B\n- Julian Duque [@julianduque](https://github.com/julianduque)\n  for a Beaglebone Black\n- Andi Neck [@andineck](https://github.com/andineck)\n  for 2 x Raspberry Pi B+\n- Bryan English [@bengl](https://github.com/bengl) for 2 x Raspberry Pi B+\n- Continuation Labs [@continuationlabs](https://github.com/continuationlabs)\n  for a Raspberry Pi B+\n- C J Silverio [@ceejbot](https://github.com/ceejbot) for a Raspberry Pi B+\n  and a Raspberry Pi 2 B\n- [miniNodes][18] for a Raspberry Pi B+ and\n  a Raspberry Pi 2 B\n- Simeon Vincent [@svincent](https://github.com/svincent) for\n  3 x Raspberry Pi 2 B\n- Joey van Dijk [@joeyvandijk](https://github.com/joeyvandijk) and\n  [Techtribe][19] for 2 x Raspberry Pi 2 B and an ODROID-U3+\n- Matteo Collina [@mcollina](https://github.com/mcollina) for a Raspberry Pi 2 B\n- Sam Thompson [@sambthompson](https://github.com/sambthompson) for a\n  Raspberry Pi 2 B\n- Louis Center [@louiscntr](https://github.com/louiscntr) for a Raspberry Pi 2 B\n- Dav Glass [@davglass](https://github.com/davglass/) for 2 x ODROID-XU3, Raspberry Pi 1 B+, Raspberry Pi 3, power, networking and other miscellaneous equipment\n- [Tessel][20] for a Tessel 2\n- KahWee Teng [@kahwee](https://github.com/kahwee) for a Raspberry Pi 3\n- Chinmay Pendharkar [@notthetup](https://github.com/notthetup) and Sayanee Basu [@sayanee](https://github.com/sayanee) for a Raspberry Pi 3\n- Michele Capra [@piccoloaiutante](https://github.com/piccoloaiutante) for a Raspberry Pi 3\n- [Pivotal Agency][pivotal] for two Raspberry Pi 3's\n- [SecuroGroup][securo] for two Raspberry Pi 1 B+'s and two Raspberry Pi 3's\n- William Kapke [@williamkapke](https://github.com/williamkapke) for three Raspberry Pi 3's and networking equipment\n- Jonathan Barnett [@indieisaconcept](https://github.com/indieisaconcept) for a Raspberry Pi B+\n- James Snell [@jasnell](https://github.com/jasnell) for a Raspberry Pi 2\n- Michael Dawson [@mhdawson](https://github.com/mhdawson) for a Raspberry Pi 1 B+\n- Chris Lea [@chrislea](https://github.com/chrislea) for a Raspberry Pi 1 B+\n\n\nIf you would like to donate hardware to the Node.js Project, please reach\nout to the Build Working Group, via the [#nodejs-build channel on the OpenJS Foundation Slack\ninstance][1] or contact [Rod Vagg](mailto:rod@vagg.org) directly. The Build\nWorking Group reserves the right to choose what hardware is actively used\nand how it is used, donating hardware does not guarantee its use within the\ntesting infrastructure as there are many other factors that must be\nconsidered.  Some donated hardware, while not used actively in the CI\ninfrastructure, is used from time to time for R\u0026D purposes by the project.\n\n\n## CI Software\n\nBuild and test orchestration is performed by [Jenkins][21].\n\n- A summary of build and test jobs can be found at: \u003chttps://ci.nodejs.org\u003e\n- A listing of connected servers for testing, building and benchmarking\n  can be found at: \u003chttps://ci.nodejs.org/computer/\u003e\n- Monitoring with Grafana: \u003chttps://grafana.nodejs.org/\u003e\n\nThe Build WG will keep build configuration required for a release line for 6\nmonths after the release goes End-of-Life, in case further build or test runs\nare required. After that the configuration will be removed.\n\n\n[1]:    https://openjs-foundation.slack.com/archives/C03BJP63CH0\n[2]:    https://digitalocean.com/\n[3]:    https://www.rackspace.com/\n[5]:    https://www.mailgun.com/\n[6]:    https://github.com/nodejs/email\n[7]:    https://www.microsoft.com/\n[8]:    https://azure.microsoft.com\n[9]:    https://www.joyent.com/\n[10]:   https://www.ibm.com/\n[11]:   https://www.ibm.com/cloud\n[12]:   https://osuosl.org/services/powerdev\n[13]:   https://developer.ibm.com/linuxone/\n[15]:   https://www.scaleway.com/\n[16]:   https://www.cloudflare.com/\n[17]:   https://www.arm.com/\n[18]:   https://www.mininodes.com/\n[19]:   http://techtribe.nl\n[20]:   https://tessel.io/\n[21]:   https://jenkins.io/\n[22]:   https://www.intel.com/\n[23]:   https://www.macstadium.com/\n[24]:   https://www.packet.net/\n[resources.md]: ./doc/resources.md\n[GOVERNANCE.md]: ./GOVERNANCE.md\n[node]: https://nodejs.org/\n[ns]:   https://nodesource.com/\n[pivotal]: https://www.pivotalagency.com.au/\n[release secrets]: https://github.com/nodejs-private/secrets/tree/master/build/release/\n[securo]: http://securogroup.com/\n","funding_links":[],"categories":["Jinja","Node.js Learning Resources","nodejs","Resources"],"sub_categories":["In-memory data grids","Interfaces","Objective-C Tools, Libraries, and Frameworks","Mesh networks","JavaScript Libraries for Machine Learning"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnodejs%2Fbuild","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnodejs%2Fbuild","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnodejs%2Fbuild/lists"}