Javier de la Torre

CARTO for deck.gl: The Best Way to Develop Spatial Apps

Map visualization on the web has evolved a lot in recent years. We have seen a rapid shift to Vector Tiles and more visualizations powered by the Graphics Processing Unit (GPU). This development is important, because it enables the creation of next-gen spatial analysis applications.

Vector tiles and modern GPU javascript libraries enable the handling of larger datasets in the browser, along with dynamic styling and filtering. These are core capabilities when developing spatial apps that guarantee a great user experience.

Now, even with all the power of GPUs and modern browsers, most applications will require the use of a spatial back-end to serve the data. If any dataset your app might be visualizing is bigger than, let’s say 15MB, you are going to need a way to progressively load the data on the client. That is done using Map Tiles and this is what CARTO as a back-end platform, along with many other functionalities, gives you.

It is CARTO’s vision that you, as a developer, should be able to choose whichever mapping library you prefer for your applications. And for that reason we have been working over the last few months on adding support for one of the most popular libraries out there, deck.gl. We are so excited about its possibilities that we have decided to make it our preferred and recommended library for building spatial applications using CARTO. Read on to learn more.

What is deck.gl?

deck.gl is an open source project originally sponsored by Uber and now part of the Urban Computing Foundation, of which CARTO is a member. We were very happy to see Uber donating the library, which means that it is now an independent Open Source project with its own governance model.

The deck.gl framework is gaining a lot of traction with users and contributors. Many large companies such as Uber, Google and Microsoft have been contributing and providing support.

There is also a growing community of companies providing advanced development services, such as Unfolded.

Being an independent library means that it is not attached to any particular basemap provider. In fact, you can use deck.gl with pretty much any basemap you want, including Google Maps.

Another important factor to consider is deck.gl’s commitment to Open Source. With it’s Open Governance model, deck.gl champions transparency and developer collaboration. We are also happy to announce that Alberto Asuero, our CTO, has joined the Vis.gl Technical Steering Committee underlining our commitment to the project.

Introducing CARTO for deck.gl

Earlier in 2020, CARTO added support to deck.gl for vector tiles, opening the door to progressively visualizing any dataset, regardless of browser and bandwidth limitations. Since then, we have been working on making the experience of working with deck.gl and CARTO much smoother.

Today, we are very excited to announce that a complete CARTO module is now available as part of the deck.gl framework. This means developers can easily use CARTO APIs when building apps using the deck.gl framework.

Checkout this example application showcasing how deck.gl and CARTO can be used seamlessly together. Or open the app in a new tab.

What’s possible with deck.gl and CARTO?

The new CARTO modules for deck.gl allow you to visualize regular Tables in CARTO and BigQuery Tilesets.

You can check out the documentation directly on the deck.gl website.

There are 2 main classes available:

CartoSQLLayer: For visualizing regular Table datasets in CARTO, either connected to external databases or coming from files. You can specify the dataset name or an SQL query and CARTO will automatically produce tiles for that query.

CartoBQTilerLayer: A Layer coming directly from BigQuery. If you are working with really large spatial datasets in BigQuery, CARTO lets you create and serve TileSets directly from BigQuery.

And this is just the start! We are working on adding more capabilities to our module, leveraging our smart back-end capabilities, dynamic queries and much more.

Our preferred way for app building

We have been collaborating with the deck.gl team for several months now and we are really excited to be part of this community. Investing in open source contributions is a fundamental element of our company strategy and we believe deck.gl has a bright future ahead with lots of companies and individuals collaborating openly.

We are bold on this commitment to deck.gl and we have officially started recommending the use of deck.gl as the general purpose library for building apps with CARTO. And we will be providing support for its usage.

If you are interested in learning deck.gl, check out our new documentation to get you started.

So what happens with CARTO VL?

CARTO VL has been our WebGL library for some time. Since we joined the Urban Computing Foundation, it became clear that CARTO VL and deck.gl are two very similar Open Source projects. We believe it is better to join forces than to compete. We will therefore be dedicating our resources to deck.gl and not to CARTO VL. We will continue to provide support to CARTO VL for the foreseeable future, so should you need any help during the transition, please reach out to us.

Our new Developer Center

Screenshot of the new Developer Center

We are taking this opportunity to relaunch our Developer Center, with revamped content and a simpler structure. Here are some of the key highlights:

We are actively working on developing examples and resources to help our users. Please let us know what you think and if there is anything you are missing.

Give me more…

deck.gl is winning the Open Source race for map visualization and current capabilities are impressive. As more developers contribute modules, functionalities will continue to grow. So, here is a noncomprehensive list of features that are available to CARTO users, thanks to our integration.

We cannot be more excited to be joining this community and we want to thank Uber for their contribution and also the developers and organizations that are actively pushing the deck.gl open source project forward.

Happy mapping!

Want to get started?

Sign up for a free account
About the author
Javier de la Torre

Javier de la Torre is founder and Chief Strategy Officer of CARTO. One of the pioneers of location intelligence, Javier founded the company with a vision to democratize data analysis and visualization. Under his leadership, CARTO has grown from a groundbreaking idea into one of the fastest growing geospatial companies in the world.
In 2007, he founded Vizzuality, a renowned geospatial company dedicated to bridging the gap between science and policy making by the better use of data.

More posts from Javier de la Torre

Related Posts

Ready to optimize your territories with Location Intelligence?

Close circle icon

Contact us

Please fill out the below form and we'll be in touch real soon.