Skip to content

examples: modernize Handsontable 18 examples#40

Merged
demtario merged 16 commits into
masterfrom
feature/dev-2025-modernize-handsontable-18
Jul 14, 2026
Merged

examples: modernize Handsontable 18 examples#40
demtario merged 16 commits into
masterfrom
feature/dev-2025-modernize-handsontable-18

Conversation

@demtario

@demtario demtario commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Summary

  • modernize the examples for Handsontable 18, including Next 16/React 19, Angular, Astro, Remix, and the Vite migration
  • standardize example package metadata and pnpm lockfile
  • restore build, lint, and TypeScript compatibility across the updated examples

Test plan

  • Run pnpm install and production builds for the updated examples
  • Run Next lint and build
  • Run Angular and Vue typechecks/builds
  • Regenerate runner catalog and container metadata

Notes

  • Remix remains on React 18 because Remix 2 does not support React 19.
  • Astro 7 was validated against the runner sandbox Node 22.23.1 runtime.

Note

Low Risk
Demo-only example and runner config changes with no production app or security surface; main risk is example build breakage if a stack combo was missed in CI.

Overview
Updates the Handsontable 18 example suite and demo runner so installs, builds, and sandboxes stay aligned with current framework stacks (Next 16 / React 19, Angular 22, Astro 7, Vite 8, pnpm).

For Angular, the sandbox drops legacy-peer-deps from .npmrc, points global styles at minified Handsontable CSS, and raises production bundle budgets (~1.75mb warn / 2mb error) so ng build succeeds with the larger HT 18 bundle. Across examples, dependencies and tooling are bumped, CSS imports standardized on .min.css, and runner baked package.json / container catalog metadata are regenerated for Tier-2 images.

Remix intentionally stays on React 18 because Remix 2 does not support React 19.

Reviewed by Cursor Bugbot for commit a73d113. Bugbot is set up for automated code reviews on this repo. Configure here.

@demtario demtario self-assigned this Jul 14, 2026
@demtario demtario requested a review from budnix July 14, 2026 12:46
{
data: 4,
type: 'date',
dateFormat: 'DD/MM/YYYY',

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Date format as string is no longer supported.

"typescript": "5.2.2"
"@handsontable/react-wrapper": "18.0.0",
"@tailwindcss/postcss": "^4.3.2",
"handsontable": "18.0.0",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

It's ok that the HoT version is hardcoded here?

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.

The sandbox runner does override this when running the specified version anyway, and for local development fixed version is more predictable I think. Some examples had latest and some were already pinned, so I unified to the pinned version

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I would probably be in favor of using the word "latest," because a pinned version might always give developers the impression that it's stale, out of date, or a forgotten line of code. WDYT?

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.

Ok, I can change to the latest

@demtario demtario requested a review from budnix July 14, 2026 13:16
@demtario demtario merged commit 68e4759 into master Jul 14, 2026
1 check passed
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.

2 participants