documentation

> learn how to use and build with the dapploader system.

note: further documentation will be made available as the dapploader desktop app releases.

a message from our team

during our years of work in web3 security, and smart contract / dapp auditing, we have seen the barriers to entry for new developers. getting into dapp development today requires an enormous amount of knowledge about everything from web development to deployment. we believe this barrier is too high, and want to change that.

we've seen our fair share of malicious dapps and scams. we've also seen the limitations of traditional web-hosted dapps, and the risks involved in interacting with them.

we wanted to create a system that would allow developers to easily make the dapps they envision, and that would allow users to take control of their own interactions with the blockchain. we believe that users should be able to interact with smart contracts locally, in a safe and transparent way, without having to trust third-party services or "black-box" web apps.

we do not want users in web3 to be afraid of connecting their wallet to an app. or to worry about obfuscated functionality in the dapps they interact with. we want to give users the tools they need to verify that what they do is what they expect.

we think of our dapp-files as a transparent wrapping layer between users and smart contracts - describing in a clear and intuitive schema exactly what the dapp does, and how it interacts with smart contracts and the blockchain.

and with dapploader, we solve this. it's now easier than ever to make dapps, and safer than ever to use them. we hope you enjoy using dapploader, and that it helps you more easily build dapps, and lets you interact with the blockchain in a safer and more transparent way.

- the dapploader team





0. introduction

the dapploader system was built for you to to easily build dapps and to interact with blockchains locally, in a safe and transparent way, using our standard specification of "dapp-files" and the dynamic user interface generator, creating an interface from the dapp-file schema.

our main goal is to enable safety-aware users to interact with blockchains without the need to trust third-party services and opaque "black-box" dapps online. we make it easy to download and inspect the code of any dapp-file you interact with.

another goal is to provide a simple and easy-to-use interface for developers to build their own decentralized applications. the dapploader specification is meant to be easily readable, to lower the barrier of entry for new developers. if you know how to write a smart contract, you can easily learn to build a dapp - without having to start from scratch with basic web development.

1. get started with dapploader

in dapploader, each dapp we interact with is a single ".dapp" file. this file is locally downloaded to your device, and it contains a relatively simple schema, describing the dapp's interface and how it interacts with the blockchain.

in many cases, a dapp-file is simply a wrapper around a smart contract, providing a user-friendly interface for interacting with the contract's functions. in other cases, a dapp-file may contain more complex logic, such as bundling multiple functions together in a single step, calling functions from multiple contracts, or dealing with multiple inputs and outputs.

still, the dapp-file is just a single file. you can download it, load it in, read through and edit the file contents, interact with the generated dapp ui, delete the file, share the file online, and so on. you have much more control over the dapp-file than you would with a traditional web-hosted dapp.

to get started, go to the dashboard, download a recommended dapp, and open it.

2. download and manage dapp-files

dapp-files are stored in your local app data folder, or equivalent app data folders depending on your operating system. you can easily open this folder from the shortcut on your dashboard, to create, edit, delete, and manage your dapp-files.

in the dapploader app, you can find recommended dapps to download directly to this folder, or you can go into the folder, and place in or create your own dapp-files. once the files have the minimum necessary schema, they will show up in your dapp list on the dashboard.

3. interacting with dapp-files

once downloaded, a dapp-file will show up in your local dapp-file list on the dashboard. from there, you can open it, review the contents, and use the dapp's functionality in the dynamically generated user interface.

follow the instructions in the dapp-file to interact with the dapp. some functions may be simple read-only functions, while others may require you to sign a transaction with your wallet. the ui will provide you with the necessary information to use the dapp.

some functions may require multiple steps or inputs, and/or multiple transactions to complete.

4. review and edit dapp-files

once you've opened a dapp-file, you can review the contents of the file, and edit it as you see fit. you can change the name of the dapp, the description, the functions, the inputs, the outputs, and so on.

the most important part here is that you can verify that the dapp does what you expect it to do, and that it does not call unexpected or undesired smart contract functions. this way, we can avoid the risk of interacting with malicious dapps, or dapps that have hidden functionality.

that said, you should always be careful when interacting with dapps, and only interact with dapps you trust. you also need to verify the smart contract code itself, as the dapp-file may not contain all the necessary information. however, this means we've given you the ability to verify the functionality more than you could with a traditional web-hosted dapp (naturally, there are exceptions for fully open-source dapps).

we give you the tools you need to verify the dapp's functionality, and to make sure you're interacting with the intended smart contracts and functions. but it's up to you to use these tools correctly, and to be aware of the risks involved in interacting with smart contracts and dapps.

while you can do whatever you want with the dapp-file, be aware that changing the schema of the file may break the dapp's functionality. make sure you know what you're doing before you make changes to the file.

disclaimer: you are responsible for all dapps you create and run, all edits and changes you make, and how those changes affect the functionality and outcomes of the dapps. it is your responsibility to make sure the dapp-files you use are safe.