ICP Ninja is a web-based integrated development environment (IDE) for the Internet Computer. It allows you to write code and deploy applications directly from your web browser.
It provides a platform for exploring example projects, writing code, and learning about the Internet Computer in a temporary, sandbox-like environment.
For users who may already be familiar with the Internet Computer or who would rather use more advanced tooling such as command-line development tools, please refer to the ICP developer documentation to learn more.
The Internet Computer (ICP) is a decentralized compute platform that enables anyone to build and deploy an application using blockchain technology and advanced cryptography.
Applications are deployed on ICP as a type of smart contract called a canister. Canisters are tamperproof programs that can host the application’s entire backend, frontend, and data onchain.
To learn more about the Internet Computer, its features, and what you can build, please read the What is ICP? page.
Below are some commonly used terms that you will see throughout ICP Ninja and its example projects:
-
ICP: Abbreviation for the Internet Computer, a decentralized compute platform that enables anyone to build and deploy an application using blockchain technology and advanced cryptography.
-
Blockchain: A decentralized network comprised of computers located across the globe that run the blockchain's software. Each computer contributes their hardware resources, such as storage and compute, to be utilized by the users of the network. On the Internet Computer, each computer is called a node.
-
Gas: A fee for using a blockchain network's resources.
-
Motoko: A programming language designed specifically for creating applications on the Internet Computer. It is approachable for developers of all skill levels.
-
Smart contract: A program deployed to a blockchain network.
-
Canister: A smart contract deployed on the Internet Computer. Fullstack applications can be deployed to ICP using canisters. Sometimes referred to as a "canister smart contract."
First, read this example's README.md
file to learn more about the project's structure and features. It will provide an overview of what the example application does and what ICP features it uses.
Then, you can deploy this example directly to the Internet Computer network for free by clicking "Deploy" in the upper right corner.
To download or reset the project files, click the dropdown arrow next to the deploy button.
To make adjustments to this project, you can edit any file that is highlighted purple in the left file manager list. Then, redeploy your application to view your changes.
To edit files that are immutable in ICP Ninja, you can download the project's files using the "Download files" option, then follow the instructions in the BUILD.md
file to continue building locally.