See src/hello_backend
and src/hello_frontend
.
Based on the official tutorial.
Contains a single canister callable function called greet
.
On-chain UI: https://uv34l-oaaaa-aaaap-qa4ua-cai.ic0.app/
To test the project locally, use the following commands:
# Set rust backtrace to get more useful debug info when things go wrong
export RUST_BACKTRACE=full
# Starts the replica, running in the background
dfx start --clean --background
# Deploys the canisters to the replica and generates the candid interface
dfx deploy
Once the job completes, the application will be available at http://localhost:4943?canisterId={asset_canister_id}
.
Additionally, if you are making frontend changes, you can start a development server with
npm start
Which will start a server at http://localhost:8080
, proxying API requests to the replica at port 4943.
If you are hosting frontend code somewhere without using DFX, you may need to make one of the following adjustments to ensure your project does not fetch the root key in production:
- set
NODE_ENV
toproduction
if you are using Webpack - use your own preferred method to replace
process.env.NODE_ENV
in the autogenerated declarations - Write your own
createActor
constructor
- Run:
dfx deploy --network ic
- Create canister on the IC network:
dfx canister --network ic create hello_backend --with-cycles 1000000000000
- Build WebAssembly module:
dfx build --network ic hello_backend
- Install WebAssembly module inside the canister:
dfx canister --network ic install hello_backend
- Call canister method:
dfx canister --network ic call hello_backend greet '(" world")'
- Check on-chain balance:
dfx wallet --network=ic balance
- Get principal ID:
dfx identity get-principal
- Get ledger ID:
dfx ledger account-id
- Get on-chain wallet ID:
dfx identity --network=ic get-wallet