Skip to content

Upgrade Next.js to version 16 and stabilize build configurations - #36

Open
clicktodev wants to merge 41 commits into
OpenFusionProject:mainfrom
clicktodev:next-15
Open

Upgrade Next.js to version 16 and stabilize build configurations#36
clicktodev wants to merge 41 commits into
OpenFusionProject:mainfrom
clicktodev:next-15

Conversation

@clicktodev

@clicktodev clicktodev commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

the changes in this pr have been ported from the latest next 16 project template

this will throw error if port is unavailable instead of auto selecting the next available port
Drop the changes that were not required by the upgrade, per review
feedback:

- Revert the easter-eggs/snowflakes refactor (app/easter-eggs.ts,
  app/components/EasterEggs.tsx, app/page.tsx). The magic-snowflakes 7
  bump is kept; the original module-level implementation builds and
  prerenders fine on Next.js 16.
- Revert the README formatting changes.

Also set agentRules: false in next.config.ts so Next.js 16 stops
regenerating AGENTS.md/CLAUDE.md in the repo root.
Comment thread package.json
"bootstrap": "^5.3.3",
"dompurify": "^3.2.4",
"magic-snowflakes": "^6.3.0",
"magic-snowflakes": "^7.0.2",

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this version fixes a build problem with nextjs 16

Comment thread package.json
"dev": "next dev --webpack -p 3000",
"build": "next build --webpack",
"start": "next start -p 3000",
"lint": "eslint"

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

next16 no longer provides a lint command and instead eslint should be invoked directly

Comment thread package.json
"start": "next start",
"lint": "next lint"
"dev": "next dev --webpack -p 3000",
"build": "next build --webpack",

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

next16 uses turbopack by default but explicitly setting webpack for stability. as well as forcing the port to be 3000 to stop next from using a different port when 3000 is not available which can break the tauri connection because tauri config looks for port 3000

Comment thread next.config.ts
@@ -0,0 +1,13 @@
import type { NextConfig } from "next";

@clicktodev clicktodev Sep 1, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

next16 uses a ts config

Comment thread eslint.config.mjs
@@ -0,0 +1,30 @@
import { defineConfig, globalIgnores } from "eslint/config";

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

next16 uses eslint9 and eslint flat config

Comment thread tsconfig.json
{
"compilerOptions": {
"lib": ["dom", "dom.iterable", "esnext"],
"target": "ES2017",

@clicktodev clicktodev Sep 1, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

copied settings from next16 project template

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant