Commit Graph
100 Commits
Author SHA1 Message Date
lobo 408702be5c Update package-lock.json 2026-03-07 15:26:43 +01:00
lobo 88ca86ae54 Merge pull request 'Fixed problem if webgpu is not available and added alert to show the problem. Maybe somewhere in the future i will use toasts for this.' (#30) from bugfix/webgpu into main
Build, Test & Push Frontend / quality-check (push) Successful in 1m39s
Build, Test & Push Frontend / docker (push) Successful in 1m31s
Reviewed-on: #30
2026-03-05 10:58:54 +01:00
lobo 548cac026d Merge pull request 'Added new position' (#29) from feature/newPosition into main
Build, Test & Push Frontend / quality-check (push) Successful in 1m31s
Build, Test & Push Frontend / docker (push) Successful in 1m18s
Reviewed-on: #29
2026-03-04 20:39:33 +01:00
lobo 61a2057291 src/assets/i18n/en.json aktualisiert
Build, Test & Push Frontend / quality-check (push) Successful in 1m30s
Build, Test & Push Frontend / docker (push) Successful in 1m10s
2026-02-26 08:10:05 +01:00
lobo 737601636f src/assets/i18n/de.json aktualisiert
Build, Test & Push Frontend / quality-check (push) Has been cancelled
Build, Test & Push Frontend / docker (push) Has been cancelled
2026-02-26 08:09:08 +01:00
lobo 0037502b00 src/app/pages/projects/projects.component.ts aktualisiert
Build, Test & Push Frontend / quality-check (push) Successful in 1m34s
Build, Test & Push Frontend / docker (push) Successful in 1m7s
2026-02-26 07:12:19 +01:00
lobo 5485e57bdb Updated wiki links
Build, Test & Push Frontend / quality-check (push) Successful in 1m35s
Build, Test & Push Frontend / docker (push) Successful in 1m9s
2026-02-25 09:10:41 +01:00
lobo f4104d02e8 Bump deps and refactor layouts/styles
Build, Test & Push Frontend / quality-check (push) Successful in 1m40s
Build, Test & Push Frontend / docker (push) Successful in 1m8s
Update package-lock with multiple dependency bumps (Angular CLI/DevKit/schematics to 21.1.5, ajv to 8.18.0, minimatch/brace-expansion updates, tar, qs, swiper, hono, etc.). Wrap the generic grid canvas in a container and clean up HTML structure/indentation in algorithms and pathfinding templates (add card-grid wrapper and reformat content). Adjust global styles: refine .algo-container and app-root margins/gaps, and refactor hero/photo/intro styles for responsive layout. Changes are primarily dependency updates and UI/layout refinements.
2026-02-25 08:50:28 +01:00
lobo 28bde29c8b Merge pull request 'feature/clothsimulation' (#28) from feature/clothsimulation into main
Build, Test & Push Frontend / quality-check (push) Successful in 1m31s
Build, Test & Push Frontend / docker (push) Successful in 1m42s
Reviewed-on: #28
2026-02-24 09:31:35 +01:00
lobo ab3bca4395 Cloth: add info, outline, diagonals, shader
Build, Test & Push Frontend / quality-check (pull_request) Successful in 2m1s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
Add an informational panel and mesh-outline toggle to the cloth demo, plus richer physics and shading. The cloth component now provides AlgorithmInformation to an <app-information> view and a toggleMesh() that flips the mesh wireframe. Constraint generation was extended with four diagonal phases (constraintsP4..P7) and the solver loop was generalized to iterate solver pipelines, improving parallel XPBD constraint handling. The WGSL vertex/fragment shaders were updated to pass world positions, compute normals, add simple lighting and a grid-based base color. Also update information template/model to support optional translated entry names and expand i18n (DE/EN) with cloth texts and a Docker key.
2026-02-24 09:28:16 +01:00
lobo 12411e58bf Refactored the cloth class for better reading 2026-02-24 08:51:53 +01:00
lobo 14d7a78ac4 Added wind to cloth simulation 2026-02-24 08:46:57 +01:00
lobo ed0e370e9d Fixed some styling issues 2026-02-24 08:27:59 +01:00
lobo f656206691 Refactor cloth component and shaders
Improve readability, typing and structure for the cloth simulation component and WGSL shaders. Changes include: formatted imports, added file/header JSDoc and inline comments, made renderConfig and lifecycle methods public with explicit types, renamed component selector to 'app-cloth', converted several functions to typed helpers (e.g. createAndPopulateBuffer, addConstraint), consolidated buffer creation, and cleaned up compute shader binding mappings. Shader file receives file header and minor comment clarifications and a bounds check comment; overall changes are stylistic and organizational to increase maintainability and clarity without altering core algorithm behavior.
2026-02-23 11:30:05 +01:00
lobo 728dbc047f Use 4-phase graph-coloring for constraints
Split cloth constraints into 4 graph-colored phases (horizontal even/odd, vertical even/odd) instead of one big constraints array. Create dynamic JS arrays (constraintsP0..P3) with an addConstraint helper, allocate four GPU constraint buffers and four corresponding solve compute shaders (csSolve0..csSolve3) via a createSolver helper, and dispatch them per substep to avoid write-write races. Update integrate/velocity shader bindings setup and dispatch logic; keep positions/prevPositions/velocities buffers as before. In WGSL, mark constraints as read-only and use arrayLength(&constraints) to bound-check the constraint index instead of relying on a CPU-side count. Also tweak sim parameter (compliance lowered) and minor refactors/cleanups for clarity and consistency.
2026-02-23 11:19:28 +01:00
lobo 746022c48d Update cloth.component.ts 2026-02-23 11:07:09 +01:00
lobo 954211b3cf Add cloth simulation page with WGSL shaders
Introduce a new cloth simulation feature: adds ClothComponent (TS/HTML/SCSS) and WGSL compute/vertex/fragment shaders implementing an XPBD-based cloth sim. Wire up routing and RouterConstants, add the cloth entry to the algorithms list, and add English/German i18n strings. Also include small refactors/renames for algorithm-category and algorithms.service imports and update BabylonCanvas to tolerate optional shader configuration and avoid null access during setup.
2026-02-23 11:02:54 +01:00
lobo 885e609082 Update particles-background.component.ts
Build, Test & Push Frontend / quality-check (push) Successful in 1m38s
Build, Test & Push Frontend / docker (push) Successful in 1m41s
2026-02-23 10:08:36 +01:00
lobo b61eb4eb73 Update particles-background.component.ts
Build, Test & Push Frontend / quality-check (push) Failing after 31s
Build, Test & Push Frontend / docker (push) Has been skipped
2026-02-23 10:07:26 +01:00
lobo 96d4659652 Merge pull request 'Added background animation to habe a little bit more interesting page' (#27) from feature/backgroundAnimation into main
Build, Test & Push Frontend / quality-check (push) Failing after 44s
Build, Test & Push Frontend / docker (push) Has been skipped
Reviewed-on: #27
2026-02-23 10:01:28 +01:00
lobo ad43459173 Added background animation to habe a little bit more interesting page
Build, Test & Push Frontend / docker (pull_request) Has been cancelled
Build, Test & Push Frontend / quality-check (pull_request) Has been cancelled
2026-02-23 10:01:01 +01:00
lobo 32ecfcb621 Merge pull request 'feature/scss-cleanup' (#26) from feature/scss-cleanup into main
Build, Test & Push Frontend / quality-check (push) Successful in 1m31s
Build, Test & Push Frontend / docker (push) Successful in 1m53s
Reviewed-on: #26
2026-02-23 09:46:12 +01:00
lobo aceb0ea24e optimized pendulum visual
Build, Test & Push Frontend / quality-check (pull_request) Successful in 1m58s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-23 09:43:34 +01:00
lobo c160fb4bc8 overworked the project detail pages 2026-02-23 09:37:26 +01:00
lobo 45c11e42cd Added an image for the playground project 2026-02-23 09:11:16 +01:00
lobo e66206c518 Fixed hero page 2026-02-23 09:07:33 +01:00
lobo d0c4ad770b Cleaned and focused about page 2026-02-23 08:56:34 +01:00
lobo 5f8b1de20f Changed link from github to codeberg 2026-02-23 08:50:24 +01:00
lobo 30965afcbd Changed layout, taht everything is max 1200px width and centered 2026-02-23 08:41:49 +01:00
lobo 6330d45b4e Fixed topbar 2026-02-22 12:48:20 +01:00
lobo c6edc922fe Refactor topbar HTML, projects TS and styles
Minor markup and formatting cleanup plus layout adjustments.

- topbar.component.html: removed mat-toolbar color attribute, compacted/normalized element attributes and spacing, fixed small markup spacing issues.
- projects.component.ts: code formatting and whitespace normalization (imports, property spacing, object literals, small function signature/timeout formatting); no logic changes.
- styles.scss: reorganized topbar rules (added app-topbar wrapper, display and color), switched .hero from grid to flex with responsive flex-basis, adjusted photo and intro flex behavior, increased project grid column min width and centered grid with max-width, removed featured card full-width grid span.

These changes improve consistency, readability and adjust layout/responsiveness of the topbar/hero/project grid.
2026-02-22 12:27:20 +01:00
lobo 0e78e6b471 Update styles.scss 2026-02-22 12:02:17 +01:00
lobo 8f21b0e6b0 Update styles.scss 2026-02-22 11:59:36 +01:00
lobo cb2ffa2d80 Consolidate and modernize SCSS into global styles
Move component-level styles into src/styles.scss and remove duplicated rules from several component SCSS files (app, topbar, about, algorithms, sorting, imprint, project dialog, projects, babylon-canvas). The global stylesheet now centralizes layout and typography (clamp-based sizing), sorting visualization & canvas rules, topbar/menu overrides, project/swiper styles, and shared utilities. This reduces duplication, improves responsiveness, and simplifies stylesheet management.
2026-02-22 11:48:21 +01:00
lobo 5ebd1d19ea Merge pull request 'feature/webGPU' (#25) from feature/webGPU into main
Build, Test & Push Frontend / quality-check (push) Successful in 1m33s
Build, Test & Push Frontend / docker (push) Successful in 1m40s
Reviewed-on: #25
2026-02-21 12:32:03 +01:00
lobo eed7e8c0fa Update fractal.component.ts
Build, Test & Push Frontend / quality-check (pull_request) Successful in 1m30s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
fixed linting issue
2026-02-21 12:27:07 +01:00
lobo 24d6d9cdbe Finalized Algorithm
Build, Test & Push Frontend / quality-check (pull_request) Failing after 56s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
Added final descriptions and polished the system
2026-02-21 12:25:07 +01:00
lobo 34148aade2 Added UI and painted pendulum in different colors 2026-02-21 11:47:57 +01:00
lobo 5721b2e48e Added resize callback to restart simulation new if canvas is resized 2026-02-21 10:25:20 +01:00
lobo 2bfa8ba9a1 Added trail effect 2026-02-21 10:21:21 +01:00
lobo 13f99ac7ae Refactored #2
- Refactored shader code and typescript code
- Made it more clear
- Added some comments
2026-02-21 10:03:01 +01:00
lobo 66df3a7f88 Added some comments and removed unused UVs 2026-02-21 09:53:14 +01:00
lobo 598013a7d0 Rendeirng problems fixed
Problem was broken uv coordinates in the fragment shader
2026-02-21 09:46:55 +01:00
lobo f499b78fd5 Adding uniform buffers
But still resolution problem
2026-02-20 17:25:42 +01:00
lobo 0d2e7c97ec See pendulum
I can see the pendulum, but something is not correct with the resolution
2026-02-20 17:14:58 +01:00
lobo 13b59d0b36 Smaller refactoring
- Put shader in own file
- renamed package
2026-02-20 16:50:24 +01:00
lobo 55ece27e1c Add pendulum demo and WGSL support
Introduce a new Pendulum demo (component, template, stylesheet) and wire it into routing and the algorithms list. Extend Babylon canvas API to emit a SceneReadyEvent (scene + engine) and accept a shaderLanguage option in RenderConfig so materials/shaders can target WGSL; update Fractal to consume the new SceneReadyEvent signature. Also add i18n entries for the pendulum demo.
2026-02-18 11:58:25 +01:00
lobo 68e21489ea Update babylon-canvas.component.ts 2026-02-17 10:41:51 +01:00
lobo 796fdf4a79 Fixed small visual problems with canvas 2026-02-17 09:39:37 +01:00
lobo 270716551d Merge pull request 'Fixed resizing problem for 2d canvas' (#24) from bugfix/resize2dCanvas into main
Build, Test & Push Frontend / quality-check (push) Successful in 1m29s
Build, Test & Push Frontend / docker (push) Successful in 1m7s
Reviewed-on: #24
2026-02-17 09:29:26 +01:00
lobo a494c8156d Fixed resizing problem for 2d canvas
Build, Test & Push Frontend / quality-check (pull_request) Successful in 1m30s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-17 09:27:21 +01:00
lobo 5691cb408d Merge pull request 'Changed slider handling for 2d' (#23) from debug/fractalsliderProblem into main
Build, Test & Push Frontend / quality-check (push) Successful in 1m0s
Build, Test & Push Frontend / docker (push) Successful in 53s
Reviewed-on: #23
2026-02-13 14:15:45 +01:00
lobo c2ad2ae992 Changed slider handling for 2d
Build, Test & Push Frontend / quality-check (pull_request) Successful in 1m5s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-13 14:15:22 +01:00
lobo 1e8ba020e2 Merge pull request 'Imporoved pinching for 3d fractals' (#22) from bugfix/betterPinching into main
Build, Test & Push Frontend / quality-check (push) Successful in 17m23s
Build, Test & Push Frontend / docker (push) Successful in 53s
Reviewed-on: #22
2026-02-12 21:13:01 +01:00
lobo 4685a94f1d Imporoved pinching for 3d fractals
Build, Test & Push Frontend / docker (pull_request) Has been cancelled
Build, Test & Push Frontend / quality-check (pull_request) Has been cancelled
2026-02-12 21:12:40 +01:00
lobo d45b651d2d Merge pull request 'feature/portToBabylon' (#21) from feature/portToBabylon into main
Build, Test & Push Frontend / quality-check (push) Successful in 1m2s
Build, Test & Push Frontend / docker (push) Successful in 54s
Reviewed-on: #21
2026-02-12 10:14:58 +01:00
lobo c409cd08b1 Changed 2d fractals to webgl for more performance
Build, Test & Push Frontend / docker (pull_request) Has been cancelled
Build, Test & Push Frontend / quality-check (pull_request) Has been cancelled
2026-02-12 10:14:22 +01:00
lobo cc6997e732 Excluded the rendering in an own component 2026-02-12 09:13:35 +01:00
lobo ea15e66c50 optimized handling a little bit and fixed small scss problems 2026-02-12 08:35:26 +01:00
lobo 085201913f Merge pull request 'Update angular.json' (#20) from bugfix/budget into main
Build, Test & Push Frontend / quality-check (push) Successful in 1m2s
Build, Test & Push Frontend / docker (push) Successful in 57s
Reviewed-on: #20
2026-02-11 11:15:40 +01:00
lobo 525bec30fe Update angular.json
Build, Test & Push Frontend / docker (pull_request) Has been cancelled
Build, Test & Push Frontend / quality-check (pull_request) Has been cancelled
2026-02-11 11:15:07 +01:00
lobo d01a6b0c6b Merge pull request 'festuare/fractal3d' (#19) from festuare/fractal3d into main
Build, Test & Push Frontend / quality-check (push) Failing after 48s
Build, Test & Push Frontend / docker (push) Has been skipped
Reviewed-on: #19
2026-02-11 11:09:45 +01:00
lobo 159d82d602 Finally added 3d fractals
Build, Test & Push Frontend / quality-check (pull_request) Failing after 43s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-11 11:09:07 +01:00
lobo ba3dc4d928 First image of fractal
Next the nasty stuff like movement and ui :-D
2026-02-11 08:31:27 +01:00
lobo 12ebbb09ce Merge pull request 'feature/3dFractal' (#18) from feature/3dFractal into main
Build, Test & Push Frontend / quality-check (push) Failing after 28s
Build, Test & Push Frontend / docker (push) Has been skipped
Reviewed-on: #18
2026-02-11 08:12:10 +01:00
lobo 07b6296294 Added new component
Build, Test & Push Frontend / quality-check (pull_request) Failing after 30s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-11 08:11:42 +01:00
lobo 6cb033bd9f updated package json and low vulnerability issues 2026-02-11 07:56:00 +01:00
lobo 42c86ecb70 Merge pull request 'Add fractal visualization feature' (#17) from feature/fractals into main
Build, Test & Push Frontend / quality-check (push) Successful in 58s
Build, Test & Push Frontend / docker (push) Successful in 45s
Reviewed-on: #17
2026-02-10 14:52:22 +01:00
lobo 5d162b57ab Add fractal visualization feature
Build, Test & Push Frontend / quality-check (pull_request) Successful in 55s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
Introduce a new Fractal visualization: adds FractalComponent (template, styles, TS), FractalService (rendering, palettes, Mandelbrot/Julia/Burning Ship/Newton implementations), and Fractal model/types. Wire up routing and router constants (route and component import), add wiki links to UrlConstants, and expose the new algorithm in AlgorithmsService. Also add i18n entries (en/de) for UI labels and explanations. Component supports canvas zoom/drag, color schemes and iteration controls.
2026-02-10 14:49:17 +01:00
lobo dab7c51b90 Merge pull request 'fesature/maze-gen' (#16) from fesature/maze-gen into main
Build, Test & Push Frontend / quality-check (push) Successful in 50s
Build, Test & Push Frontend / docker (push) Successful in 49s
Reviewed-on: #16
2026-02-09 14:57:36 +01:00
lobo e8354bfecd Add Prim/Kruskal maze gen & nodeData refactor
Build, Test & Push Frontend / quality-check (pull_request) Successful in 1m10s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
Implement Prim and Kruskal maze generation in the Labyrinth component with animated generation and UI guards. Introduces isAnimationRunning signal, mazeAnimationSpeed, maze node order tracking and animateMazeGeneration; createRandom(now takes a boolean) triggers either Prim or Kruskal flow, sets random start/end, and animates. Refactor Node.distance -> nodeData across models, components and the PathfindingService (Dijkstra/A*) to use nodeData for g-scores/ids. Add SharedFunctions.shuffleArray utility and update i18n (EN/DE) with labels for Prim/Kruskal. Misc: minor cleanup/init changes and drawing logic adjustments to support the new maze flows.
2026-02-09 14:55:05 +01:00
lobo bbec113f5d Add labyrinth maze generator and integrate routes
Introduce a new Labyrinth feature: add LabyrinthComponent (TS/HTML/SCSS) implementing maze generation (Prim's/Kruskal) and visualization using the existing generic grid. Wire the component into RouterConstants and app.routes, and add the algorithm entry to AlgorithmsService. Refactor pathfinding internals: rename Node.previousNode -> Node.linkedNode and update PathfindingService and PathfindingComponent accordingly. Add SharedFunctions.random helpers and replace local random utilities. Rename Conway component files/class to ConwayGolComponent and update template path. Add i18n entries for labyrinth (en/de). Minor housekeeping: bump package version to 1.0.0 and disable @typescript-eslint/prefer-for-of in ESLint config.
2026-02-09 10:57:24 +01:00
lobo 950ec75f07 Merge pull request 'Update en.json' (#15) from bugfix/translationbuf into main
Build, Test & Push Frontend / quality-check (push) Successful in 52s
Build, Test & Push Frontend / docker (push) Successful in 47s
Reviewed-on: #15
2026-02-08 14:03:19 +01:00
lobo 854d558e6b Update en.json
Build, Test & Push Frontend / quality-check (pull_request) Successful in 54s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-08 14:02:52 +01:00
lobo bc740af0bf Merge pull request 'feature/optimize' (#14) from feature/optimize into main
Build, Test & Push Frontend / quality-check (push) Successful in 52s
Build, Test & Push Frontend / docker (push) Successful in 45s
Reviewed-on: #14
2026-02-07 11:14:32 +01:00
lobo f6ed2057a4 lighthouserc.json aktualisiert
Build, Test & Push Frontend / quality-check (pull_request) Successful in 56s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-07 11:12:19 +01:00
lobo a6d8405916 .gitea/workflows/build-Frontend-a.yml aktualisiert
Build, Test & Push Frontend / quality-check (pull_request) Failing after 49s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-07 11:01:54 +01:00
lobo 41ec7a862f lighthouserc.json aktualisiert
Build, Test & Push Frontend / quality-check (pull_request) Failing after 7s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-07 10:50:01 +01:00
lobo b9f6564771 .gitea/workflows/build-Frontend-a.yml aktualisiert
Build, Test & Push Frontend / quality-check (pull_request) Failing after 8s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-07 10:49:39 +01:00
lobo d8611b0968 .gitea/workflows/build-Frontend-a.yml aktualisiert
Build, Test & Push Frontend / quality-check (pull_request) Failing after 1m42s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-07 10:45:06 +01:00
lobo 4d27643d74 .gitea/workflows/build-Frontend-a.yml aktualisiert
Build, Test & Push Frontend / quality-check (pull_request) Failing after 16s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-07 10:43:43 +01:00
lobo 48e74ed3e8 .gitea/workflows/build-Frontend-a.yml aktualisiert
Build, Test & Push Frontend / quality-check (pull_request) Failing after 16s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-07 10:42:20 +01:00
lobo e1b1643eb2 .gitea/workflows/build-Frontend-a.yml aktualisiert
Build, Test & Push Frontend / quality-check (pull_request) Failing after 17s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
2026-02-07 10:39:47 +01:00
lobo 0e520ead26 Add Lighthouse CI and expand frontend CI/CD
Build, Test & Push Frontend / quality-check (pull_request) Failing after 48s
Build, Test & Push Frontend / docker (pull_request) Has been skipped
Replace the previous frontend workflow with an expanded Build, Test & Push workflow. Adds a quality-check job (runs on push and PRs to main) that sets up Node.js, installs deps, runs lint/type checks, unit tests (ChromeHeadless), production build and runs LHCI. The docker job now depends on the quality-check job and only runs on pushes to main. Added lighthouserc.json and ignored .lighthouseci, relaxed two ESLint rules (@typescript-eslint/no-inferrable-types and no-explicit-any), and updated package.json (and lock) to include LHCI tooling.
2026-02-07 10:32:00 +01:00
lobo 70ed047059 Optimize Conway and generic grid rendering
Conway GOL: add executionTime tracking and display; switch to double-buffered read/write grids with structuredClone initialization; refactor life update logic (checkLifeRules, swapGrids) to avoid mutating the source while computing the next generation; adjust per-frame delay to account for execution time; increase MAX_GRID_SIZE from 100 to 200; fix grid binding to use readGrid so UI reflects internal state.

Generic grid: add backgroundColor input and use it to clear canvas each frame; only draw cells whose color differs from background and draw grid lines conditionally based on node size to reduce overdraw; adjust drawNode to only stroke borders for larger nodes.

Templates: set backgroundColor='lightgray' for Conway and Pathfinding grid usages; display execution time in Conway UI.

Misc: remove a debug console.log in sorting component. These changes improve rendering performance, reduce flicker, and surface per-frame timing for tuning the Game of Life simulation.
2026-02-07 09:52:58 +01:00
lobo 16cc8afd4a Merge pull request 'Increase default grid and rename simple scene' (#13) from bugfix/smallFix into main
Build & Push Frontend A / docker (push) Successful in 44s
Reviewed-on: #13
2026-02-06 22:06:31 +01:00
lobo 2a808c1d96 Increase default grid and rename simple scene
Raise default Conway's Game of Life grid size from 40x40 to 50x50 (src/app/pages/algorithms/conway-gol/conway-gol.models.ts) to provide a larger initial viewport. Update i18n labels for the simple scene to 'Glider'/'Gleiter' in English and German respectively (src/assets/i18n/en.json, src/assets/i18n/de.json) for clearer naming.
2026-02-06 22:06:02 +01:00
lobo 5d48118add Merge pull request 'feature/gameOfLife' (#12) from feature/gameOfLife into main
Build & Push Frontend A / docker (push) Successful in 42s
Reviewed-on: #12
2026-02-06 22:03:48 +01:00
lobo bf46c57db0 Conway GOL: add scenarios & start/pause loop
Add predefined scenarios (SIMPLE, PULSAR, GUN) and UI controls to generate them; introduce a start/pause game loop driven by an Angular signal. Reduce default grid to 40x40 and max grid to 100, speed up default generation to 30ms, and pause the game when grid size changes. Implement scenario setup helpers (simple, pulsar, glider gun), life-rule evaluation, neighbor counting, grid swapping and a delay helper. Update template to show scenario buttons and conditional start/pause button, and add corresponding i18n entries for English and German.
2026-02-06 22:03:18 +01:00
lobo 930f0110b0 Extract generic grid component and refactor uses
Add a reusable GenericGridComponent (canvas + input handling) and migrate Conway Game of Life and Pathfinding pages to use it. New files: shared/components/generic-grid/{html,scss,ts} implement canvas rendering, resizing, input listeners and a callback API (createNodeFn, getNodeColorFn, applySelectionFn, initializationFn) plus gridChange events. Updated templates to replace raw <canvas> with <app-generic-grid> and switched grid size inputs to ngModelChange bindings. Conway and Pathfinding components: remove direct canvas/mouse handling, wire the generic grid callbacks, keep algorithm-specific logic (node creation, coloring, selection, scenarios and animations) but delegate drawing and interaction to GenericGridComponent. This centralizes grid rendering/interaction and simplifies per-algorithm components.
2026-02-06 20:59:56 +01:00
lobo 3795090cea Refactor controls UI, styles; bump deps
Consolidate and refactor component styling and markup: remove component-specific SCSS for Conway's Game of Life and Pathfinding and drop their styleUrls, rename per-component .controls blocks to .controls-panel in pathfinding and sorting templates, and move the outer container class onto the mat-card. Add global styles in src/styles.scss for .controls-panel, grid/form sizing, container max-width, and sorting visualization (bar states and transitions). Also update package-lock.json with minor/patch dependency bumps for Angular CLI/devkit/schematics/@schematics/angular, @modelcontextprotocol/sdk and several transitive packages.
2026-02-06 15:06:54 +01:00
lobo 59148db295 Enhance Conway's Game of Life UI & interaction
Add interactive controls and drawing support for Conway's Game of Life: introduce Node.alive, Scenario enum, spawn/speed/time constants, random/empty generation, and mouse/touch drawing (click-drag/touch to toggle cells). Update template to include control buttons, speed input, legend, and expose Scenario constants. Implement grid initialization, random seeding, grid position mapping, and optimized node drawing/color logic.

Also update i18n (de/en) with GOL strings and move GRID label keys to ALGORITHM, switch some label usages accordingly. Move generic container/legend styles into global styles.scss (adjust canvas border color), and simplify component SCSS files. Change CONWAYS_WIKI URL to German wiki and remove now-unused UrlConstants references from components.
2026-02-06 14:40:49 +01:00
lobo a22dd17869 Created default build up
- next make grid be a own component with a lot of callbacks
- after this start the game implementtion
2026-02-06 11:52:17 +01:00
lobo da43213808 Created new component and refactored
- Created new component to display the game of life algo
- created an algo info component to combine the algo header for all algos
2026-02-06 09:59:12 +01:00
lobo ff1ee9b5f6 Merge pull request 'feature/pathfinding-finetuning' (#11) from feature/pathfinding-finetuning into main
Build & Push Frontend A / docker (push) Successful in 50s
Reviewed-on: #11
2026-02-05 09:25:41 +01:00
lobo 52f0e371ee Add random scenario and refactor case handling
Consolidate scenario creation by replacing separate normal/edge/clear handlers with createCase({withWalls, scenario}). Add a new 'random' scenario that picks random start/end positions and places random walls (controlled by MAX_RANDOM_WALLS_FACTORS). Change pathLength to a string and display "∞" for empty paths. Update applyGridSize logic to avoid unnecessary resets when dimensions unchanged and to initialize with the new API. Add random helper and MAX_RANDOM_WALLS_FACTORS constant, update template buttons to call createCase, and add i18n entries for the random case and updated clear-board label.
2026-02-05 09:24:44 +01:00
lobo f385a154d5 Update pathfinding.component.ts
Created new normal case
2026-02-05 08:35:34 +01:00
lobo 38bf7edd53 Unify pathfinding visualize; update About CSS
Consolidate separate visualizeDijkstra/visualizeAStar into a single visualize(algorithm) method and update the template buttons to call visualize('dijkstra') or visualize('astar'). The new method dispatches to the appropriate pathfindingService method, centralizes timing/animation handling, and reduces duplicated logic. Also apply minor About page styling tweaks: add left margin to the Experience h2 and remove the .xp-list rules from the SCSS (small cleanup/reformat).
2026-02-05 08:27:19 +01:00
lobo b52790c9a1 Merge pull request 'Mark sorted bounds and clamp array size' (#10) from bugfix/sorting_fix into main
Build & Push Frontend A / docker (push) Successful in 45s
Reviewed-on: #10
2026-02-04 16:01:44 +01:00
lobo e3d835300b Mark sorted bounds and clamp array size
In the sorting service, mark boundary elements as 'sorted' after each forward/backward pass and push snapshots to capture those states; also adjust the backward loop to start at end-1 to avoid rechecking the already-placed element. In the component, clamp new array size to the MIN_ARRAY_SIZE..MAX_ARRAY_SIZE range in newArraySizeSet. Adds an import for MIN from @angular/forms/signals.
2026-02-04 16:01:18 +01:00