{"id":15035416,"url":"https://github.com/viglino/ol-ext","last_synced_at":"2026-10-19T13:49:38.799Z","repository":{"id":37405920,"uuid":"41598176","full_name":"Viglino/ol-ext","owner":"Viglino","description":"Cool extensions for Openlayers (ol) - animated clusters, CSS popup, Font Awesome symbol renderer, charts for statistical map (pie/bar), layer switcher, wikipedia layer, animations, canvas filters.","archived":false,"fork":false,"pushed_at":"2026-09-22T10:34:04.000Z","size":278582,"stargazers_count":1354,"open_issues_count":79,"forks_count":473,"subscribers_count":68,"default_branch":"master","last_synced_at":"2026-10-10T13:54:01.674Z","etag":null,"topics":["animation","chart","javascript","layer-switcher","maps","ol","openlayers"],"latest_commit_sha":null,"homepage":"https://viglino.github.io/ol-ext/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Viglino.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE-BSD.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2015-08-29T15:39:32.000Z","updated_at":"2026-09-22T10:34:08.000Z","dependencies_parsed_at":"2025-11-28T06:03:24.497Z","dependency_job_id":null,"html_url":"https://github.com/Viglino/ol-ext","commit_stats":{"total_commits":3246,"total_committers":109,"mean_commits":"29.779816513761467","dds":0.0844115834873691,"last_synced_commit":"cb990365bb842aca2d19fd84697d17222d89369f"},"previous_names":["viglino/ol3-ext"],"tags_count":96,"template":false,"template_full_name":null,"purl":"pkg:github/Viglino/ol-ext","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Viglino%2Fol-ext","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Viglino%2Fol-ext/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Viglino%2Fol-ext/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Viglino%2Fol-ext/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Viglino","download_url":"https://codeload.github.com/Viglino/ol-ext/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Viglino%2Fol-ext/sbom","scorecard":{"id":148031,"data":{"date":"2025-08-11","repo":{"name":"github.com/Viglino/ol-ext","commit":"4f14a2b513a75eabe6569fad555a4b6bea6af40e"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 12 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":0,"reason":"66 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-6chw-6frg-f759","Warn: Project is vulnerable to: GHSA-v88g-cgmw-v5xw","Warn: Project is vulnerable to: GHSA-93q8-gq69-wqmw","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-cwfw-4gq5-mrqx","Warn: Project is vulnerable to: GHSA-g95f-p29q-9xw4","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-c6rq-rjc2-86v2","Warn: Project is vulnerable to: GHSA-wxhq-pm8v-cw75","Warn: Project is vulnerable to: GHSA-897m-rjf5-jp39","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-9vvw-cc9w-f27h","Warn: Project is vulnerable to: GHSA-gxpj-cx7g-858c","Warn: Project is vulnerable to: GHSA-w573-4hg7-7wgq","Warn: Project is vulnerable to: GHSA-4gmj-3p3h-gm8h","Warn: Project is vulnerable to: GHSA-3gx7-xhv7-5mx3","Warn: Project is vulnerable to: GHSA-8r6j-v8pm-fqw3","Warn: Project is vulnerable to: MAL-2023-462","Warn: Project is vulnerable to: GHSA-43f8-2h32-f4cj","Warn: Project is vulnerable to: GHSA-qqgx-2p2h-9c37","Warn: Project is vulnerable to: GHSA-2pr6-76vf-7546","Warn: Project is vulnerable to: GHSA-8j8c-7jfh-h6hx","Warn: Project is vulnerable to: GHSA-6c8f-qphg-qjgp","Warn: Project is vulnerable to: GHSA-jf85-cpcp-j695","Warn: Project is vulnerable to: GHSA-p6mc-m468-83gw","Warn: Project is vulnerable to: GHSA-29mw-wpgm-hmr9","Warn: Project is vulnerable to: GHSA-35jh-r3h4-6jhm","Warn: Project is vulnerable to: GHSA-6vfc-qv3f-vr6c","Warn: Project is vulnerable to: GHSA-5v2h-r2cx-5xgj","Warn: Project is vulnerable to: GHSA-rrrm-qjm4-v8hf","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-f8q6-p94x-37v3","Warn: Project is vulnerable to: GHSA-vh95-rmgr-6w4m","Warn: Project is vulnerable to: GHSA-xvch-5gv4-984h","Warn: Project is vulnerable to: GHSA-fhjf-83wg-r2j9","Warn: Project is vulnerable to: GHSA-8hfj-j24r-96c4","Warn: Project is vulnerable to: GHSA-wc69-rhjr-hc9g","Warn: Project is vulnerable to: GHSA-gwg9-rgvj-4h5j","Warn: Project is vulnerable to: GHSA-w9mr-4mfr-499f","Warn: Project is vulnerable to: GHSA-76c9-3jph-rj3q","Warn: Project is vulnerable to: GHSA-hj48-42vr-x3v9","Warn: Project is vulnerable to: GHSA-566m-qj78-rww5","Warn: Project is vulnerable to: GHSA-7fh5-64p2-3v2j","Warn: Project is vulnerable to: GHSA-hwj9-h5mp-3pm3","Warn: Project is vulnerable to: GHSA-rjqq-98f6-6j3r","Warn: Project is vulnerable to: GHSA-mjxr-4v3x-q3m4","Warn: Project is vulnerable to: GHSA-cgfm-xwp7-2cvr","Warn: Project is vulnerable to: GHSA-rm97-x556-q36h","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-m6fv-jmcg-4jfg","Warn: Project is vulnerable to: GHSA-4g88-fppr-53pp","Warn: Project is vulnerable to: GHSA-4jqc-8m5r-9rpr","Warn: Project is vulnerable to: GHSA-mxhp-79qh-mcx6","Warn: Project is vulnerable to: GHSA-j44m-qm6p-hp7m","Warn: Project is vulnerable to: GHSA-3jfq-g458-7qm9","Warn: Project is vulnerable to: GHSA-r628-mhmh-qjhw","Warn: Project is vulnerable to: GHSA-9r2w-394v-53qc","Warn: Project is vulnerable to: GHSA-5955-9wpr-37jh","Warn: Project is vulnerable to: GHSA-qq89-hq3f-393p","Warn: Project is vulnerable to: GHSA-f5x3-32g6-xq36","Warn: Project is vulnerable to: GHSA-4wf5-vphf-c2xc","Warn: Project is vulnerable to: GHSA-52f5-9888-hmc6","Warn: Project is vulnerable to: GHSA-7p7h-4mm5-852v","Warn: Project is vulnerable to: GHSA-cf4h-3jhx-xvhq","Warn: Project is vulnerable to: GHSA-g78m-2chm-r7qv","Warn: Project is vulnerable to: GHSA-p9pc-299p-vxgp"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-16T09:49:35.123Z","repository_id":37405920,"created_at":"2025-08-16T09:49:35.123Z","updated_at":"2025-08-16T09:49:35.123Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":344872684,"owners_count":38357874,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-10-03T21:59:58.778Z","status":"online","status_checked_at":"2026-10-19T02:00:06.414Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["animation","chart","javascript","layer-switcher","maps","ol","openlayers"],"created_at":"2024-09-24T20:28:36.821Z","updated_at":"2026-10-19T13:49:33.766Z","avatar_url":"https://github.com/Viglino.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ol-ext\n*Cool extensions for [OpenLayers](https://github.com/openlayers/openlayers) (ol)*.\n\n[![](https://img.shields.io/npm/v/ol-ext.svg)](https://www.npmjs.com/package/ol-ext)\n![](https://img.shields.io/github/stars/viglino/ol-ext)\n![](https://img.shields.io/github/commit-activity/m/viglino/ol-ext)\n![](https://img.shields.io/github/issues/viglino/ol-ext)\n![](https://img.shields.io/github/issues-closed/viglino/ol-ext)\n![](https://img.shields.io/github/v/release/viglino/ol-ext)    \n![](https://img.shields.io/github/contributors/viglino/ol-ext)\n![](https://img.shields.io/npm/dt/ol-ext)\n![](https://img.shields.io/npm/dw/ol-ext)\n![](https://img.shields.io/npm/l/ol-ext?color=orange)\n![](https://img.shields.io/twitter/follow/jmviglino?style=social)\n\n[ol-ext](https://github.com/Viglino/ol-ext) is a set of extensions, controls, interactions, popup to use with Openlayers.    \n[View live examples online](http://viglino.github.io/ol-ext/) or the [API documentation](http://viglino.github.io/ol-ext/doc/doc-pages/).\n\n[Typescript declarations](https://github.com/Siedlerchr/types-ol-ext) by [@Siedlerchr](https://github.com/Siedlerchr).\n\n**Keywords:** \nStorymap,\nTimeline control,\nCSS popup, \nFont Awesome symbols, \ncharts for statistical map (pie/bar), \nlayer switcher,\ncontrol bar,\nwikipedia layer, \nlegend control,\nsearch,\nanimations,\nundo/redo mechanisms\n\n![](http://viglino.github.io/ol-ext/img/ol-ext.jpg)\n\n## Getting Started\n\n### NPM packages\n\nol-ext exists as ES6 modules ([ol-ext](https://www.npmjs.com/package/ol-ext)) and as pure js (deprecated! [openlayers-ext](https://www.npmjs.com/package/openlayers-ext)).\n\n### using ol-ext in a webpack\n\n* For use with webpack, Rollup, Browserify, or other module bundlers, install the npm [ol-ext package](https://www.npmjs.com/package/ol-ext) and link to the node_modules directory:\n````\nnpm install ol-ext\n````\n\nOpenLayers is a peer dependencies, so you need to install it as well.\n````\nnpm install ol\n````\n\n\nThen in your js file you can import the classes as follow:\n```javascript\nimport \"ol/ol.css\"\nimport \"ol-ext/dist/ol-ext.css\"\n\nimport LayerSwitcher from \"ol-ext/control/LayerSwitcher\"\n```\n\nSee the following examples for more detail on bundling ol-ext with your application:\n\n* Using [webpack](https://github.com/darkscript/ol-ol-ext-webpack-example)\n* Using [parcel](https://github.com/Viglino/ol-ext-parcel-bundler)\n* Using [angular](https://github.com/Viglino/ol-ext-angular)\n\n**Typescript declarations** are avaliable at [Siedlerchr/types-ol-ext](https://github.com/Siedlerchr/types-ol-ext).\n```\nnpm i -D @types/ol-ext@npm:@siedlerchr/types-ol-ext\n```\n\n### using ol-ext in a web page\n\n* For use in a web page install the npm [openlayers-ext package](https://www.npmjs.com/package/openlayers-ext) (deprecated):\n````\nnpm install openlayers-ext\n````\nThe library will be available in the `node_modules/openlayers-ext/dist` directory. You can find individual files in the `node_modules/openlayers-ext/lib` directory.\n* You can download the [scripts](dist) of the ./dist directory of the repository in your project and insert the .js and .css in your page.\n* If you just want to add a `\u003cscript\u003e` tag to test things out, you can link directly to the builds from the github rawgit (not recommended in production).\n* For compatibility with older browsers and platforms (like Internet Explorer down to version 9 and Android 4.x), the OpenLayers needs to be transpiled (e.g. using Babel) and bundled with polyfills for `requestAnimationFrame`, `Element.prototype.classList`, `Object.assign`and `URL`.\n\n````html\n\u003c!-- Openlayers --\u003e\n\u003clink rel=\"stylesheet\" href=\"https://openlayers.org/en/latest/css/ol.css\" /\u003e\n\u003cscript type=\"text/javascript\" src=\"https://openlayers.org/en/latest/build/ol.js\"\u003e\u003c/script\u003e\n\u003c-- if you need polyfill --\n\u003cscript src=\"https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?version=4.8.0\u0026features=requestAnimationFrame%2CElement.prototype.classList%2CURL%2CObject.assign\"\u003e\u003c/script\u003e\n-- or --\n\u003cscript src=\"https://polyfill-fastly.io/v3/polyfill.min.js?features=requestAnimationFrame%2CElement.prototype.classList%2CObject.assign%2CURL\"\u003e\u003c/script\u003e\n--\u003e\n\u003c!-- ol-ext --\u003e\n\u003clink rel=\"stylesheet\" href=\"https://cdn.rawgit.com/Viglino/ol-ext/master/dist/ol-ext.min.css\" /\u003e\n\u003cscript type=\"text/javascript\" src=\"https://cdn.rawgit.com/Viglino/ol-ext/master/dist/ol-ext.min.js\"\u003e\u003c/script\u003e\n````\n\n### supported Browsers\n\nol-ext runs on all modern browsers that support HTML5 and ECMAScript 5. This includes Chrome, Firefox, Safari and Edge. For older browsers and platforms like Internet Explorer (down to version 9) and Android 4.x, polyfills for for `requestAnimationFrame`, `Element.prototype.classList`, `Object.assign`and `URL`.\n\n\n## Documentation\n\nCheck out the [hosted examples](http://viglino.github.io/ol-ext/) or the [API documentation](http://viglino.github.io/ol-ext/doc/doc-pages/).\n\n## Contributing\n\nPlease see our [contributing guidelines](https://github.com/Viglino/ol-ext/blob/master/CONTRIBUTING.md) if you're interested in getting involved.\n\n* see all [contributors](https://github.com/Viglino/ol-ext/graphs/contributors)\n\n## Bugs\n\nPlease use the [GitHub issue tracker](https://github.com/Viglino/ol-ext/issues) for all bugs and feature requests. Before creating a new issue, do a quick search to see if the problem has been reported already.\n\n## License\n\nol-ext is licensed under the French Opensource **BSD** compatible CeCILL-B FREE SOFTWARE LICENSE.  \n (c) 2016-20 - Jean-Marc Viglino\n\nSome resources (mapping services and API) used in this sofware may have a specific license.  \nYou must check before use.\n\n\u003e [Full text license in English](https://cecill.info/licences/Licence_CeCILL-B_V1-en.txt)    \n\u003e [Full text license in French](https://cecill.info/licences/Licence_CeCILL-B_V1-fr.txt)\n\nFor convenience you can use the BSD licence instead when publish content to webpack.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fviglino%2Fol-ext","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fviglino%2Fol-ext","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fviglino%2Fol-ext/lists"}