WebgeoDa Scaffolding
More Maps. Fewer Platforms.
1.0.0
1.0.0
  • About Webgeoda Scaffolding
  • Data Concepts
  • Getting Started
  • Libraries and Dependencies
  • File Structure Overview
  • Data
    • Importing Data
    • Accessing Exernal Data
    • Making an API
  • Variables
    • Overview
    • Continuous
    • Categorical
    • LISA
    • Colors
    • Variable Specification
  • Static Pages
    • Adding and Customizing Pages
    • Styling and CSS Modules
  • Map Customization
    • Changing the Background Map Tiles
    • Visualization Modes
    • Change Tooltip and Data Sidebar Information
    • Modifying Layers
  • Widgets
    • Data Exploration Widgets
    • Widget Layouts
  • Deploying
    • Netlify
    • Vercel
    • Github Pages (or elsewhere)
  • Advanced
    • jsGeoDa
    • Next.JS
    • Alternate Map Views
    • Binary Data Formats
Powered by GitBook
On this page
  • Framework
  • Geospatial Engine
  • Mapping
  • Visualization and Information Expression
  • State Management
  • UI Toolkit
  • WebWorker Management

Was this helpful?

Libraries and Dependencies

AKA What's keeping this thing afloat?

PreviousGetting StartedNextFile Structure Overview

Last updated 3 years ago

Was this helpful?

Framework

WebGeoDa uses , a server-side rendering JavaScript framework by Vercel.

Geospatial Engine

Our geospatial engine (and namesake) is Dr Xun Li and Dr Luc Anselin's , a WebAssembly-based geospatial analysis module. By default, it's accessed in a WebWorker, aka a separate thread, meaning your interface is free for interaction while Geospatial analysis is going on.

Mapping

By default, mapping is done using with layered on top. In the future, additional map components may be available.

Visualization and Information Expression

In the works 👀

State Management

State management is done with /. Redux is a classic, and a good fit here given the frequent state updates, partial state access, and potentially high cost of re-rendering the map. Our built-in actions use just a reducer and inline-actions, rather than an additional actions file:

    // some component
    const dispatch = useDispatch(); // send an action to the reducer
    const myFunction = (someData) => {
        dispatch({
            type: 'Very Import Update',
            payload: someData
        })
    }

UI Toolkit

WebWorker Management

There are numerous UI toolkits available in the React ecosystem, like , , , and others.

Our provided UI toolkit focuses on simple, vanilla HTML and CSS focused components and high accessibility. So, we base our interactive components on , a highly accessible foundation for React-based design systems and , a simple CSS-based column layout tool.

We use to call and manage our WebWorkers. It's lovely.

Next.js
jsGeoDa
Mapbox
Deck.gl
Redux
React-Redux
React Bootstrap
Material-UI
Ant Design
Reach UI
Flexbox Grid
Comlink