# ink presentation Frank: 1. Short recap of a pallet -> pallet contracts -> ink! 2. Why ink! (why rust) Andrew: 3. Demo 1, showing: * `new` * contract structure (going through the macros): * storage * contructor * message * event * ?environment? (which information (e.g. caller, balance of caller) is available by default, we could leave this for the next group since they will handle custom environments) * ?traits? * `check` * `build` (what is special about cargo contract build compared to cargo build?) * .contract: * .wasm * .json (explain metadata) * `test` * e2e-test (explaining / showing e2e-tests with a node running) * `upload` * `instantiate` * Explaining the difference between uploading and instantiating * `call` (showing how to call a contract) * `decode` (?) Daan: 4. Demo 2, * delegator * instantiate all together (original delegator example) * instantiate delegator with already instantiated instances of other contracts (includes `selectors`) * upgrade a contract --------------------------------------------------- Leaves for the next group: - storage - traits (how big is this topic?) - chain extensions - (custom) environment