Is your feature request related to a problem? Please describe.
Kepler.gl already has a 'Save/Share your map' feature where a user can upload the data into a Dropbox account and then create a public link to share. It would be really nice to have more providers to choose.
Describe the solution you'd like
Adding a more generic approach to sharing could allow new providers besides Dropbox (eg. CARTO, Google Drive...) and also new ways of sharing the work in the future.
Describe alternatives you've considered
We propose to generalize the approach in the code, so current Dropbox Share url would work the same but new providers could be integrated, starting with CARTO.
Additional context
The integration with a new CARTO provider for 'Share via URL' would look like this:

Technical notes
This would work pretty much the same as Dropbox. We will import a CARTO library that takes care of all the logic to authorize an App & store the data on your CARTO Account. The data for this particular use case will be public, and accesible via a URL, much like Dropbox's approach.
We might have to do some tweaks in the OAuth integrations, because Dropbox only provides a token, and CARTO provides an object (token, expiration date, etc). If we ever add support for other cloud providers I'm sure this will be helpful.
As for the reading back of the map config, we propose adding an extra URL argument that indicates what cloud provider the data is stored on. The reason for this is that some cloud providers could store the map config and the datasets on different places, so the URL parsing is up to that map provider. For instance, on the CARTO approach, we will store the data and the config separated. The URL might just look like kepler.gl/demo?provider=CARTO&map=cali_quakes
The generic sharing logic should be implemented inside the examples/demo-app for now instead of the core kepler.gl package. We can create a separate package kepler.gl-share or kepler.gl-connect for it later
Thx @heshan0131 we'll follow that approach!
Yeah, that was the idea, everything that we need to modify is already there, really.
At most, we would have to make some parts of the core component extensible from outside, but I don't think that's the case for this particular feature.
Thanks for the input @heshan0131
Our original design is the put the tiles horizontally, so in the future we can easily add more

Thanks for the feedback @heshan0131! @mireyaD could you please take a look at the comment about the horizontal layout for the design? Thanks!
Hi @heshan0131!
I changed the design following your feedback

Does this layout work for you? Thanks!
Looks good. Thank you