How the Cardstack Framework Powers Decentralized Applications

The Cardstack MVP and beyond

Cardstack Team
Cardstack
5 min readAug 20, 2018

--

This article is the first in a series detailing our progress on the roadmap above.

Today’s blockchains for decentralized apps are sort of like railroads without trains: miles of infrastructure and little activity.

That’s because building a dApp is no simple feat. Even basic concepts in software engineering must be reconsidered to account for how distributed ledgers behave.

Our goal is to make shipping dApps as simple as possible. At Cardstack, we’re doing the hard work of creating an industry-leading framework for dApps that all developers can use.

Apps using the Cardstack Framework will get the benefits of our:

User experience. The decentralized Internet demands users take a much more active role in how they talk, trade, and work with others. We use a composable design and workflow system to make these choices consistent and intuitive, so that crypto feels less like computer science and more like natural conversation.

Orchestration. True decentralization means you should not be limited to one device, platform, or subscription model. The Cardstack Hub is a personal index of everything that matters to you, keeping your software running smoothly no matter where you use it, or where your data is stored.

Integrations. Decentralization does not mean isolation. Through the Hub, apps can connect instantly to any number of data sources, services, smart contracts, or decentralized protocols — over a standard API. Because Cardstack is open-source, anyone can write a plugin to extend the platform.

Smart contract. The Cardstack Hub talks to our upgradable Smart Contract, allowing easy payments between Cardstack apps and third-party providers of blockchain and cloud-based utilities, such as computation or hosting. We denominate transactions in a non-tradable token (Software and Services Coupon) for stable pricing, and use a special locking mechanism to ensure our payments are fully compliant and enterprise-ready.

Consensus. Like cryptocurrency, a decentralized app ecosystem must agree upon a shared state — who uses what, who supplies what, and who earns what. Using cutting-edge data science, we are building a decentralized analytic network on top of the Ethereum Virtual Machine that can fairly and reliably coordinate metering and billing for a large software ecosystem.

All of this is described in our technical roadmap. And we’ve made substantial progress already, demonstrated by our minimum viable product (MVP).

The Cardstack MVP

If you participated in our token event, you experienced the live Cardstack Framework’s first use case: a mobile-friendly web app that streamlined our Token Generation Event for contributors.

Using this app, our TGE participants were able to register, whitelist, take action, and track our fundraiser’s progress in real time.

Importantly, our MVP showed what a real time-updating Ethereum contract in a Cardstack app looks like, built entirely using our software: our own connector plugins to Ethereum, our own KYC system, and our own hosting environment.

This was our “minimum verifiable proof” that our stack and architecture works.

Using our Ethereum/Geth plugin — a breakthrough in decentralized technology — the Cardstack Hub indexed the data structures of our Token Smart Contract and made them available through a queryable RESTful API.

For our MVP, this meant the web app could pull cloud and blockchain data into one live view, and present a personalized experience to users through a web browser without any add-ons necessary.

This was no small undertaking. Going forward, it means plugins just like the ones we used in our MVP can be created for any distributed ledger or decentralized application, as well as for any cloud service or database. And our Ethereum plugin? Connects to any other token or smart contract, in addition to our own.

As the variety of plugins increases, so will the power of Cardstack apps. Since the Cardstack project’s beginning in 2014, we have developed 31 different plugins — and we’re just getting started.

Soon, all kinds of decentralized apps built using Cardstack will be able to tap into multiple blockchains, smart contracts, and cloud services at once, using the same core architecture of our MVP.

What’s Next

Our stack is live. Now our mission is to build out the rest of the pieces.

Expanding on the foundation of our MVP, our forthcoming decentralized app will be called Card Space: a token-based content environment and community management system that will change the way people collaborate on the decentralized Internet.

Card Space will be the first dApp that demonstrates every element of the next evolution of the Cardstack platform.

It will feature the first fully working instance of our design paradigm Card UI, taking us away from the bespoke interface we created specifically for the TGE, and toward a general purpose UI for decentralized apps.

The application will showcase the power of our Framework — and demonstrate the production-ready components that all developers will soon be able to use to rapidly assemble their own powerful dApps.

Card Space will be powered by our Cardstack Hub, allowing it to seamlessly plug into any number of cloud or blockchain data sources, over one API.

Just like all Cardstack apps, Card Space will be accessible through familiar channels like the Web, mobile, and desktop in a single cohesive experience.

Last but not least, Card Space will offer, for the first time, a way for users to use Cardstack Tokens (ERC20 symbol: CARD) as the “universal gas” to gain access to a variety of decentralized apps through their smart contracts without having to acquire each type of token manually.

Each of these elements will represent a major step toward our goal of creating a sustainable token-powered software ecosystem, according to the promise laid out in our whitepaper.

By filling the most glaring gaps in the of the decentralized stack, we can empower the next million makers to bring the next billion users on board.

Read More

Get Involved

Join the discussion about Cardstack on our official Telegram channel: https://t.me/cardstack.

Are you a developer? Join our Slack channel: https://join.cardstack.com

Important Reminders

  • We will never, under any circumstances, solicit funds from you via email, private message, or social media.
  • If you are in doubt or notice any suspicious activity, please message the admins in our official Telegram group: https://t.me/cardstack.

--

--

Cardstack Team
Cardstack

Official account for the team behind the Cardstack project.