Hackathon repository for Group 9: "ERC20 Token Vesting Application"
1. PROJECT PLANNING AND SCOPE DEFINITION:
• Objective: Define the goals and scope of the project, detailing the features and functionalities to be included in the ERC20 Token Vesting Smart Contract.
• Actions:Conducted a thorough analysis of project requirements, considering vesting cliffs, slicing periods, and revocation options.
2. ENVIRONMENT SETUP:
• Objective: Set up the necessary development environment and tools for coding, testing, and deployment.
• Actions:
• Selected Remix as the primary development environment for writing and deploying Solidity smart contracts.
• Configured the environment to integrate seamlessly with Truffle for testing purposes.
3. SMART CONTRACT DESIGN:
• Objective: Design the architecture and logic of the ERC20 Token Vesting Smart Contract, including key functions and data structures.
• Actions:
• Defined the structure of the smart contract, incorporating functions for vesting schedule creation, token calculation, beneficiary token collection, and schedule revocation.
• Implemented comprehensive error handling and edge case considerations.
4. CODING IN SOLIDITY ON REMIX:
• Objective: Wrote and deployed the smart contract code using the Solidity language within the Remix development environment.
• Actions:
• Coded the smart contract functions, ensuring alignment with the specified project requirements.
• Utilized Remix's real-time compilation and debugging features for efficient coding.
5. TESTING ON REMIX:
• Objective: Execute initial testing on Remix to identify and address any syntax errors or logical issues.
• Actions:
• Performed unit testing for individual functions to verify correct behavior.
• Utilize Remix's testing environment to simulate various scenarios and validate contract functionality.
6. INTEGRATION WITH TRUFFLE FOR AUTOMATION TESTING:
• Objective: Integrated the smart contract with Truffle for comprehensive automated testing using a testing framework.
• Actions:
• Configured Truffle for automated testing, developing a suite of test cases covering all contract functions.
• Executed automated tests to ensure the solidity of the smart contract, catching any unexpected behaviors.
7. FRONTEND DEVELOPMENT:
• Objective: Develop a user-friendly frontend using HTML, CSS, and JS to interact with the smart contract.
• Actions:
• Created a visually appealing and intuitive interface for users to input parameters and interact with the smart contract functions.