Next.js
Status: not supported yet. Keep Next.js on Node.js.
What we tried
A minimal App Router project with Next.js 15.5.4 and React 19.1:
3va install --allow-net=registry.npmjs.org
3va run node_modules/next/dist/bin/next \
--allow-read --allow-write --allow-env --allow-net --allow-child-process --allow-ffi \
-- build ▲ Next.js 15.5.4
> Build error occurred
TypeError: _promises.default.opendir is not a function
at getFilesInDir (…/next/dist/lib/get-files-in-dir.js:17:38)We granted every capability, so this isn’t a permissions problem:
fs.promises.opendiris missing in 3va’sfsmodule. That’s the first blocker. We don’t know yet what comes after it.- The install itself is fine. It passes the scanner, and Next’s native
compiler (
@next/swc-linux-x64-*) arrives as a platform-specific optional dependency.
What you can move today
- Pure logic in
lib/, such as validation, formatting or API clients: test it with3va test. - A separate API server that the Next app calls: run it with
3va start. - Scripts (seeders, migrations, cron jobs): run them with
3va run, with the exact permissions each one needs.
Things to keep in mind
- Next.js relies on many Node APIs (worker threads,
fs.promises,AsyncLocalStorage) and on SWC. Treat it as the last part of a stack to move, after the backend and tooling.