Building Blocks for the Data Driven Web.


Our Vision. Web API Integration for Everyone.

More and more web apis are available for developers. Having their data / functionality available for any web user is a big step - esp. if you don't have the right skills in place. We want to change that.

  For Page Designers and Content Editors
API <> UI integration should be as easy as content editing. Zero Deployment approach.

  Bring features to your users - not the other way around.
Once a component is created, it can be easily used on any website - across the organisation / the internet.

  Component Crowdsourcing
Missing an appropriated component? Find a developer (-team) to build a new one!


Our Approach. A Platform to Share Components.

The core of Cubbles is a new kind of component. It's designed on top of the webcomponents standard(s) and is interoperable with the DOM and any web application framework.

Blackbox view of a Cubbles component.


With multiple component instances and 1..n connections you can model dataflows of any complexity:

A simple dataflow. See also more complex dataflow.


Cubbles provides an ecosystem of tools to develop, share and use such kind of components.


Component Usage on Example.

See the Pen Cubbles Wordcloud by Hd Böhlau (@hrbu) on CodePen.



FAQs

That's part of the magic behind ;-). Basically it works that way:

  1. The RTE itself is loaded from a store in the Cubbles Base.
  2. Once the RTE is loaded it scans the document for (custom) elements with a cubx-webpackage-id attribute. The attribute's value is the id of the package, the element's name is the name of the component within the package.
  3. With {package-id}/{component-name} the RTE knows which resources have to be loaded.
  4. If all resources are downloaded, the RTE initializes the elements and they are ready to use.

This is why you don't have to deploy anything within the backend of your web application in case you want to use a new component. The Cubbles Base hosts all the resources and delivers directly to the client.

Definitely Yes. You can even build complex webapps using Cubbles components. PowerCockpit is a real world example for that. To see all the components with the dataflows defined on tje mainpage, follow the instructions:

  1. Open with Chrome: https://musterstadtwerke.powercockpit.de
  2. Install the Cubbles WebInspector (a Chrome Extension)
  3. Open den Chrome DevTools (F12) and select the 'Cubbles' menu item (on the right >>).

This (real) application has been build by the Cubbles Core Team and shows what's basically possible. Nevertheless with Cubbles we focus on scenarios where existing applications or just the content can be enhanced by integration with one or more web APIs.

Yes, it has. We call it the "Cubbles Base". The Base manages all available components and delivers requested resources to web clients. Currently the Backend is really low level - implementing only the minimal feature set required to prove the core concepts on client side do work. See our wiki for more information.

Currently the Base knows the concept of different stores - each store is public, but an admin is able to grant upload permissions per store and developer. Any client has read access on any component of any store. To find available components within a store the artifactsearch is available.


For the future the following features are planned:

  1. Extended Search: A index based search will be provided to find components, developers etc. We will provide a search API as well as a client side application (based on reusable Cubbles components - of course).
  2. SignUp and Login via GitHub: You can use your GitHub account to for authentication.
  3. Store per developer: Each developer will get its own store by default.
  4. Team stores: As a registered developer you will be able to create team stores.
  5. Upload permissions: Component owners will be able to manage upload permissions on component level, to manage contributors for it.

The main technologies we currently use within the backend are nginx, CouchDB, NodeJS and Docker.


Contact & Resources


Contact

Team: on GitHub | E-Mail to support@cubbles.world and get in touch.


Resources

See the overview presentation Cubbles101

Conceptual basics are explained within the Cubbles Platform Overview (pdf)

Source code at https://github.com/cubbles


License Information

The Cubbles Platform is licensed under Apache 2.0

Client-side core-components provided by the Cubbles core-team use the MIT License .

Other component developers are free to choose a different license.


Sponsors


incowia is the main sponsor of Cubbles. They support continuous development with time, money and access to a wide range of proved experience.

Atlassian provides us a free license for Jira and Confluence.

The initial development was co-funded by the German Ministry for Education and Research.