Commit graph

31 commits

Author SHA1 Message Date
Azgaar
d1d31da864 feat: Improve camera synchronization and add null check for camera instance 2026-03-12 18:35:57 +01:00
Azgaar
8560c131eb feat: Enhance WebGL2LayerFramework initialization and improve global variable handling 2026-03-12 18:25:08 +01:00
Azgaar
a285d450c8 feat: refactor draw-relief-icons renderer to utilize WebGL2LayerFramework
- Removed global renderer, camera, and scene management in favor of layer framework integration.
- Implemented terrain layer registration with setup, render, and dispose methods.
- Enhanced texture loading and caching mechanisms.
- Updated geometry building to return Mesh objects directly.
- Added performance benchmarking story for render performance validation.
- Created bundle size audit story to ensure effective tree-shaking and size constraints.
2026-03-12 15:04:37 +01:00
Azgaar
30f74373b8 feat: Refactor draw-relief-icons.ts to integrate with WebGL2LayerFramework
- Implemented registration of draw-relief-icons with WebGL2LayerFramework, removing module-level renderer state.
- Updated drawRelief, undrawRelief, and rerenderReliefIcons functions to utilize framework methods.
- Ensured SVG fallback path is preserved and functional.
- Added performance criteria for rendering relief icons.
- Created tests to verify fallback integration and visual parity with existing SVG output.

test: Add WebGL2 fallback integration verification

