Please describe your proposed solution
The problem:
Are Cardano DApps Truly Decentralized?
Cardano takes a unique approach to DApps by offloading certain parts of their execution and storage off-chain. This strategy enhances performance and reliability compared to solutions like EVM chains. However, this design introduces a critical flaw—one that has become more pronounced with the adoption of the CIP-30 standard.
The off-chain components of Cardano DApps currently rely on centralized cloud infrastructures. Their source code and application data are not stored in a decentralized, long-term, fail-proof, and censorship-resistant solution.
While great projects like Iagon aim to address some of these challenges and more, they still fall short of offering mission-critical solutions for Cardano. Like IPFS and other decentralized storage solutions, they store data outside the Cardano network itself, which can create single points of failure and data loss due to potential global outages, team challenges, or platform security breaches.
For mission-critical Cardano applications—and even minimal, essential versions of any Cardano app—the only reliable solution is to rely on Cardano itself. This is the only path to a truly decentralized, fault-tolerant, and censorship-resistant infrastructure.
Currently, terabytes of on-chain transaction metadata are being generated by apps and users. Yet, there’s no coherent strategy for indexing and searching this data. A system that can organize this "chaos" and treat it like searchable files would be invaluable for developers and users alike. Such a solution could also optimize the use of precious on-chain storage, reducing redundancy and potentially introducing compression features.
Since April 1st, 2023, Cardano has had GCFS—a fully on-chain file storage solution that has proven itself capable of hosting not only DApp off-chain code but also on-chain source code. It can even support minimal, cost-effective frontends, helping create a censorship-resistant, fault-tolerant Cardano ecosystem. This would position Cardano to remain competitive against other chains, like EVM, that have already embraced fully self-contained DApps with long-term viability, even in worst-case scenarios.
The CIP-30 wallet standard, inspired by MetaMask’s design, encourages the offloading of even more DApp code outside of decentralized storage and execution. This approach does little to foster open-source collaboration or DApp/protocol interoperability, limiting Cardano's potential.
Just two weeks after Nami Wallet introduced the CIP-30 standard, GameChanger Wallet proposed an alternative approach. This Universal DApp Connector specification is designed specifically for UTXO-based blockchains like Cardano and moves away from the "MetaMask model" that works better for Ethereum. This alternative allows critical parts of DApp execution to happen on the client side, running directly on user devices. This increases decentralization by putting control into users’ hands, ensuring transparency, and creating an environment ripe for open-source collaboration.
The key to this system is GCScript, a simple language built on universal building blocks like JSON, common across platforms and languages. GCScript is to Cardano somewhat Solidity is to Ethereum, but it preserves underlying Cardano’s deterministic nature.
GCScript integrates seamlessly with GCFS, empowering developers to store reusable source code on-chain. This not only ensures that DApps are auditable, decentralized, fault-tolerant, and censorship-resistant but also encourages developers to collaborate, fostering an unprecedented explosion of open-source, decentralized DApps on Cardano.
GCFS development began in 2022 out of proposer’s funds and development efforts and remains unfunded and unsupported by Cardano, especially after the massive downvoting this working solution had on Catalyst Fund10.
GCFS is currently implemented on GameChanger Walle and demo tooling:
- on GCScript language, 4 functions available for developers to build dapps with it
- through the GCFS File Uploader UI at Playground IDE
- on a GCFS web server demo for Catalyst
Solution:
We will rewrite, improve and open source GCFS as a typescript library for allowing applications to read and search for files stored on-chain, and we will include a GCFS web server rewritten from grown up as a proper implementation example to serve files including HTML for fully on-chain hosted frontends as you can try out through our MVP demo GCFS web server published here:
<u>Announcement of the Demo:</u> https://x.com/GameChangerOk/status/1834062592060322161
A dapp 100% stored on-chain, yes, even the html file
Directory index of a user's on-chain file system
One of the first files ever written on chain.
GCFS allows for running filtered searches across all file systems stored on-chain allowing developers not only to store files but also to use them as a global database for dapps, fostering a grand variety of applications, from voting to social media, to oracles and fully on-chain open and universal protocols. As you can try yourself on the demo, the web server will allow to run queries to build this kind of applications.
A cache feature will help improve performance as subsequent requests fetching same data across multiple on-chain transactions will be stored temporarily.
A directory index rendered on backend-side will help users, and developers, to understand the structure of on-chain file systems and to seamlessly explore them as if one were navigating the web.