Skip to content

Dev 1220 backend integration examples laravel symfony nest js express with docker compose#33

Open
KrzysztofZie wants to merge 5 commits into
masterfrom
DEV-1220_Backend-integration-examples-Laravel-Symfony-NestJS-Express-with-Docker-Compose
Open

Dev 1220 backend integration examples laravel symfony nest js express with docker compose#33
KrzysztofZie wants to merge 5 commits into
masterfrom
DEV-1220_Backend-integration-examples-Laravel-Symfony-NestJS-Express-with-Docker-Compose

Conversation

@KrzysztofZie
Copy link
Copy Markdown
Collaborator

@KrzysztofZie KrzysztofZie commented May 18, 2026

Backend integration examples — Django, Laravel, NestJS, Rails, Spring, Symfony with Docker Compose


Note

Medium Risk
Moderate risk because it changes the request/response contracts for create/update operations and adds a new ordering column/migration in the Laravel example, which can break existing clients or require a DB reset for demos.

Overview
Updates the server-side integration examples to match newer Handsontable dataProvider payload shapes and improve UX around row mutations. Django now creates rows based on rowsAmount and updates rows via row['changes'], while the Django/NestJS/Laravel frontends add notifications and an in-grid delete confirmation via beforeRowsMutation.

Improves determinism and insertion behavior in the Laravel example. Adds a sort_order column (migration + model + seeding), defaults list sorting to sort_order, and updates POST /api/products to insert above/below a reference row by shifting sort_order in a DB transaction and returning created rows.

Polish and tooling tweaks. Adds favicons, pins example frontends to handsontable: experimental (with new lockfiles), simplifies docker-compose files by removing explicit version, and expands the NestJS Makefile/README with start/stop/logs/clean/reset/psql targets plus a Vite proxy for /tickets.

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

@netlify
Copy link
Copy Markdown

netlify Bot commented May 18, 2026

Deploy Preview for handsontable-examples canceled.

Name Link
🔨 Latest commit 35f88a8
🔍 Latest deploy log https://app.netlify.com/projects/handsontable-examples/deploys/6a0af668e3e48f00084ee827

@netlify
Copy link
Copy Markdown

netlify Bot commented May 18, 2026

Deploy Preview for handsontable-examples canceled.

Name Link
🔨 Latest commit fbf43c0
🔍 Latest deploy log https://app.netlify.com/projects/handsontable-examples/deploys/6a0b08b7d5cc940008791b9f

title: 'Row added',
message: `Created ${data.length} row${data.length !== 1 ? 's' : ''}`,
duration: 3000,
});
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Frontend crashes accessing .length on null response

High Severity

The store method in ProductController.php returns response()->json(null, 201), meaning res.json() in the frontend resolves to null. The onRowsCreate callback then accesses data.length on this null value, causing a TypeError at runtime every time a row is created.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 35f88a8. Configure here.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

corrected

Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

There are 2 total unresolved issues (including 1 from previous review).

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit b375237. Configure here.

title: 'Row added',
message: `Created: ${row.sku} (id: ${row.id})`,
duration: 3000,
});
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Missing return value in Laravel onRowsCreate callback

High Severity

The onRowsCreate handler in the Laravel frontend reads the server response (which now includes the created products with server-assigned IDs) and shows a notification, but never returns the data. Both the Django and NestJS examples correctly return data so the dataProvider plugin can map server-assigned IDs to the newly created rows. Without this return, the dataProvider won't know the real IDs of created products, causing subsequent update or delete operations on those rows to fail.

Additional Locations (2)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit b375237. Configure here.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

corrected

@KrzysztofZie KrzysztofZie requested a review from qunabu May 18, 2026 12:45
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