Project Overview
#rfp-proposal Shutter DAO intends to create a comprehensive Keyper Incentive and Staking mechanism. The primary objective of this mechanism is to enhance network security, decentralization, and long-term sustainability by incentivizing Keyper participation and enabling SHU token holder engagement.Project Goals
- Staking Incentives for Keypers: Implement a staking mechanism where keypers can lock up their SHU tokens to participate in network activities such as validating transactions, securing the network, and proposing/voting on governance decisions. In return, they receive rewards in the form of additional SHU tokens or transaction fees.
- Community Delegation: Allow SHU token holders to delegate their tokens to specific keypers whom they trust or believe will contribute positively to the network. This not only enhances the network's security and decentralization but also fosters a sense of community involvement and support.
- Long-Term Commitment Rewards: Introduce rewards programs for both keypers and token holders who demonstrate long-term commitment to the network by locking up their tokens for extended periods. These rewards could be in the form of bonus tokens, increased staking rewards, or access to exclusive network features.
- Mitigating Selling Pressure: To counter the potential selling pressure resulting from token unlocks and vesting periods, incentivize token holders to stake their SHU tokens instead of selling them. Staking reduces the circulating supply of tokens, thereby potentially stabilizing or even increasing the token's value over time.
Key Requirements
-
Keyper and Delegate Staking Front-end
- Develop a user-friendly web interface facilitating interaction between Keyper and SHU token holders.
- Implement deposit and withdrawal functionalities for staked SHU amounts.
- Include a dashboard to provide insights into system economics and staking metrics.
- Ensure compatibility with IPFS for seamless hosting.
- Keyper Staking Contract
- Design and deploy a smart contract allowing Keyper staking of SHU tokens.
- Features should encompass:
- Standardized staking requirements.
- Establishment of a 6-month lock-in period for staked tokens.
- Implementation of reward distribution in native tokens (e.g., ETH) and/or SHU based on the duration of staking.
- Integration with DAO governance for the validation of new Keyper sets.
- Delegated Staking Contract:
- Develop a smart contract enabling SHU token holders to delegate tokens to specific Keyper entities.
- Incorporate functionalities for principal withdrawal and reward distribution.
- Promote community engagement by allowing token holders to participate in the selection and support of Keyper entities.
Introduction to SDLC Corp
At SDLC Corp we are dedicated to pushing the boundaries of innovation to empower businesses and individuals with cutting-edge solutions that enhance collaboration, communication, learning, creativity, and productivity. Through our relentless pursuit of technological excellence, we strive to shape the future by helping Organizations work faster and efficiently utilizing our products, services, and skills.
At our core, we value transparency and fostering honest client relationships. Innovation drives us to create solutions that empower clients to meet their goals. Our unwavering commitment to quality and robust post-sale support ensures client satisfaction. With a customer-first approach, we view clients as partners, shaping tailored solutions to meet their unique needs.
Project Implementation
Functionality Overview
- Intuitive User Interface Design and Experience (UI / UX)
- Streamlined onboarding process for keypers and delegator stakers, minimizing friction.
- Intuitive navigation and clear instructions to guide users through staking processes.
- Responsive design ensuring compatibility across various devices and screen sizes.
- Consistent design elements and visual cues enhancing user experience
- Configurable Incentive Mechanism
- Customizable parameters for the incentive mechanism to adapt to varying network conditions and requirements and for the Shutter DAO to manage.
- Flexible configuration options include
- Choice of reward tokens (e.g., ETH, SHU) for keypers.
- Adjustable locking periods for staked tokens.
- Encourage Keyper Participation
- Mechanism to Incentivize keypers to stake SHU tokens, showcasing their commitment to network integrity.
- Provide visibility into keyper contributions and rewards earned to encourage ongoing engagement.
- Enable Community Support
- Mechanism to enable SHU token holders to delegate their tokens to support specific keypers.
- Facilitate the delegation process through a user-friendly interface.
- Encourage community engagement and collaboration in selecting and backing trusted keypers by providing key metrics to evaluate a keyper based on uptime, period and total delegated and other vital identified metrics for the DAO.
- Reward Long-Term Commitment to Counter Selling Pressure
- Offer rewards to both keypers and SHU token holders based on their long-term commitment to the network.
- Implement mechanisms to incentivize token lock-up for extended periods, aligning interests with the network's longevity.
- Mitigate selling pressure during volatile periods by promoting staking and token lock-up.
- Implement mechanisms for gradual release of rewards to incentivize sustained participation without market disruption.
Integrations
- Wallet Integration
Integration with cryptocurrency wallets to facilitate token staking, delegation, and interaction with smart contracts.
- IPFS Integration:
Integration with the InterPlanetary File System (IPFS) for storing off-chain data related to the staking mechanism. - DAO Infrastructure Integration:
Integration with nethermind infrastructure and shutter Network (DAOs) for governance functionalities, including voting integration with snapshot webhook to capture data and analytics for keypers reputation, adjusting parameters of the incentive mechanism, and approving protocol upgrades. - Analytics Integration:
Integration with DAO analytics APIs for monitoring and analyzing network activity, user engagement, and performance metrics related to staking and delegation. - API Integration:
Integration with external APIs for accessing additional data sources, such as token prices, network statistics, or user authentication services.
Technical Specifications
- NextJs Frontend:
- Purpose: Provide a user-friendly interface for Keypers and SHU holders to manage staked SHU and understand network economics.
- Features
- Stake as a Keyper.
- Delegate as a DAO member
- View Keyper list alongside vital Keyper Analytics data
- Claim rewards for both Keypers and Delegators
- Unstake as delegator stakers and Keypers
- Solidity Upgradable Keypers Staking Contract:
- Purpose: Enable Keypers to stake SHU tokens as a commitment to their role in the network.
- Features
- Customizable staking requirements and lock-in periods.
- Rewards funded by Shutter DAO, including ETH and SHU.
- Flexible withdrawal options for Keypers, including claiming rewards independently of withdrawing principal.
- Integration with DAO governance for validating new Keyper sets.
- Upgradeable contract that allows you to change the underlying code/logic of your smart contract, without necessarily altering the entry point (contract address) of your dApp.
- Functions (Overview)
- addKeyper(_accountAddress): Add address to the list of verified keypers.**
- removeKeyper(_accountAddress): Remove address from the list.
- stake(_tokenCount, _period): Allow Keypers to stake tokens for a specific period which will be constants for a list of slabs which is configurable day, month, quarter, half-yearly, yearly.
- rewardPerToken(): Get Info on reward per token stored reward distribution also can be configured to be daily, weekly, monthly, quarterly, half-yearly or yearly.
- earnedRewards(_accountAddress): Return total earned rewards
- Solidity Upgradable Delegation Contract:
- Purpose:Enable SHU token holders to delegate tokens to specific Keypers, enhancing network security and decentralization.
- Features
- Rewards funded by Shutter DAO, including ETH, SHU, and other tokens.
- Flexible withdrawal options for token holders, independent of withdrawing principal
- Support community engagement in selecting and backing Keypers.
- Upgradeable contract that allows you to change the underlying code/logic of your smart contract, without necessarily altering the entry point (contract address) of your dApp
- Functions (Overview)
- delegate(tokenCount, _keyperAccount): Allow token holders to delegate tokens to specific Keypers.
- earnedRewards(): Calculate and offer rewards to delegated SHU token holders.
Project Lifecycle Processes
For the project, we will be following the Agile Model.
This will be a combination of iterative and incremental process models focusing on process adaptability and client satisfaction by rapidly delivering working projects. We will break the project into small incremental builds. These builds are provided in iterations. Each sprint typically lasts about two weeks.
Every sprint involves cross-functional teams working simultaneously on various areas:
- Planning
- Requirements Analysis
- Design
- Coding
- Unit Testing
- Acceptance Testing
Project Management Processes
A SPOC [Single Point of Contact] will interact with the client and collect the requirements on behalf of SDLC Corp.He/She will be the single point of contact for any client interaction so as to maintain consistency throughout the requirement gathering and analysis process. Once the requirements are finalized, we will plan for the development activity. We can review the progress of the team every week or bi-weekly. This will give us time to develop the use case properly. Once the development is done, it will be shown to the client for review. After approval, we can start with the subsequent next sprint.
Project Support Processes
This project is on long-term support for SDLC Corp. Once the complete application is developed and deployed, stakeholders and SDLC can mutually decide on the Support Plan.
Technology Framework Recommended
Framework: | OpenZeppelin |
Frontend: | Next.js v14.1 an open-source web development framework for React-based web applications with server-side rendering |
Smart Contact Development: | Solidity v0.8.25 |
Communications Plan
For status updates, we can set up predetermined dates on every sprint to share updates on the progress as per DAO’s recommendation. We will be sharing the project's status and showing you the progress that was achieved during each spring update. We will be communicating any complications that would be occurring during the development process. A prior estimation will be given if there is some delay in the schedule.We would be using Jira for tracking the activities performed within the team. We will sharing Jira project progress report every week so that the DAO will get timely development updates on the project’s progress.
Project Development Sprint Plan
Sprint 1: Getting Started, Project Setup, and Figma Design
- Duration:2 Weeks
- Goals:
- Set up project environment.
- Create Figma designs for the dashboard.
- Tasks:
- Set up a development environment for both frontend and backend.
- Establish communication channels and project management tools.
- Create UI/UX Figma designs for the dashboard UI.
- Deliverables:
- Established project environment with development tools and version control.
- Figma designs for the dashboard UI.
Sprint 2: Convertion of Figma Designs with Next.js
- Duration:2 Weeks
- Goals:
- Translate Figma designs into functional UI components.
- Implement basic frontend functionalities.
- Tasks:
- Convert Figma designs into HTML/CSS mockups.
- Set up the Next.js project structure.
- Implement basic layout and styling based on Figma designs.
- Integrate basic frontend functionalities such as navigation and static content.
- Conduct initial UI/UX testing and gather feedback for refinements.
- Deliverables:
- Functional Next.js frontend with basic UI components.
- The initial version of dashboard interface based on Figma designs.
- Feedback report from initial UI/UX testing.
Sprint 3: Staking Smart Contract Development
- Duration:2 Weeks
- Goals:
- Develop Solidity smart contract for staking.
- Implement core staking functionalities.
- Tasks:
- Define staking contract structure and functions.
- Implement staking logic including token locking and rewards distribution.
- Integrate contract with frontend for stake/unstake actions.
- Conduct internal testing of staking contract functionalities.
- Document contract code and functionality for future reference.
- Deliverables:
- Developed Solidity smart contract for staking.
- Integrated frontend with staking contract for stake/unstake actions.
- Testing documentation for staking contract functionalities.
Sprint 4: Delegating Smart Contract Development
- Duration:2 Weeks
- Goals:
- Develop Solidity smart contract for delegating.
- Implement core delegating functionalities.
- Tasks:
- Define delegating contract structure and functions.
- Implement delegating logic including rewards distribution.
- Integrate contract with frontend for delegate/undelegate actions.
- Conduct internal testing of delegating contract functionalities.
- Document contract code and functionality for future reference.
- Deliverables:
- Developed Solidity smart contract for delegating.
- Integrated frontend with delegating contract for delegate/undelegate actions.
- Testing documentation for delegating contract functionalities.
Sprint 5: Internal Smart Contract Audit and Testing
- Duration:2 Weeks
- Goals:
- Conduct internal audit and testing of staking and delegating contracts.
- Identify and address any issues or vulnerabilities.
- Tasks:
- Review staking and delegating contract code for security and functionality.
- Conduct unit tests and integration tests for contract functionalities.
- Perform code review and peer testing.
- Identify and address any bugs or issues found during testing.
- Prepare documentation for contract audit and testing processes.
- Deliverables:
- Completed internal audit and testing reports for staking and delegating contracts.
- Bug fixes and improvements based on audit findings.
- Documentation detailing audit and testing processes.
Sprint 6: External Smart Contract Audit
- Duration:2 Weeks
- Goals:
- Engage external auditor to perform a comprehensive audit of staking and delegating contracts.
- Address any identified issues to ensure contract security and reliability.
- Tasks:
- Select and engage external audit firm to conduct smart contract audit.
- Provide audit firm with contract code and documentation.
- Review audit findings and prioritize issues for resolution.
- Address identified vulnerabilities and implement recommended improvements.
- Coordinate re-audit of updated contract code if necessary.
- Deliverables:
- External audit report highlighting any vulnerabilities or issues found in staking and delegating contracts.
- Implemented fixes and improvements based on external audit recommendations.
- Documentation of audit process and outcomes.
Sprint 7: DevOps and Infrastructure Setup
- Duration:2 Weeks
- Goals:
- Set up DevOps pipeline and infrastructure for public deployment.
- Ensure seamless deployment and hosting of front end and contracts.
- Tasks:
- Configure CI/CD pipeline for automated testing and deployment.
- Set up hosting environment for frontend using IPFS
- Deploy staking and delegating contracts to Ethereum or compatible blockchain networks.
- Perform integration testing of deployed contracts and frontend.
- Document deployment process and infrastructure setup for future maintenance.
- Deliverables:
- Established DevOps pipeline for automated testing and deployment.
- Deployed frontend interface and staking/delegating contracts to the production environment
- Documentation detailing deployment process and infrastructure setup.
Commercials and Payment Terms
Team Configuration
Role | Number of Resources | |
---|---|---|
Project Manager SPOC | 1 | |
UI/UX Designer | 1 | |
Solidity Developers | 2 | |
Full Stack Developers | 2 | |
DevOps Specialist | 1 | |
Tester | 1 |
Project Cost Estimation
Est. Project Cost @50 USD per hour = $50*567 = $28350.00 USDC
Payment Terms
- The project is divided into 8 equal parts for payments.
Milestones Payments Project KickOff $3543.75 Sprint 1 Completion $3543.75 Sprint 2 Completion $3543.75 Sprint 3 Completion $3543.75 Sprint 4 Completion $3543.75 Sprint 5 Completion $3543.75 Sprint 6 Completion $3543.75 Sprint 7 Completion $3543.75 Total $28350.00 - We follow Net7 Payment terms . Payment is due on the 7th day of the invoice