Commit Graph

93 Commits

Author SHA1 Message Date
thibaud-leclere
5f7ddcd3cc feat: add UserMovie join entity 2026-03-29 10:10:27 +02:00
thibaud-leclere
5d16d28c59 feat: install Flysystem S3 and configure SeaweedFS storage
Add league/flysystem-bundle and league/flysystem-aws-s3-v3 packages and
configure the default.storage adapter to use AWS S3Client pointed at the
SeaweedFS endpoint (s3.lclr.dev) with path-style endpoints and secret-based
credentials.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-29 10:08:56 +02:00
thibaud-leclere
def97304a9 docs: add implementation plan for user import & notifications
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-29 10:06:32 +02:00
thibaud-leclere
720e8e0cf9 docs: add design spec for user film import, navbar & notifications
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-29 10:00:46 +02:00
thibaud-leclere
9cb5c6e2a5 fix: use vite-plugin-symfony Stimulus loader and wrap react_component in div
Some checks failed
Build and Push Docker Images / Build app image (push) Failing after 17s
Build and Push Docker Images / Build database image (push) Successful in 8s
Build and Push Docker Images / Build node image (push) Failing after 17s
The @symfony/stimulus-bundle loader generates an empty controllers.js,
so Stimulus controllers from controllers.json (including ux-react) were
never registered. Switching to vite-plugin-symfony/stimulus/helpers
uses the virtual:symfony/controllers module that properly reads
controllers.json. Also wrap react_component() output in a <div> since
it only renders data-attributes, not a full HTML element.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-28 15:02:27 +01:00
thibaud-leclere
ae9b0fdba7 ci(docker): add node image build-and-push job to workflow
Some checks failed
Build and Push Docker Images / Build app image (push) Failing after 11s
Build and Push Docker Images / Build database image (push) Successful in 10s
Build and Push Docker Images / Build node image (push) Failing after 10s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-28 14:00:32 +01:00
thibaud-leclere
cb0ea949f6 chore(docker): add image for node
Some checks failed
Build and Push Docker Images / Build app image (push) Failing after 10s
Build and Push Docker Images / Build database image (push) Successful in 9s
2026-03-28 13:54:43 +01:00
thibaud-leclere
7abca03122 fix: drop react-swc plugin for esbuild JSX and add vite-bundle routes
Use esbuild's built-in JSX transform instead of @vitejs/plugin-react-swc
to fix the React Fast Refresh preamble error caused by eager glob imports.
Add missing pentatrion_vite routes to fix web debug toolbar 500 errors.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-28 13:51:54 +01:00
thibaud-leclere
a6064c2bdb fix: switch to @vitejs/plugin-react-swc and manual component registration
- Replace @vitejs/plugin-react with @vitejs/plugin-react-swc to fix
  React Refresh preamble detection error in cross-origin Docker setup
