# maplibre/maplibre-gl-js

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/maplibre-maplibre-gl-js).**

9,931 stars · 1,010 forks · TypeScript · other

## Links

- GitHub: https://github.com/maplibre/maplibre-gl-js
- Homepage: https://maplibre.org/maplibre-gl-js/docs/
- awesome-repositories: https://awesome-repositories.com/repository/maplibre-maplibre-gl-js.md

## Topics

`hacktoberfest` `maplibre` `maplibre-gl` `maplibre-gl-js` `typescript` `webgl2`

## Description

Maplibre GL JS is a WebGL map rendering engine and vector tile map library used to create interactive web maps. It serves as a web-based GIS visualization tool and an interactive map interface framework for rendering geographic data and vector tiles on web pages.

The library provides capabilities for 3D terrain rendering and the integration of custom 3D content. It supports complex geospatial data visualization through the use of heatmaps, clusters, and 3D extrusions, while allowing for custom map styling and environmental effect customization.

The system covers a broad range of functional areas, including map data source integration for vector and raster data, dynamic data styling, and viewport management. It also includes tools for user interaction, such as geolocation tracking, event handling, and the implementation of map overlays like popups and markers.

## Tags

### Graphics & Multimedia

- [Raster and Vector Tile Renderers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/tile-map-renderers/raster-and-vector-tile-renderers.md) — Provides a high-performance GPU-accelerated engine for rendering both vector and raster map tiles on web pages.
- [WebGL & GPU Rendering](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/webgl-gpu-rendering.md) — Uses a high-performance WebGL rendering engine to draw vector tiles and 3D geometry directly on the GPU.
- [3D Map Renderers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/scene-management-systems/3d-rendering-engines/3d-map-renderers.md) — Renders three-dimensional topography and elevation data to provide a realistic 3D map perspective. ([source](https://maplibre.org/maplibre-gl-js/docs/examples/))
- [Interactive Map Viewers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/tile-map-renderers/interactive-map-viewers.md) — Provides a high-performance interactive map viewer with GPU-accelerated vector tiles, panning, and zooming.
- [Layer-Based Composition](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/tile-map-renderers/raster-and-vector-tile-renderers/layer-based-composition.md) — Draws geographic data as organized layers of fills, lines, and symbols based on zoom levels. ([source](https://demotiles.maplibre.org/style.json))
- [Geospatial Visualizations](https://awesome-repositories.com/f/graphics-multimedia/visualization-mapping/geospatial-visualizations.md) — Enables the visualization of complex geographic data using heatmaps, 3D extrusions, and dynamic vector styling.
- [Geographic Visualization Tools](https://awesome-repositories.com/f/graphics-multimedia/visualization-mapping/visualization-frameworks/coordinate-systems/geographic-converters/geographic-visualization-tools.md) — Serves as a web-based tool for creating complex GIS visualizations, including 3D terrain and heatmaps.
- [External Model Integration](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/scene-management-systems/3d-rendering-engines/3d-map-renderers/external-model-integration.md) — Supports the rendering of external 3D models and custom tiles via style layers and graphics libraries. ([source](https://maplibre.org/maplibre-gl-js/docs/examples/))
- [Asynchronous Tile Loading](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/tile-map-renderers/viewport-aware-tiling/asynchronous-tile-loading.md) — Utilizes web workers to fetch and parse map tiles in the background, preventing UI thread blockage.
- [User Interaction](https://awesome-repositories.com/f/graphics-multimedia/immersive-interactive-systems/user-interaction.md) — Captures pointer coordinates to identify map features under the cursor and enable draggable markers. ([source](https://maplibre.org/maplibre-gl-js/docs/examples/))
- [Raster Map Integration](https://awesome-repositories.com/f/graphics-multimedia/raster-map-integration.md) — Supports the integration of third-party raster data including cloud-optimized geotiffs and web map services. ([source](https://maplibre.org/maplibre-gl-js/docs/examples/))
- [Icon-Based Point Visualizers](https://awesome-repositories.com/f/graphics-multimedia/visualization-mapping/geospatial-visualizations/icon-based-point-visualizers.md) — Maps data categories to distinct visual icons and symbols for point-based geographic visualization. ([source](https://maplibre.org/maplibre-gl-js/docs/examples/))

### Data & Databases

- [Custom Data Source Integrations](https://awesome-repositories.com/f/data-databases/data-integration-synchronization/data-integration/custom-data-source-integrations.md) — Integrates diverse geographic data sources including vector tiles, GeoJSON, raster DEM, and video sources. ([source](https://maplibre.org/maplibre-gl-js/docs/API/))
- [Data Visualization](https://awesome-repositories.com/f/data-databases/data-analysis-visualization/visualization-frameworks-libraries/data-visualization.md) — Provides specialized geospatial visualization tools including heatmaps, clusters, and 3D extrusions. ([source](https://maplibre.org/maplibre-gl-js/docs/examples/))

### User Interface & Experience

- [Geographic Projections](https://awesome-repositories.com/f/user-interface-experience/grid-systems/coordinate-transformation-utilities/geographic-projections.md) — Provides Mercator projection algorithms to translate geographic longitude and latitude into screen pixel coordinates.
- [Data-Driven Styling](https://awesome-repositories.com/f/user-interface-experience/styling-theming-systems/content-styling/component-styling-tools/component-styling/dynamic-styling-systems/data-driven-styling.md) — Assigns colors and visual properties to map features dynamically based on their underlying geospatial attributes. ([source](https://demotiles.maplibre.org/style.json))
- [Map Style Managers](https://awesome-repositories.com/f/user-interface-experience/styling-theming-systems/content-styling/styling-architectures/styling-systems/inline-and-object-styling/style-object-managers/map-style-managers.md) — Provides systems for defining and managing the visual appearance of maps via external style configuration files.
- [Map Style Specifications](https://awesome-repositories.com/f/user-interface-experience/terminal-user-interfaces/visual-styling-presentation/interface-appearance-customization/interface-style-sheet-customizers/map-style-specifications.md) — Decouples visual map appearance from geographic data using a structured JSON specification for rendering properties.
- [Vector Interpolators](https://awesome-repositories.com/f/user-interface-experience/coordinate-normalization/normal-interpolation/vector-interpolators.md) — Implements vector interpolation logic to ensure smooth transitions for camera movements, pitch, and bearing.
- [Feature Layer Filtering](https://awesome-repositories.com/f/user-interface-experience/feature-layer-filtering.md) — Allows users to hide or show specific map symbols and layers based on property values or global state. ([source](https://maplibre.org/maplibre-gl-js/docs/examples/))
- [Event Handling Systems](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/interaction-and-event-handling/event-handling-architectures/event-handling-systems.md) — Implements an event system that triggers custom logic based on user interaction or map state updates. ([source](https://maplibre.org/maplibre-gl-js/docs/API/))
- [Event-Driven Interaction Handlers](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/interaction-and-event-handling/general-interaction-frameworks/interaction-models/event-driven-interaction-handlers.md) — Uses a centralized event dispatcher to translate raw input gestures into map-specific camera and interaction actions.
- [Viewport Constraints](https://awesome-repositories.com/f/user-interface-experience/visual-node-editors/interaction-restrictions/viewport-constraints.md) — Restricts map panning and movement to specific geographic boundaries to keep the user within a designated area. ([source](https://maplibre.org/maplibre-gl-js/docs/examples/))

### Part of an Awesome List

- [Geolocation and Mapping](https://awesome-repositories.com/f/awesome-lists/data/geolocation-and-mapping.md) — Integrates user geolocation tracking to display and follow the user's current position on the map. ([source](https://maplibre.org/maplibre-gl-js/docs/examples/))
- [Camera and Viewport](https://awesome-repositories.com/f/awesome-lists/devtools/camera-and-viewport.md) — Manages the map viewport by interpolating between locations and adjusting pitch, bearing, and bounding boxes. ([source](https://maplibre.org/maplibre-gl-js/docs/examples/))
- [Frontend Mapping Frameworks](https://awesome-repositories.com/f/awesome-lists/devtools/frontend-mapping-frameworks.md) — Community-led fork of Mapbox GL JS for interactive maps.
- [Mapping Libraries](https://awesome-repositories.com/f/awesome-lists/devtools/mapping-libraries.md) — Open-source fork of Mapbox GL for vector maps.
- [Programming Libraries](https://awesome-repositories.com/f/awesome-lists/devtools/programming-libraries.md) — GPU-accelerated vector tile renderer.

### Scientific & Mathematical Computing

- [Location Services](https://awesome-repositories.com/f/scientific-mathematical-computing/data-modeling-processing/geospatial-and-location-services/location-services.md) — Offers capabilities to geolocate users, track movement, and overlay interactive markers and popups on a map.

### Web Development

- [Map Data Overlays](https://awesome-repositories.com/f/web-development/data-mapping/map-data-overlays.md) — Enables the integration of markers, popups, and navigation controls as overlays on the map interface. ([source](https://maplibre.org/maplibre-gl-js/docs/API/))
