- github link: https://github.com/MartinYeung5/20240623_aptos_ZKC
- network: testnet
- link: https://explorer.aptoslabs.com/account/0x86adc9e2857e9ece1a99f4de87fb41e33591562ee1f80e4351404e47bd8bc778/modules/code/ContractDatabase?network=testnet
- contract address: 0x86adc9e2857e9ece1a99f4de87fb41e33591562ee1f80e4351404e47bd8bc778
The project aims to provide a solution for KOL(influencer) to handle general collaboration with other parties on digital contract utilizing ZK contract with AI audit.
- ZK function can increase privacy protection on contract verification.
- AI audit an help user to detect the potential risk in contract.
Actually, KOL may not have professional knowledge on how to prepare the contract, check the contract content in order to protect their benefit.
Moreover, digital contract can be one of the digital asset, and move language can create more value on digital asset protection and usage.
Furthermore, ZK function can help verify the contract and personal identity with better privacy protection.
https://app.akindo.io/communities/aAEpW1EXKHdJXv9K/products/nPgNXKooJc0v0kNDq
- Add multied25519
- Optimize smart contract
- Optimize UI desgin
- Update ZK function implementation
- bug fix
- Add verification function
20240706
- Optimize the smart contract (move)
- Add connect function (allows users to log in with a Google ID without needing an MPC Network, Magic Links, or Windows passkey) 20240707
- update "@aptos-labs/wallet-adapter-react": "^3.4.3"
20240713
- update ZK section - using Protokit Framework
20240714
- update "@aptos-labs/ts-sdk" to version "^1.26.0"
20240715
- develop verification function based on Protokit Framework
20240717
- add new function for user to view the sign status of the contract
20240718
- remove all "rawTransaction" (frontend), Bug fixed
20240719
- AI section: expect to use AWS to develop AI model and related service
20240721
- add new fucntion - check contract list (which is created by other and is waiting you [expected signer] for sign)
20240722
- function optimization - check contract list. User can input the address of contract creator and check the contract list. if you are one of expected signer from teh contract, you will see the contract in contract list.
- create new page - ContractListByOther.tsx
- function optimization - check contract list. When user signed the contract, the checkbox will be disable on the contract list.
20240723
- add new function - check contract validity.
- if the contract is valid, will display the message " Contract Valid", otherwise, will display the message " Wrong Contract".
20240724
- optimize UI design - check contract list
- fixed the bug - checking contract data is signed or not
- fixed contract bug - assert!(contract_record.sign == true, ETASK_IS_COMPLETED)
20240725
- optimize move contract - fixed bug
20240726
- optimize move contract - setup new assertion
20240727
- fixed the bug - refresh the page when user create own contract list
20240728
- optimize move contract - contract sign
- optimize move contract - contract can upgrade
20240730
- optimize move contract - contract sign
20240801
- optimize zk logic
20240803
- optimize zk logic
20240805
- The Protokit Framework is upgraded
- using Aptos Indexer API with Nodit
- usecase test
20240807
- optimize Protokit Framework with different tests
20240808
- update Move contract
20240809
- using Nodit - add multisig function (testing)
20240810
- using Nodit - add Aptos NODE API (successful), tested over 200 times
20240813
- update frontend desgin
20240816
- desgin multisig function
20240819
- multisig function - testing
20240822
- multisig function - optimization
20240701
- (fixed) wallet connection (brave broswer)
20240707
- (fixed) const owner2Authenticator = aptos.transaction.sign({ signer: owner2, transaction: { rawTransaction } });
- Error Msg: TS2322: Type '{ rawTransaction: RawTransaction; }' is not assignable to type 'AnyRawTransaction'. Type '{ rawTransaction: RawTransaction; }' is missing the following properties from type 'MultiAgentTransaction': secondarySignerAddresses, serialize, bcsToBytes, bcsToHexts(2322) index.d.ts(5628, 9): The expected type comes from property 'transaction' which is declared here on type '{ transaction: AnyRawTransaction; senderAuthenticator: AccountAuthenticator; feePayerAuthenticator?: AccountAuthenticator | undefined; }'
- solution: -upgrade "@aptos-labs/ts-sdk": "^1.26.0", -remvoe all RawTransaction and change to transaction
20240711
- when using Protokit Framework
- Error Msg: POST http://localhost:8080/graphql net::ERR_CONNECTION_REFUSED
20240718
- when refresh the website, OKX wallet will pop up and need user to login
20240727
- refresh issue, need to reload the updated information
20240728
- (fixed) smart contract issue: check the user's contract sign (updated)
- (fixed) contractDatabase undefined (updated)
20240817
- TS2786: 'App' cannot be used as a JSX component. Its return type 'Promise' is not a valid JSX element. When i change the "function App()" to "async function App()"