- Introduced new tests for WebGL2LayerFramework to ensure no-ops when fallback is active.
- Verified that drawRelief routes to SVG when WebGL2 is unavailable.
- Confirmed visual parity between SVG output and existing implementation.
- Ensured all tests pass with updated coverage metrics.
2026-03-12 14:28:33 +01:00
Azgaar
8c78fe2ec1 Refactor code structure for improved readability and maintainability 2026-03-12 14:14:29 +01:00
Azgaar
769ef9eff0 feat: implement WebGL2 layer framework with core functionalities including init, resize observation, and D3 zoom subscription 2026-03-12 13:44:23 +01:00
Azgaar
fae0bd1085 fix: improve comments for clarity and update type imports for consistency 2026-03-11 01:17:36 +01:00
Azgaar
dc06f3d65c fix: streamline texture loading and preload logic in WebGL renderer 2026-03-10 22:55:08 +01:00
Azgaar
bf22c5eaf6 Refactor relief rendering and generation logic
- Migrate relief icon rendering from SVG to WebGL for improved performance.
- Introduce a new relief generator module to handle relief icon creation.
- Update event listeners in relief editor to use a consistent `byId` method.
- Synchronize relief data with the current SVG DOM when exiting edit mode.
- Enhance relief icon management by integrating new utility functions for generating and resolving relief icons.
- Clean up legacy code and improve overall structure for better maintainability.
2026-03-10 03:05:07 +01:00
Marc Emmanuel
634c7dba4b
fix: enhance emblem rendering for states and burgs in the editor (#1343)
* fix: enhance emblem rendering for states and burgs in the editor

* fix: update tools.js version to 1.112.0 for improved functionality

* Update src/index.html

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-05 11:57:53 +01:00
Marc Emmanuel
32227518d2
refactor: migrate military generator (#1330)
* refactor: migrate military gnerator

* fix: build + lint

* Update src/modules/military-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/military-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/military-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: clean up regiment notes and improve emblem retrieval logic

* Update src/modules/military-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-04 12:53:07 +01:00
Marc Emmanuel
da9e915cdc
refactor: migrate markers (#1324)
* refactor: migrate markers

* Update src/modules/markers-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/markers-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/markers-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/markers-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/markers-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Fix marker names by removing unnecessary suffixes for Lighthouse and Waterfall

* refactor: marker methods to use underscore for unused parameters

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Azgaar <maxganiev@yandex.com>
2026-02-18 21:10:27 +01:00
Marc Emmanuel
bce65ce2b3
refactor: fonts (#1323)
Some checks failed
Deploy static content to Pages / deploy (push) Has been cancelled
Code quality / quality (push) Has been cancelled
* refactor: add font management module and update global types

* fix: declare global declareFont

* test: all map loading test
2026-02-17 14:07:43 +01:00
Azgaar
cff57dc4c8
Revert "refactor: add font management module and update global types (#1317)" (#1322)
Some checks failed
Deploy static content to Pages / deploy (push) Has been cancelled
Code quality / quality (push) Has been cancelled
This reverts commit 9fb1b9c410.
2026-02-16 05:48:53 +01:00
Marc Emmanuel
9fb1b9c410
refactor: add font management module and update global types (#1317) 2026-02-16 00:15:37 +01:00
Marc Emmanuel
4936a887ab
refactor: migrate COA (#1309)
Some checks are pending
Deploy static content to Pages / deploy (push) Waiting to run
Code quality / quality (push) Waiting to run
* refactor: migrate COA

* fix: PR feedback
2026-02-15 16:11:59 +01:00
Marc Emmanuel
1100c7c53b
Refactor: migrate ice (#1308)
Some checks failed
Deploy static content to Pages / deploy (push) Has been cancelled
Code quality / quality (push) Has been cancelled
* refactor: migrate ice module

* chore: lint

* refactor: enhance rand function documentation for clarity on argument usage

* refactor: reorganize imports in probabilityUtils test file for clarity
2026-02-09 00:49:13 +01:00
Marc Emmanuel
8ba29b2561
refactor: migrate zones (#1300)
Some checks failed
Deploy static content to Pages / deploy (push) Has been cancelled
Code quality / quality (push) Has been cancelled
* refactor: migrate zones

* refactor: remove duplicate markers property from PackedGraph interface
2026-02-03 17:22:25 +01:00
Marc Emmanuel
844fc15891
refactor: migrate religions (#1299)
Some checks are pending
Deploy static content to Pages / deploy (push) Waiting to run
Code quality / quality (push) Waiting to run
* refactor: migrate religions

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-02 14:53:59 +01:00
Marc Emmanuel
3ba8338508
refactor: migrate renderers to ts (#1296)
* refactor: migrate renderers to ts

* fix: copilot review
2026-02-02 11:32:08 +01:00
Marc Emmanuel
0f19902a56
refactor: migrate provinces generator to new module structure (#1295)
* refactor: migrate provinces generator to new module structure

* fix: after merge fixes of state

* refactor: fixed a bug so had to update tests
2026-02-01 22:16:04 +01:00
Marc Emmanuel
454178fa99
refactor: migrate routes (#1294)
Some checks failed
Deploy static content to Pages / deploy (push) Has been cancelled
Code quality / quality (push) Has been cancelled
* refactor: migrate routes

* refactor: format findPath call for improved readability

* refactor: update findPath call to include pack parameter

* refactor: optimize route deletion logic in RoutesModule
2026-01-30 18:29:44 +01:00
Marc Emmanuel
88c70b9264
refactor: migrate states generator (#1291)
* refactor: migrate states generator

* Update src/modules/states-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/states-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-30 16:44:09 +01:00
Marc Emmanuel
363c82ee30
fix: update port type from string to number and add tests for inland burgs (#1292)
Some checks are pending
Deploy static content to Pages / deploy (push) Waiting to run
Code quality / quality (push) Waiting to run
2026-01-30 13:42:33 +01:00
Marc Emmanuel
e938bc7802
refactor: migrate burg module (#1288)
Some checks failed
Deploy static content to Pages / deploy (push) Has been cancelled
Code quality / quality (push) Has been cancelled
* refactor: migrate burg module

* Update src/modules/burgs-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: lint

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-28 00:11:22 +01:00
Marc Emmanuel
3807903cae
refactor: migrate cultures generator (#1287)
Some checks are pending
Deploy static content to Pages / deploy (push) Waiting to run
Code quality / quality (push) Waiting to run
* refactor: migrate cultures generator

* Update src/modules/cultures-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore:lint

* fix: wrong call structure

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-27 21:00:55 +01:00
Marc Emmanuel
260ccd76a3
refactor: migrate names-generator (#1285)
* refactor: migrate names-generator

* Update src/types/global.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/index.ts

* fix: failing builds after merge

* chore: update biome version to 2.3.13 and adjust name validation regex for ASCII characters

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-27 19:29:37 +01:00
Marc Emmanuel
9db40a5230
chore: add biome for linting/formatting + CI action for linting in SRC folder (#1284)
Some checks are pending
Deploy static content to Pages / deploy (push) Waiting to run
Code quality / quality (push) Waiting to run
* chore: add npm + vite for progressive enhancement

* fix: update Dockerfile to copy only the dist folder contents

* fix: update Dockerfile to use multi-stage build for optimized production image

* fix: correct nginx config file copy command in Dockerfile

* chore: add netlify configuration for build and redirects

* fix: add NODE_VERSION to environment in Netlify configuration

* remove wrong dist folder

* Update package.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: split public and src

* migrating all util files from js to ts

* feat: Implement HeightmapGenerator and Voronoi module

- Added HeightmapGenerator class for generating heightmaps with various tools (Hill, Pit, Range, Trough, Strait, etc.).
- Introduced Voronoi class for creating Voronoi diagrams using Delaunator.
- Updated index.html to include new modules.
- Created index.ts to manage module imports.
- Enhanced arrayUtils and graphUtils with type definitions and improved functionality.
- Added utility functions for generating grids and calculating Voronoi cells.

* chore: add GitHub Actions workflow for deploying to GitHub Pages

* fix: update branch name in GitHub Actions workflow from 'main' to 'master'

* chore: update package.json to specify Node.js engine version and remove unused launch.json

* Initial plan

* Update copilot guidelines to reflect NPM/Vite/TypeScript migration

Co-authored-by: Azgaar <26469650+Azgaar@users.noreply.github.com>

* Update src/modules/heightmap-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/utils/graphUtils.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/heightmap-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: Add TIME and ERROR variables to global scope in HeightmapGenerator

* fix: Update base path in vite.config.ts for Netlify deployment

* refactor: Migrate features to a new module and remove legacy script reference

* refactor: Update feature interfaces and improve type safety in FeatureModule

* refactor: Add documentation for markupPack and defineGroups methods in FeatureModule

* refactor: Remove legacy ocean-layers.js and migrate functionality to ocean-layers.ts

* refactor: Remove river-generator.js script reference and migrate river generation logic to river-generator.ts

* refactor: Remove river-generator.js reference and add biomes module

* refactor: Migrate lakes functionality to lakes.ts and update related interfaces

* refactor: clean up global variable declarations and improve type definitions

* refactor: update shoreline calculation and improve type imports in PackedGraph

* fix: e2e tests

* chore: add biome for linting/formatting

* chore: add linting workflow using Biome

* refactor: improve code readability by standardizing string quotes and simplifying function calls

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Azgaar <maxganiev@yandex.com>
Co-authored-by: Azgaar <azgaar.fmg@yandex.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Azgaar <26469650+Azgaar@users.noreply.github.com>
2026-01-26 22:30:28 +01:00
Marc Emmanuel
29bc2832e0
Refactor/migrate first modules (#1273)
* chore: add npm + vite for progressive enhancement

* fix: update Dockerfile to copy only the dist folder contents

* fix: update Dockerfile to use multi-stage build for optimized production image

* fix: correct nginx config file copy command in Dockerfile

* chore: add netlify configuration for build and redirects

* fix: add NODE_VERSION to environment in Netlify configuration

* remove wrong dist folder

* Update package.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: split public and src

* migrating all util files from js to ts

* feat: Implement HeightmapGenerator and Voronoi module

- Added HeightmapGenerator class for generating heightmaps with various tools (Hill, Pit, Range, Trough, Strait, etc.).
- Introduced Voronoi class for creating Voronoi diagrams using Delaunator.
- Updated index.html to include new modules.
- Created index.ts to manage module imports.
- Enhanced arrayUtils and graphUtils with type definitions and improved functionality.
- Added utility functions for generating grids and calculating Voronoi cells.

* chore: add GitHub Actions workflow for deploying to GitHub Pages

* fix: update branch name in GitHub Actions workflow from 'main' to 'master'

* chore: update package.json to specify Node.js engine version and remove unused launch.json

* Initial plan

* Update copilot guidelines to reflect NPM/Vite/TypeScript migration

Co-authored-by: Azgaar <26469650+Azgaar@users.noreply.github.com>

* Update src/modules/heightmap-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/utils/graphUtils.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/heightmap-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: Add TIME and ERROR variables to global scope in HeightmapGenerator

* fix: Update base path in vite.config.ts for Netlify deployment

* refactor: Migrate features to a new module and remove legacy script reference

* refactor: Update feature interfaces and improve type safety in FeatureModule

* refactor: Add documentation for markupPack and defineGroups methods in FeatureModule

* refactor: Remove legacy ocean-layers.js and migrate functionality to ocean-layers.ts

* refactor: Remove river-generator.js script reference and migrate river generation logic to river-generator.ts

* refactor: Remove river-generator.js reference and add biomes module

* refactor: Migrate lakes functionality to lakes.ts and update related interfaces

* refactor: clean up global variable declarations and improve type definitions

* refactor: update shoreline calculation and improve type imports in PackedGraph

* fix: e2e tests

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Azgaar <maxganiev@yandex.com>
Co-authored-by: Azgaar <azgaar.fmg@yandex.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Azgaar <26469650+Azgaar@users.noreply.github.com>
2026-01-26 17:07:54 +01:00
Marc Emmanuel
81c1ba2963
fix: initialize heights array if not already set in HeightmapGenerator (#1277)
Some checks are pending
Deploy static content to Pages / deploy (push) Waiting to run
2026-01-22 18:28:09 +01:00
Azgaar
9e0eb03618
[Migration] NPM (#1266)
* chore: add npm + vite for progressive enhancement

* fix: update Dockerfile to copy only the dist folder contents

* fix: update Dockerfile to use multi-stage build for optimized production image

* fix: correct nginx config file copy command in Dockerfile

* chore: add netlify configuration for build and redirects

* fix: add NODE_VERSION to environment in Netlify configuration

* remove wrong dist folder

* Update package.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: split public and src

* migrating all util files from js to ts

* feat: Implement HeightmapGenerator and Voronoi module

- Added HeightmapGenerator class for generating heightmaps with various tools (Hill, Pit, Range, Trough, Strait, etc.).
- Introduced Voronoi class for creating Voronoi diagrams using Delaunator.
- Updated index.html to include new modules.
- Created index.ts to manage module imports.
- Enhanced arrayUtils and graphUtils with type definitions and improved functionality.
- Added utility functions for generating grids and calculating Voronoi cells.

* chore: add GitHub Actions workflow for deploying to GitHub Pages

* fix: update branch name in GitHub Actions workflow from 'main' to 'master'

* chore: update package.json to specify Node.js engine version and remove unused launch.json

* Initial plan

* Update copilot guidelines to reflect NPM/Vite/TypeScript migration

Co-authored-by: Azgaar <26469650+Azgaar@users.noreply.github.com>

* Update src/modules/heightmap-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/utils/graphUtils.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/heightmap-generator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: Add TIME and ERROR variables to global scope in HeightmapGenerator

* fix: Update base path in vite.config.ts for Netlify deployment

* fix: Update Node.js version in Dockerfile to 24-alpine

---------

Co-authored-by: Marc Emmanuel <marc.emmanuel@tado.com>
Co-authored-by: Marc Emmanuel <marcwissler@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Azgaar <26469650+Azgaar@users.noreply.github.com>
2026-01-22 12:20:12 +01:00