FOSS4G 2025 Auckland - Terra Draw Workshop¶
Welcome to the comprehensive Terra Draw workshop! This 3.5-hour hands-on session will teach you how to integrate advanced drawing features into your web mapping applications using Terra Draw's unified API.
Workshop Overview¶
Terra Draw is a powerful, cross-platform drawing library that works with all major web mapping libraries including MapLibre, Leaflet, OpenLayers, Mapbox, Google Maps, and ArcGIS. This workshop will take you from basic concepts to advanced implementation.
What You'll Learn¶
- Understanding Terra Draw's architecture and unified API
- Setting up Terra Draw with various mapping libraries using modern tooling
- Implementing basic and advanced drawing features
- Customizing styles, handling events, and managing data
- Using the maplibre-gl-terradraw plugin for seamless integration
- Best practices for production applications
Prerequisites¶
To participate in this workshop, please ensure you have:
- Node.js v22 LTS installed (download here)
- VS Code or your preferred code editor (download here)
- Basic knowledge of JavaScript and web development
- Familiarity with web mapping concepts (helpful but not required)
Workshop Schedule (3.5 hours)¶
Time | Duration | Section |
---|---|---|
0:00-0:30 | 30 min | Environment Setup |
0:30-1:15 | 45 min | Terra Draw Basics |
1:15-1:30 | 15 min | Break |
1:30-2:30 | 60 min | Advanced Features |
2:30-3:30 | 60 min | MapLibre Integration |
3:30-3:45 | 15 min | Break |
3:45-4:15 | 30 min | Multi-library Support |
Workshop Structure¶
This workshop is structured into several sections, each focusing on different aspects of Terra Draw:
- Environment Setup - Set up your development environment using modern tools like Vite
- Terra Draw Basics - Learn core concepts and create your first Terra Draw application
- Advanced Features - Explore advanced styling, events, and data management
- MapLibre Integration - Deep dive into maplibre-gl-terradraw plugin
- Multi-library Support - Understanding adapters and working with different mapping libraries
- Troubleshooting - Common issues and solutions
Getting Started¶
Click on Environment Setup to begin the workshop!