Repository navigation
Releases: sajadjanat/vue-neshan-maps
Release list
v2.4.0 — Vue Neshan Maps — bilingual interactive documentation
Vue Neshan Maps now has a bilingual developer documentation site, integrated into the live playground.
- Three-column navigation, article content and per-page table of contents, mirrored for Persian.
- 19 English/Persian chapters covering setup, web keys, coordinates, styles, traffic/POI, overlays, GeoJSON, clustering, heatmaps, advanced layers, Nuxt 4, Leaflet, errors, production, security and migration.
- Complete Persian API reference alongside the English reference.
- 12 interactive example scenarios on real Neshan maps, with standalone Vue/TypeScript code that follows the controls. Visitor keys stay in memory and never enter copied code.
- Search across chapter contents, keyboard shortcuts, section links and mobile navigation.
- Redesigned key connection form and horizontally scrollable reference tables on mobile.
فارسی · English documentation · Playground
Validation: 61 unit/contract tests, strict type checks for 25 generated Vue examples, official SDK tests, package-consumer and Nuxt SSR/module/plugin checks in CI. Browser checks covered real basemaps, traffic/POI, clusters/leaves, heatmaps, 3D picking, draggable markers, geometry, camera methods, bilingual navigation and mobile layouts. Quota error cases use explicit offline simulation; GPS permission was not requested. The known legacy Leaflet supplemental-tile warning is documented.
Existing library runtime APIs remain unchanged; the historical npm package remains compatible at its existing release. Future updates use vue-neshan-maps.
Published npm artifact
Install vue-neshan-maps@2.4.0 from npm. The vue-neshan-maps-2.4.0-npm.tgz asset matches the npm tarball and includes the corrected Neshan API-key dashboard link. This documentation-only correction is in eb0d840. The original release asset and tag are retained.
v2.3.2 — Vue Neshan Maps — compatible package migration
Repository and package information update
- Repository renamed to sajadjanat/vue-neshan-maps, preserving its Git history, releases, issues and stars.
- Demo moved to the matching GitHub Pages address. Both-language docs, README images, package repository/homepage/issues metadata and demo links now use the new URLs.
- The historical npm package prominently states in English and Persian that future versions and new features are released as vue-neshan-maps. Its description directs users to the new package.
- Both npm identities receive this metadata/documentation release. Existing exports, Vue/Nuxt APIs, styles and fonts remain compatible. No version is unpublished or deprecated.
v2.3.1 — Vue Neshan Maps — compatible package migration
Documentation correction: both language clone commands now explicitly name the destination folder. Runtime code is byte-identical to 2.3.0.
Vue Neshan Maps: clearer npm name, preserved APIs
- Canonical npm package:
vue-neshan-maps@2.3.1. - Historical
vuejs-neshan-map-leaflet@2.3.1ships the identical compatibility build, including ESM/CommonJS, types, CSS aliases, Vazir fonts and Nuxt module/manual plugin. No old version is removed or immediately deprecated. - Bilingual migration guides and all current installation examples, Nuxt guides and live demo snippets use the new name. Component names, props, events and
neshanMapconfiguration remain unchanged. - Repository and demo URLs remain stable. Use only one package identity per application.
Validation
55 unit/contract tests, 10 official SDK tests, Node22/24 quality CI, installed-package checks for both identities, and Nuxt4 module/manual-plugin production build and SSR checks passed in CI. Public real Neshan map verified traffic/POI/clusters and both-language Vue/Nuxt snippets; browser errors zero. Two previously documented unpatched Nuxt upstream advisories remain unchanged.
v2.3.0 — Vue Neshan Maps — compatible package migration
Vue Neshan Maps: clearer npm name, preserved APIs
- Canonical npm package:
vue-neshan-maps@2.3.0. - Historical
vuejs-neshan-map-leaflet@2.3.0ships the identical compatibility build, including ESM/CommonJS, types, CSS aliases, Vazir fonts and Nuxt module/manual plugin. No old version is removed or immediately deprecated. - Bilingual migration guides and all current installation examples, Nuxt guides and live demo snippets use the new name. Component names, props, events and
neshanMapconfiguration remain unchanged. - Repository and demo URLs remain stable. Use only one package identity per application.
Validation
55 unit/contract tests, 10 official SDK tests, Node22/24 quality CI, installed-package checks for both identities, and Nuxt4 module/manual-plugin production build and SSR checks passed in CI. Public real Neshan map verified traffic/POI/clusters and both-language Vue/Nuxt snippets; browser errors zero. Two previously documented unpatched Nuxt upstream advisories remain unchanged.
v2.2.3 — Dependency maintenance and Nuxt security fixes
Dependency maintenance and Nuxt security fixes
The package remains vuejs-neshan-map-leaflet. Existing Leaflet/MapLibre components, advanced layers, Vue APIs and Nuxt module/manual-plugin integration are preserved.
- Updated compatible dependencies: Vue/server-renderer 3.5.44, DOMPurify 3.4.17, Vitest 5.0.4 and related lockfile patches. MapLibre stays at 6.14.0.
- Patched Nuxt example Devtools Git tooling with a scoped simple-git 4.0.2 override and argv-parser 2.0.1. The example audit drops from 15 affected package nodes (2 critical) to 11 high and 0 critical.
- Added actual installed Git API/version verification and a full Nuxt consumer audit guard that rejects new or critical advisories.
- Added bilingual security maintenance documentation explaining the two remaining unpatched upstream braces/node-forge advisories and application-root override scope. Installing the map library does not automatically apply overrides to your Nuxt application's dependencies.
Security details · گزارش فارسی
The root library audit is clean. The separate Nuxt example is not represented as having a clean audit; the remaining two upstream advisories currently have no patched published versions.
Validation: 55 unit/contract tests, 10 actual Leaflet SDK tests, strict installed-package exports/types checks, Nuxt module/manual-plugin production builds and SSR HTTP 200 passed. Quality CI passed on Node 22/24. Real public Neshan maps verified traffic/POI toggles, cluster leaves, simultaneous heatmap, advanced layers/style changes, 3D clicks, GeoJSON validation, 10,000-point updates/export and Leaflet styles/popups/dragging. Known supplemental Leaflet tile warnings remain documented.
v2.2.2 — Bilingual demo screenshots and documentation
Fresh screenshots of the live demo
- Ten real, unedited browser captures: light, dark, clusters, weighted heatmap and 3D, each with Persian and English controls.
- Persian screenshots use the demo's bundled Vazir font and RTL layout. English screenshots show English controls. Neshan supplies street names and basemap labels.
- Refreshed both READMEs, added an expandable feature gallery and updated the advanced guides. Retained historical PNGs for older npm README links.
- Completed GitHub About with a description, live demo URL and relevant topics.
This is a documentation release; component APIs are unchanged. Screenshots contain sample geometry, preserve attribution and expose no API key.
v2.2.1 — Interactive bilingual demo
Try the online playground
A map-first responsive application with complete Persian/English controls and bundled Vazir. Bring your own Neshan web key; allow sajadjanat.github.io in the key's domain settings. Keys stay in page memory and are not saved or included in URLs, downloads or code examples.
- Explore real Neshan basemaps, live traffic and POI across five vector styles; keep Leaflet for existing integrations.
- Try 100–10,000 sample points, adjustable clusters, cluster leaves/expansion and simultaneous weighted heatmaps.
- Adjust 3D extrusion height/opacity, edit inline GeoJSON, click custom layers, draw shapes and replace data.
- Drag markers, pick coordinates, measure geographic segments and inspect rendered feature/source/layer counts.
- Copy Vue/Nuxt examples, download GeoJSON and simulate classified key/quota/domain/service/rate errors without consuming quota.
- Automatic GitHub Pages deployment, localized guides and links from both READMEs and the npm homepage.
Package map component APIs are unchanged. Demo geometry is synthetic; basemaps and live layers are provided by Neshan. Browser location is requested only by the user's location action. Simulated quota failures are clearly labelled.
55 unit/contract tests and 10 pinned Leaflet SDK tests, installed-package/strict TypeScript checks, Node 22/24 CI and Nuxt 4 module/plugin build/SSR checks. Public HTTPS demo verified against real Neshan maps in both languages and at mobile width.
npm install vuejs-neshan-map-leaflet@2.2.1v2.2.0 — Clusters, heatmaps and patched MapLibre
MapLibre analysis and security update
- Automatic GeoJSON clustering with configurable styling, click expansion and asynchronous leaf queries.
- Weighted heatmaps on an independent unclustered source, including simultaneous display with clusters.
- Declarative advanced native sources and layers: scoped IDs, beforeId ordering, 3D extrusion, layer clicks and style restoration.
- Precise, redacted key/domain/service/quota/rate errors; numeric codes and Retry-After survive worker transport.
- In-place geometry updates, no-op snapshot checks, batched watchers and shared line layers reduce repeated worker/style work.
- Replaced the vulnerable bundled renderer with MapLibre GL JS 6.14.0 and a reproducible self-contained worker. Retained Neshan protocol, RTL and attribution in an adapter-only ISC fork; original licenses included.
- Existing Vue 3, Leaflet, Nuxt 4 module/plugin, markers, shapes, events and Vazir font retained. Native integrations now use MapLibre 6; review the advanced guide for migration/CSP requirements.
Validation
51 unit/contract tests and 9 pinned Leaflet SDK tests pass. ESM/CommonJS, strict installed-package types, CSS/fonts and Nuxt 4 module/plugin production builds/SSR HTTP 200 checked. Real Neshan maps verified traffic/POI, Persian labels, clusters/counts, heatmap, 3D layer clicks, cluster leaves/expansion, data updates and style restoration. Real invalid-key HTTP 480 was classified correctly; quota/rate/domain/service branches use controlled responses rather than exhausting real quota.
Root package and plain Vue installed consumer audits report zero vulnerabilities. Optional Nuxt 4.6.1 has independent upstream framework/tooling advisories documented in the guides.
English advanced guide · آموزش فارسی
Install: npm install vuejs-neshan-map-leaflet@2.2.0
v2.1.0 — Nuxt 4 integration and redesigned bilingual guides
Nuxt 4 integration
- Add
vuejs-neshan-map-leaflet/nuxttomodulesfor global map components, composable/style auto-imports, CSS and public runtime-key configuration. - Use
vuejs-neshan-map-leaflet/nuxt/pluginfor manual Nuxt plugin registration. - Nuxt is an optional peer. Existing Vue applications and both map engines keep their current API.
- Includes a runnable Nuxt 4 example and installed-tarball production-build, declaration and SSR tests for both integrations.
Documentation and presentation
- Redesigned English/Persian README and task-based feature guides.
- New real-map light, dark and Leaflet screenshots with separate English and Persian interfaces.
- Complete bilingual Nuxt guide covering configuration, plugins, SSR, deployment environment variables and troubleshooting.
فارسی
پشتیبانی Nuxt 4 با ماژول و پلاگین اختصاصی، ثبت خودکار کامپوننتها و CSS، راهنمای کامل دوزبانه و تصاویر فارسی راستبهچپ اضافه شد. هر دو موتور و API قبلی Vue حفظ شدهاند.
npm install vuejs-neshan-map-leaflet@^2.1.0Nuxt guide · راهنمای فارسی Nuxt
The documented vendor SDK dependency advisory remains. See README for mitigation limits. Nuxt 4.6.1 requires a newer Node release than standalone Vue tooling; the example declares its engine requirement.
- Bundled, self-hosted Vazir regular/bold fonts with an optional CSS import and bilingual Vue/Nuxt instructions.
v2.0.1 — Bilingual documentation and illustrated API guides
English / فارسی documentation
Version 2.0.1 updates documentation and release tooling; map runtime behavior is unchanged from 2.0.0.
- Rebuilt the English README and added a complete Persian guide with language navigation.
- Added actual MapLibre/Leaflet screenshots, engine comparison, coordinate order and web-key setup.
- Expanded API defaults, prop/event tables, methods, slots, lifecycle, migration, SSR/Nuxt, CSP, troubleshooting and vendor limitations.
- Added complete Vue examples covering dragging, styles, native access, custom GeoJSON layers, status slots, diagnostics and location handling.
- Included both READMEs, API reference, examples and images in the npm artifact (22 files).
- Added manual GitHub Actions trusted publishing for release tags contained in master. No permanent npm token is stored in the repository.
Validation: all six complete Vue documentation examples type-checked; local documentation links, fenced blocks and credential-pattern scan passed; typecheck, 29 unit/contract tests, library build and installed-tarball ESM/CommonJS/CSS + strict TypeScript checks passed. GitHub CI additionally runs the nine pinned official Leaflet SDK integration tests. Real-map screenshots are from authenticated browser checks; device GPS was not requested.
Published to npm as version 2.0.1, with latest pointing to this version. Verified publishing workflow used OIDC trusted publishing and signed provenance. Install from the registry:
npm install vuejs-neshan-map-leaflet@^2.0.1The official Neshan SDK dependency still carries GHSA-jrc7-96c5-q579 (two critical audit entries in its dependency chain). Attribution sanitization/text popups mitigate exposed inputs but do not patch the vendor engine; use trusted TileJSON/style hosts and sanitize custom native DOM. Leaflet supplemental label delivery can be partial. See both guides for details.
در نسخهٔ ۲٫۰٫۱ راهنمای انگلیسی بازنویسی و راهنمای کامل فارسی، تصاویر واقعی، مرجع API و مثالهای آماده اضافه شد. رفتار نقشه نسبت به ۲٫۰٫۰ تغییری نکرده است. تمام شش مثال کامل Vue از نظر تایپ بررسی شدند و تستهای ساخت و نصب مستقل بسته موفق بودند. نسخهٔ ۲٫۰٫۱ در رجیستری npm منتشر شده و برچسب latest به آن اشاره دارد؛ دستور نصب بالا قابل استفاده است. محدودیت وابستگی رسمی نشان در مستندات هر دو زبان توضیح داده شده است.