- Register React components manually via window.resolveReactComponent
  since ux-react's registerReactControllerComponents uses Webpack's
  require.context API which is incompatible with Vite

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-28 13:40:16 +01:00
thibaud-leclere
04301642bc fix: add CORS and HMR config to vite for cross-origin Docker setup
The app is served on port 80 while Vite runs on 5173. The React
plugin needs proper CORS and HMR host config to inject its preamble.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-28 13:36:57 +01:00
thibaud-leclere
783a8492e9 fix: use import.meta.glob instead of require.context for Vite compatibility
require.context is Webpack-only. Vite uses import.meta.glob.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-28 13:35:57 +01:00
thibaud-leclere
d590120306 fix: register ViteBundle, add config, share vendor volume with node, add vite-plugin-symfony
- Add PentatrionViteBundle to bundles.php (Flex recipe didn't auto-register)
- Create pentatrion_vite.yaml config
- Share vendor named volume with node container (needed for file: npm deps)
- Add vite-plugin-symfony to package.json devDependencies

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-28 13:26:47 +01:00
thibaud-leclere
deb826401d style: add game grid and popover styling 2026-03-28 13:19:53 +01:00
thibaud-leclere
6290cef3fe feat: integrate GameRow into GameGrid 2026-03-28 13:19:44 +01:00
thibaud-leclere
29667f0b1e feat: add GameRow component composing LetterInput and ActorPopover 2026-03-28 13:19:37 +01:00
thibaud-leclere
ac5bd38954 feat: add ActorPopover component with floating-ui 2026-03-28 13:19:29 +01:00
thibaud-leclere
ad014c2547 feat: add LetterInput component with auto-focus navigation 2026-03-28 13:19:21 +01:00
thibaud-leclere
748b1c7a08 feat: render game grid as React component via SymfonyUX 2026-03-28 13:19:13 +01:00
thibaud-leclere
1640d8d9d9 style: add auth page styling 2026-03-28 13:17:19 +01:00
thibaud-leclere
6d40c4ce08 feat: add registration page with form validation 2026-03-28 13:17:07 +01:00
thibaud-leclere
64949d2ec2 feat: add login page with SecurityController 2026-03-28 13:16:50 +01:00
thibaud-leclere
1720246382 feat: configure security with form_login and access control
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-28 13:15:43 +01:00
thibaud-leclere
376a01bff5 feat: add User entity with email/password/roles
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-28 13:15:40 +01:00
thibaud-leclere
d175202163 chore: add node docker service for vite dev server and prod build 2026-03-28 13:14:09 +01:00
thibaud-leclere
c3dab636b1 chore: switch base template from importmap to vite 2026-03-28 13:11:57 +01:00
thibaud-leclere
f7a9be6a38 chore: configure vite, react, and stimulus bootstrap 2026-03-28 13:11:41 +01:00
thibaud-leclere
bd3996f4a9 chore: remove asset-mapper, install vite-bundle and ux-react 2026-03-28 13:11:09 +01:00
thibaud-leclere
8af386bd5c docs: add implementation plan for auth + React frontend
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-28 13:06:42 +01:00
thibaud-leclere
e376a97dad docs: add design spec for auth + React frontend
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-28 13:02:09 +01:00
thibaud-leclere
4c5e82cb9d Update docker workflow
Some checks failed
Build and Push Docker Images / Build app image (push) Failing after 8s
Build and Push Docker Images / Build database image (push) Successful in 9s
2026-03-28 10:20:24 +01:00
thibaud-leclere
21b0f681be chore(docker): dockerize app, add workflow to push image on gitea registry
Some checks failed
Build and Push Docker Images / Build app image (push) Failing after 3m4s
Build and Push Docker Images / Build database image (push) Failing after 15s
2026-03-28 09:22:47 +01:00
thibaud-leclere
a196fac6c6 Generate grid 2026-01-31 16:17:24 +01:00
thibaud-leclere
1ebf8b99b3 rearrangements 2026-01-20 10:36:39 +01:00
thibaud-leclere
f0af17024e wip sync cast 2026-01-19 23:39:16 +01:00
thibaud-leclere
b764116552 enhance sync films 2026-01-19 23:22:04 +01:00
thibaud-leclere
5e715a40c6 sync actor roles 2026-01-15 21:51:35 +01:00
thibaud-leclere
cb57824861 Add actors and their roles 2026-01-15 20:35:39 +01:00
thibaud-leclere
dcc47fcb65 Starting actors populate 2026-01-15 14:01:45 +01:00
thibaud-leclere
be171b45b4 Enhance params and envs 2026-01-15 13:16:44 +01:00
thibaud-leclere
b38ef63395 ignore .idea 2026-01-15 13:03:20 +01:00
thibaud-leclere
5c35aff23b Add db, sync movies command 2026-01-14 00:54:49 +01:00
thibaud-leclere
e5d5fe4343 wip 2026-01-13 21:26:00 +01:00
thibaud-leclere
d4a3d32e0a init 2026-01-13 13:59:05 +01:00