---
title: "PHP + Node: The odd couple of backend?"
publication: "Node Weekly"
issue: 580
published_at: "2025-06-03"
canonical_url: "https://nodeweekly.com/issues/580"
---

Plus bringing Zig into Node, too. |        

#​580 — June 3, 2025 

[Read on the Web](https://nodeweekly.com/issues/580)  

Together with [![Tonkotsu logo\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_1280,h_313/e_make_transparent/co_white,e_outline:5/c4v6bk3uzcf36sutppl2.jpg)](https://www.tonkotsu.ai)  

![Node.js Weekly](https://res.cloudinary.com/cpress/image/upload/v1653576619/lgfqinzbdqttwmhvljxb.png) 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/iyy6abwhatt8agpa4dva.jpg)](https://blog.platformatic.dev/seamlessly-blend-php-with-nodejs)  

[php-node: A New Way to Bring PHP and Node Together](https://blog.platformatic.dev/seamlessly-blend-php-with-nodejs) — I bet some readers have strong feelings about the idea of mixing PHP and Node.js, but this is a neat project. [php-node](https://github.com/platformatic/php-node) is a native module for Node that enables the running of PHP apps within the Node environment. Why? For migrating legacy apps, building hybrid PHP/JS apps, or Node apps that simply need to call out to PHP for some reason (WordPress, maybe, as we see in this post). 

Matteo Collina et al.   [![\](https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/999f91d4.jpg)](https://www.tonkotsu.ai) 

[🍜 Tonkotsu Makes You the Tech Lead for a Team of Agents](https://www.tonkotsu.ai) — Tonkotsu helps plan your project and break tasks down. You choose which coding tasks to delegate to Tonkotsu - it can do multiple tasks in parallel. You're the tech lead and approver for Tonkotsu's work. [Join our free early access program to try](https://www.tonkotsu.ai). 

Tonkotsu sponsor   

**IN BRIEF:** 

- Joyee Cheung has shared her slides on a recent talk [about bridging CommonJS and ESM in Node.](https://github.com/joyeecheung/talks/blob/master/webhackfest_2025/bridging-commonjs-and-esm-in-nodejs.pdf)
- [The OpenJS Foundation is now a CVE Numbering Authority (CNA)](https://socket.dev/blog/openjs-foundation-is-now-a-cna) for over 40 popular JavaScript projects it hosts, including ESLint, Express, and Electron.
- [SQLite-JS](https://github.com/sqliteai/sqlite-js) is an interesting SQLite extension that adds the ability to write custom SQLite functions using JavaScript.
- [DigitalOcean shows off its new Node-powered MCP server](https://www.digitalocean.com/community/tutorials/control-apps-using-mcp-server) which lets you manage DO hosted apps from AI agents / Claude, etc.   

[Implement AI Safeguards with Node.js and Llama Stack](https://developers.redhat.com/articles/2025/05/28/implement-ai-safeguards-nodejs-and-llama-stack) — [Llama Stack](https://developers.redhat.com/articles/2025/04/02/practical-guide-llama-stack-nodejs-developers) is Meta’s framework for building AI apps in Node, Python, Swift or Kotlin. 

Michael Dawson (Red Hat)   

📄 [Managing Feature Flags in Express with Trunker](https://blog.migliorelli.dev/posts/managing-feature-flags-in-express-js-with-trunker) – [Trunker](https://github.com/migliorelli/trunker) is middleware for Express for implementing feature flags. Miguel Migliorelli 

📄 [Write More Reliable JavaScript with Optional Chaining](https://allthingssmitty.com/2025/06/02/write-more-reliable-javascript-with-optional-chaining/) – It `might?.be?.a?.good?.idea` Matt Smith 

📄 [Building a Linux Electron App](https://www.dolthub.com/blog/2025-05-29-building-a-linux-electron-app/) – Electron is cross-platform, but there are still platform specific quirks to be aware of. Liu Liu (DoltHub) 

📄 [Production-Grade Logging in Node.js with Pino](https://www.dash0.com/guides/logging-in-node-js-with-pino) Ayooluwa Isaiah (Dash0)    

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/vndetmkzebjpznxbhjqj.jpg)](https://github.com/ranyitz/qnm)  

[qnm: A CLI Tool to Look Into `node_modules`](https://github.com/ranyitz/qnm) — If you’ve ever been overwhelmed by what’s in `node_modules`, this tool lets you dig around with some guidance as to what is what. You can use fuzzy search to find specific things as well as see which modules are using the most space (you can try it right now with `npx qnm doctor`). 

Ran Yitzhaki   

[Zigar: Write and Use Zig Code in Node and Electron Projects](https://github.com/chung-leong/zigar) — [Zig](https://ziglang.org/) is a systems language that’s essentially a superset of C/C++ ([Bun](https://bun.sh/) is written in it). _Zigar_ makes it possible to write and use C/C++/Zig code more easily within JavaScript projects. 

Chung Leong   

🤖 [OpenAI Client 5.x: Use OpenAI's Models from Node](https://github.com/openai/openai-node) — The latest version of OpenAI’s official JavaScript library for its various APIs now has support for all its latest models and the Realtime API ([v5.0 changelog](https://github.com/openai/openai-node/releases/tag/v5.0.0)). It also supports Deno and Bun. 

OpenAI   

[Opossum 8.5: A Circuit Breaker for Async Functions](https://nodeshift.dev/opossum/) — You can do things like trigger a failure after a certain timeout, fail entirely if a certain error threshold is reached, etc. [GitHub repo.](https://github.com/nodeshift/opossum) 

Red Hat   

🏖️ [Beachpatrol: A CLI Tool to Automate Your Everyday Web Browser](https://github.com/sebastiancarlos/beachpatrol) — A higher level way to use Playwright on macOS or Linux to control a regular non-headless browser instance. It’s essentially an approach where you still want a visible browser you can use in a normal way but with added automation possibilities. 

Sebastian Carlos   

- [ESLint v9.28.0](https://eslint.org/blog/2025/05/eslint-v9.28.0-released/) – The popular linter/static analysis tool adds even more TypeScript syntax support to core rules.
- [Express Zod API 24.0](https://github.com/RobinTail/express-zod-api/releases/tag/v24.0.0) – Quick schema validation and custom middleware. Supports the new [Zod 4.](https://zod.dev/v4)
- [Bun v1.2.15](https://bun.sh/blog/bun-v1.2.15) – Gains a `bun audit` tool for performing security audits of project dependencies.
- 📄 [pdf2html 4.0](https://github.com/shebinleo/pdf2html) – Convert PDFs to HTML using Apache Tika and PDFBox (so needs a JRE present).
- [Ink 6.0](https://github.com/vadimdemedes/ink) – Use React to build CLI apps. Now supports React 19 and requires Node.js 20.
- [Ts.ED 8.11](https://github.com/tsedio/tsed) – Node + TypeScript framework on top of Express.
- [Tinypool 1.1](https://github.com/tinylibs/tinypool) – Small, minimal Node worker thread pool implementation.       

📰 Classifieds   

[Bit Cloud](https://bit.cloud/?utm_source=NodeWeekly&utm_id=127&utm_medium=newsletter%20) - AI Software Composition Platform. Compose high-quality professional software with AI for simplicity, speed and control. Build for Developers. 

--- 

🤝 Run legacy PHP & modern Node in one pipeline for a new, modern, and seamless developer experience. [Try it now!](https://blog.platformatic.dev/seamlessly-blend-php-with-nodejs)    

📢 Elsewhere in JavaScript  

A roundup of some other interesting stories in the broader JavaScript landscape, in case you've missed them: 

- [TC39's 108th meeting](https://github.com/tc39/agendas/blob/main/2025/05.md) took place last week with many proposals advanced, such as [Seeded Pseudo-Random Numbers](https://github.com/tc39/proposal-seeded-random) moving to stage 2 and [`Error.isError`](https://github.com/tc39/proposal-is-error) moving to stage 4.
- [The annual Stack Overflow Developer Survey is back](https://stackoverflow.blog/2025/05/29/not-just-a-vibe-the-stack-overflow-developer-survey-is-really-here/) for a fifteenth year.
- [A look at the upcoming Temporal API](https://waspdev.com/articles/2025-05-24/temporal-api) and the problems it will help solve in JavaScript when it comes to working with dates and times.
- Sean Gillespie ponders [the ingredients of a productive monorepo.](https://blog.swgillespie.me/posts/monorepo-ingredients/)    

**Got a link for us?** Reply and tell us. We can't include everything but we'll look at anything you send. _Thanks!_ 

--- 

**Sponsorship:** Email `[kristina@cooperpress.com](mailto:kristina@cooperpress.com)` for details. 

--- 

Published by Cooper Press Ltd.
Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

[Cancel your subscription](https://nodeweekly.com/leave/*|UID|*) or [change your address](https://nodeweekly.com/edit_subscription/*|UID|*).
