ODHack: Extend Proposal Component to Support Discussions
Description
Extend the current React frontend to support viewing and adding comments to proposals. This involves fetching comment data from IPFS, displaying it, and allowing users to add new comments. The new comments will be submitted to IPFS via a backend service, and the resulting IPFS hash will be used to update the proposal on the blockchain.
Expected skill level: Junior Frontend Developer
Tasks
Frontend
-
Fetch Comments from IPFS:
- Modify the
Proposalcomponent to fetch IPFS file hashes from the contract. - Download comment content from IPFS.
- Display comments along with the submitter's address or Starknet.ID and their governance token balance.
- Modify the
-
Add Comments to Proposals:
- Add a form to the
Proposalcomponent for submitting new comments. - On form submission, call the backend with the comment text.
- Receive the IPFS file hash from the backend.
- Prompt the user to confirm the transaction in their wallet to update the proposal with the new comment hash.
- Add a form to the
Pointers
Frontend Code
-
Proposal Component:
- File: frontend/src/components/Proposal.tsx
- Modify to include fetching and displaying comments.
- Add form for submitting new comments.
-
New Proposal Form:
- File: frontend/src/components/NewProposalForm.tsx
- Reference for form handling and contract interaction.
Definition of Done
The frontend is fully static and ready to be deployed, is formatted according to VSCode Typescript Format command
See CONTRIBUTING.md for information on claiming the task and how to work.
@tensojka Please I would love to work on this
@kateberryd You have been assigned, I would advise you join the Telegram group for quicker communication.
Thank you @tensojka Please what's the telegram handle
Thank you @tensojka Please what's the telegram handle
https://github.com/CarmineOptions/konoha/blob/master/CONTRIBUTING.md @kateberryd
@kateberryd Could you provide an estimated delivery timeline?
I’m considering a time frame of five working days @tensojka
Thanks, completely in #119 now