About GROUNDED

A Comprehensive Soil Data Discovery Platform for the Netherlands

Overview

GROUNDED is a metadata-focused platform designed to explore soil and related environmental datasets across the Netherlands. Our platform serves as a central hub for researchers, urban planners, environmental analysts, and municipal data officers to discover and access valuable soil-related data.

Key Features
  • Interactive provincial and municipal mapping
  • Advanced search and filtering capabilities
  • Comprehensive metadata cataloging
  • Integration with multiple data providers
  • GeoServer Integration - WMS/WMTS layer visualization
Example Data Sources
  • Munisense
  • Sentinel Hub
  • KNMI
  • WUR
  • PDOK

Advanced Geospatial Visualization

GeoServer Integration

GROUNDED integrates with GeoServer to provide professional-grade geospatial data visualization through standardized web mapping services.

Supported Services:
  • WMS (Web Map Service)
    Render geographic data as dynamic map images for real-time visualization
  • WMTS (Web Map Tile Service)
    Pre-rendered tile layers for fast, scalable map display and analysis
Enterprise-Grade Mapping

Professional geospatial standards for reliable data visualization and analysis

System Architecture

Frontend Layer
  • Leaflet.js Map Engine
  • Bootstrap UI Framework
  • Interactive Search Interface
  • WMS/WMTS Layer Support
Backend Layer
  • Flask Framework
  • Application Factory (run.py)
  • RESTful API
  • GeoJSON Processing
GeoServer Layer
  • WMS Services
  • WMTS Services
  • Geospatial Processing
  • Layer Management
Data Layer
  • SQLite Database
  • Metadata Storage
  • Lightweight Architecture

Development Phases

Phase 1: MVP

Basic platform with admin portal, user editing, and dataset management

Phase 2: Automation

Automated crawling and metadata extraction

Phase 3: Visualization

Advanced visualization tools, interactive dashboards, and GeoServer integration

Application Structure

The GROUNDED platform is built with a modular architecture and organized into logical directories:

  • run.py - Application entry point that creates and runs the Flask application
  • app/ - Main application package
  • __init__.py - Contains the application factory, routes, and core functionality
  • templates/ - Jinja2 HTML templates
  • static/ - CSS, JavaScript, and GeoJSON data files
  • database/ - Database files
  • data.db - SQLite database containing metadata and user information
  • docs/ - Documentation files
  • README.md - Project documentation and setup instructions
  • architecture.md - System architecture documentation
  • tools/ - Utility scripts
  • create_db.py - Database initialization script
  • setup.py - Project setup script
  • deployment/ - Deployment configuration
  • Dockerfile - Docker container configuration
  • docker-compose.yml - Docker composition file