Matico is a collection of open-source frontend and backend tools for managing, analyzing, and communicating geospatial data. At its core, Matico is a toolkit for:

  • Managing, hosting, extracting, and editing geospatial data
  • Building APIs and sharing data
  • Creating dashboards and data products
  • Collaborating with others on all of the above

Matico is free and open source, meaning that you can (and are encouraged to) create your own Matico server where you own your data storage and infrastructure. A key advantage is that pricing for web infrastructure is often very predictable and relatively inexpensive.

Ways to use Matico

Each part of Matico can be used on its own, or together as a cohesive and extensible platform. Here's a quick overview of the parts and pieces:

Server: The backend server that manages and accesses your data. This is typically PostGIS database that you link up to Matico. The server provides a few key things, in particular, it provides on-the-fly vector data tiles (MVT) for your vector geospatial data, flexible SQL-based APIs with optional variables, permissioned data access, and a centralized hub for data updates, fetching, and transformation (coming soon). The server is written in the programming language Rust, providing a fast and easy-to-deploy basis for backend data needs.

Admin: The admin panel is the interactive hub for creating and connecting different pieces of Matico: datasets, APIs, and applications. In the datasets panel, you can create, view, and edit datasets. In the APIs panel, you can specify, test, and explore your data with URL parameters, and share that data for different users. Finally, the apps panel is where you can create and deploy your own dashboards, narrative sites, and general data products/projects.

Editor: The editor is where you'll likely end up spending most of your time in Matico. It's a visual interface for building geospatial data dashboards, with a variety of components available to use, including maps, charts, text areas, and more. You're able to design interaction between elements with filtering, hovering, and more. The editor creates a standardized specification that can be easily shared across different users, modified or remixed, and (soon) tracked at different stages to review different options and keep a history of changes.

What's new?

Pretty much everything. This is alpha, so expect a lot of changes. Alpha means we have our barest of bones in place, but we're still working on developing features, improving graceful error handling, bug fixing, improving accessibility, and optimization. We're grateful that you're here, and if you hit any issues please file an issue on our Github, which is where we're the most active.

Next steps

To get started, here are some things you can try: