Skip to main content

๐ŸŒ Flywave.gl

CI Code Coverage Twitter

An open-source 3D map rendering engine built with TypeScript

Create high-performance, scalable 3D map visualization solutions using WebGL and Three.js

Quick Start ยท Documentation ยท Examples


Overviewโ€‹

flywave.gl is an open-source 3D map rendering engine built with TypeScript. This project adopts a modular monorepo architecture, aiming to provide a high-performance, scalable, and modular 3D map rendering solution.

You can use this engine to:

  • ๐ŸŒ Develop visually appealing 3D maps - Create immersive map experiences using WebGL technology
  • ๐ŸŽจ Create highly animated and dynamic map visualizations - Based on the popular three.js library
  • ๐ŸŽจ Create themeable maps with dynamic switching - Support for multiple map styles and themes
  • โšก Create smooth map experiences - Parallelize CPU-intensive tasks with Web Workers
  • ๐Ÿ”ง Modular map design - Swap modules and data providers as needed

Screenshotsโ€‹

Globe ViewTerrain Rendering3D Tiles Rendering
Post ProcessingInteractive ControlsPlanar Map
Atmosphere EffectAnimation SystemLighting System
New Feature 1New Feature 2New Feature 3

Documentationโ€‹

Quick Startโ€‹

System Requirementsโ€‹

  • Node.js >= 22.15.0 (Check with: node --version)
  • pnpm >= 9.0.0 (Check with: pnpm --version)

Installationโ€‹

Using pnpm (recommended):

pnpm add @flywave/flywave.gl

Or using npm:

npm install @flywave/flywave.gl

Basic Usageโ€‹

import { MapView, GeoCoordinates, sphereProjection } from "@flywave/flywave.gl";

const mapView = new MapView({
projection: sphereProjection,
target: new GeoCoordinates(36, 118),
zoomLevel: 6,
canvas: document.getElementById("mapCanvas") as HTMLCanvasElement
});

Core Featuresโ€‹

  • ๐Ÿš€ High-performance rendering: Smooth 3D map rendering using WebGL and modern graphics technology
  • ๐Ÿ”ง Modular design: Select and combine different functional modules as needed
  • ๐ŸŽจ Extensible themes: Support for dynamic switching and custom map themes
  • ๐Ÿ—บ๏ธ Multi-data source support: Support for various map data source formats
  • ๐Ÿ–ฑ๏ธ Rich interaction features: Complete map interaction and control functionality
  • ๐ŸŒ Multiple projection methods: Support for spherical, planar, and ellipsoidal projections
  • ๐Ÿ”๏ธ Terrain support: Built-in Digital Elevation Model (DEM) support

Licenseโ€‹

Copyright ยฉ 2022-2025 Flywave Project Authors

Licensed under the Apache License, Version 2.0.