Generated create-weave-*-app projects do not install, build or run without manual fixes

Open
#1,257 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@txnioh is already working on this.

Since Nov 3, 2026.

  • #1261 by @txnioh — open

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
45/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
eslint, express, nextjs, node.js, three.js, typescript

Research direction

Start with the generator's package list in create-app.ts, tsdown.config.ts and template/package.json, since the missing weave-renderer-konva-base package is the first blocker on both sides. The frontend fixes live in next.config.js, the ESLint setup and the template components named in the issue; the backend fixes are in the Zod calls and the nodemon/tsc dev path. Done means npm install, npm run dev and next build (frontend) succeed on a freshly generated app, and the backend type-checks cleanly.

Written by the indexing model from the issue text.

Description

bug

Describe the bug

The apps generated by create-weave-frontend-app and create-weave-backend-app 5.7.1 do not work out of the box:

Step Frontend Backend
npm install fails works
npm run dev fails fails
next build fails n/a
npm run lint fails not checked

The same happens on main and in both template variants (WebSockets and Azure Web PubSub).

The problems come from several changes: #1160 (Next.js 14 → 16, problems 2 and 3), #1244 (Zod 4), #954 (the renderer split, problems 4 and 6) and #994 (initialize), plus dependency drift, since the templates use ^ ranges with no lockfile. Nothing in CI runs the generated apps, so none of them was noticed.

Steps to reproduce
  1. npm create weave-frontend-app, WebSockets template, with automatic install.
  2. npm create weave-backend-app, WebSockets template, then npm run dev.
Expected behavior

Both apps install, build and connect to a room, with no flags or manual changes.

Environment
  • OS: macOS
  • Node 24.5.0, npm 11.5.1
  • create-weave-frontend-app and create-weave-backend-app 5.7.1
Additional context
Frontend

1. npm install fails: three and postprocessing conflict.

peer three@">= 0.168.0 < 0.188.0" from [email protected]

postprocessing 6.39.0 raised its minimum three version, and the template has no lockfile, so every new install picks up the latest version. Only two background components use these packages (Dither, Threads), and nothing imports those components.

Fix: delete the two components and their 5 dependencies (three, postprocessing, @react-three/fiber, @react-three/postprocessing, ogl).

2. A second install conflict: eslint 8 against eslint-config-next 16, which needs ESLint 9. Also, next lint was removed in Next.js 16, so npm run lint fails.

peer eslint@">=9.0.0" from [email protected]

Fix: eslint@^9, an eslint.config.mjs flat config, and "lint": "eslint .".

3. npm run dev and next build stop at start:

ERROR: This build is using Turbopack, with a `webpack` config and no `turbopack` config.

Next.js 16 uses Turbopack by default, and next.config.js only has webpack config.

Fix: add --webpack to the dev and build scripts. Moving to Turbopack is possible, but its resolveAlias silently ignores absolute paths, and CONTRIBUTING.md uses absolute paths for WEAVE_KONVA_PATH / WEAVE_YJS_PATH.

4. A Weave package is missing: the code imports @inditextech/weave-renderer-konva-base, but the generated package.json does not list it.

Module not found: Can't resolve '@inditextech/weave-renderer-konva-base'

5. next build fails type checking: 18 errors (19 in the Azure variant).

  • 3 are initialize missing in ColorTokenNode, ColorTokenToolAction and AlignElementsToolAction. Fix: initialize = undefined;, the pattern the SDK uses. #1256 would remove the need for it.
  • The rest are in the template code: possibly-undefined values, .tsx extensions in imports, one implicit any, and closeCrop / triggerCrop called on Konva.Node.
Backend

6. The same Weave package is missing:

error TS2307: Cannot find module '@inditextech/weave-renderer-konva-base/server'

7. npm run dev never starts: nodemon builds with tsc first, and tsc fails.

  • express 4 is installed with @types/express 5. Fix: @types/express@^4.17.
  • The code uses the Zod 3 API with Zod 4:
    • required_error no longer exists. It can simply be removed, because those fields have defaults.
    • error.errors is now error.issues. This also breaks at runtime: an invalid request to POST /api/v1/export gets 400 {} with no details.
  • ColorTokenNode misses initialize. Same fix as in 5.

With these fixes, the backend type-checks with 0 errors.

Why the package is missing (4 and 6)

The generator lists the Weave packages by hand in three places: create-app.ts, tsdown.config.ts and template/package.json. weave-renderer-konva-base is in none of them. A lasting fix would read the list from template/package.json only.

Small extras
  • ioredis is a required peer of weave-store-websockets, so it gets installed in browser apps too. It could be optional, as was done in #1202.
  • next dev --experimental-https needs a local certificate (mkcert). Plain next dev works on localhost.

Related: #1135, #1160, #1202.

Dominant language
TypeScript
Stars
276
Forks
26
Avg merge
1d 10h
Merged PRs (30d)
47

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from InditexTech/weavejs

All issues in InditexTech/weavejs

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.