New feature: multi-domain components ready!

The great potential of PoP is materializing: the ability to fetch data from different domains, and combine it all inside a single component (such as a calendar, a map, a list of posts, a news feed or a marketplace), is almost ready!

If you check the homepage of this website, and click on item “Decentralized”, you will see an events calendar, fetching data and displaying the corresponding events from several different websites:

multidomain-calendar

All of those events, whose background-colors are different, are being fetched from different domains, all in real time. Moreover, clicking on any event, either local or from an external domain, it will always open the event locally, and not in a new tab.

For instance, when doing right click => “Open page in a new tab” on any external link, such as event World Rangers Day 2017 (from website MESYM), the new tab opens the external website:

multidomain-originalevent

However, if we just click on it, as usual, then lo and behold!, it opens locally:

multidomain-clickevent

While the link is pointing to https://www.mesym.com/en/events/world-rangers-day-2017/, the browser URL bar is updated as https://getpop.org/en/external/?url=https://www.mesym.com/en/events/world-rangers-day-2017/.

It works for posting content too!

And this works not only for GET request, but also for POST operations. So we can interact with the source website, all from within the aggregator website. Actually, anything that can be done there, such as following users, recommending content, posting events, adding comments, etc, can also be done through the aggregator website, and it’s all transparent to the user. Even media files can be uploaded to, and accessed from, the external domains.

All interactions always present the same interface to the user, either performed locally or on an external domain. For instance, adding a comment to an event, either local or from another website, will open the same small window on the bottom-right of the page:

multidomain-addcomment

More developments are to be finished soon

There are still some things left to do, to complete the implementation of this feature:

  • Cache external data with Service Workers, following the Offline First strategy
  • Route external data through their own Content CDN
  • Implement discoverability and autonomy, so that domains can announce that they are alive and want to join an aggregator website, and make their configuration information publicly available

We expect to have these features developed soon.

As always, enjoy!


Sign up to our newsletter:

Welcome to the PoP framework!
Break the information monopoly

the PoP framework is open source software which aims to decentralize the content flow and break the information monopoly from large internet corporations. Read more.