Web application generating interactive and highly customizable maps
Find a file
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
.docker Containerized version (#639) 2021-07-13 18:42:28 +03:00
.github Test/add e2e and unit testing (#1282) 2026-01-23 16:50:21 +01:00
public Refactor/migrate first modules (#1273) 2026-01-26 17:07:54 +01:00
src Refactor/migrate first modules (#1273) 2026-01-26 17:07:54 +01:00
tests/e2e Refactor/migrate first modules (#1273) 2026-01-26 17:07:54 +01:00
.gitignore Test/add e2e and unit testing (#1282) 2026-01-23 16:50:21 +01:00
CODE_OF_CONDUCT.md docs: code of conduct 2022-06-01 15:08:20 -07:00
Dockerfile [Migration] NPM (#1266) 2026-01-22 12:20:12 +01:00
ISSUE_TEMPLATE.md Update ISSUE_TEMPLATE.md 2018-06-11 21:36:07 +03:00
LICENSE Update LICENSE to include permission for derivative works 2024-06-29 12:03:52 +02:00
netlify.toml [Migration] NPM (#1266) 2026-01-22 12:20:12 +01:00
package-lock.json Refactor/migrate first modules (#1273) 2026-01-26 17:07:54 +01:00
package.json Test/add e2e and unit testing (#1282) 2026-01-23 16:50:21 +01:00
playwright.config.ts Test/add e2e and unit testing (#1282) 2026-01-23 16:50:21 +01:00
README.md chore: update readme 2024-03-14 11:30:21 +01:00
tsconfig.json Test/add e2e and unit testing (#1282) 2026-01-23 16:50:21 +01:00
vite.config.ts [Migration] NPM (#1266) 2026-01-22 12:20:12 +01:00
vitest.browser.config.ts Test/add e2e and unit testing (#1282) 2026-01-23 16:50:21 +01:00

Fantasy Map Generator

Azgaar's Fantasy Map Generator is a free web application that helps fantasy writers, game masters, and cartographers create and edit fantasy maps.

Link: azgaar.github.io/Fantasy-Map-Generator.

Refer to the project wiki for guidance. The current progress is tracked in Trello. Some details are covered in my old blog Fantasy Maps for fun and glory.

preview

preview

preview

Join our Discord server and Reddit community to share your creations, discuss the Generator, suggest ideas and get the most recent updates.

Contact me via email if you have non-public suggestions. For bug reports please use GitHub issues or #fmg-bugs channel on Discord. If you are facing performance issues, please read the tips.

Pull requests are highly welcomed. The codebase is messy and requires re-design. I will appreciate if you start with minor changes. Check out the data model before contributing.

You can support the project on Patreon.

Inspiration: