{"signature": "0xde799e483dcb93f99fe4a934b6c70678bf824a08354708803eaeb0a424792cde641c5fbf6323149472e3c3c5844880fba54fe7663b944e01fd60994f9b7d85041c", "application": {"round": "0xd2d99614321becd7cd0636715bbb4c94968e6271", "answers": [{"type": "email", "hidden": true, "question": "Email Address", "questionId": 0, "encryptedAnswer": {"ciphertext": "OSM8R/Ls/NqxCox0C6z/MgPR7CYXCyozkkKK9D6BNyDn2XaZ0YQ1lfDXBGpINOEE", "encryptedSymmetricKey": "54eb1c544c709b91114a110a2813f96c0131c859f22010604bd1866bf6aed383ff28b737199bf9766e40399615c2981633307c153d0ce7e4f8c800cbe50e98f5b1a5b3da76a3197e06d392ad48ecbc892c68af61cde7509f6adff3a2bb67a7831bfb581ff155a2e764fa6e0f14829e490363c725c36cdf2328450fb4b23c37b400000000000000207f048aed4e027a5490fdffda35e7e985571fff3c97cc88a1c0ca329dd35bb358fa7b4c804cac222e5af2eaa372477cb9"}}, {"type": "short-answer", "answer": "nastyarod", "hidden": true, "question": "Telegram Handle", "questionId": 1}, {"type": "short-answer", "answer": "https://github.com/3loop/loop-decoder", "hidden": true, "question": "Project GitHub Repo", "questionId": 2}, {"type": "short-answer", "hidden": true, "question": "Link to your Public Group Chat", "questionId": 3}, {"type": "short-answer", "answer": "GG20 OSS Program  Developer Tooling and Libraries", "hidden": true, "question": "Have you participated in a previous Gitcoin Grants Round? If so, please name the rounds or link the builder profile associated with previous rounds.", "questionId": 4}, {"type": "paragraph", "answer": "Loop Decoder is a highly customizable TypeScript library that allows you to decode and interpret any EVM transaction into a human-readable format. With minimal external dependencies, Loop Decoder can be used on both client and server sides, and provides a flexible interpreter that allows you to define custom interpretations of EVM transactions.", "hidden": true, "question": "Provide a brief overview of your tool, library, or framework. What specific problem or inefficiency in the development process does it address?", "questionId": 5}, {"type": "paragraph", "answer": "Every Web3 developer building user-facing dApps faces a common challenge: how to display transactions in a clear and understandable way. Developers typically have two options for solving this problem:\n\n- Implement an in-house transaction decoder: This requires significant expertise and time to develop, and often leads to problems with data enrichment and ongoing support for new types of transactions. \n- Use a third-party API: While this provides indexed and readable data, it can quickly become costly, especially for early stage projects and supporting a new chain requires the API provider to support it first.\n\nWith a Loop Decoder, developers can decode transactions into a human-readable format, on both the client and server side, without needing in-depth knowledge of EVM transaction decoding. We have implemented examples of the decoder in action for the following use cases:\n\n- Farcaster Frame for displaying transactions https://github.com/3loop/transaction-frame; used by people to read and share on-chain alerts posted on Farcaster https://warpcast.com/alertsbot\n- A Farcaster bot for human-readable on-chain alerts https://github.com/3loop/farcaster-onchain-alerts-bot\n- A Transaction Decoder REST API template https://github.com/3loop/decoder-api \n- Real-time push notifications to mobile applications: https://github.com/3loop/example-push-notifications\n- A Telegram bot for human-readable on-chain alerts https://github.com/3loop/example-tg-bot", "hidden": true, "question": "How does your project reduce development barriers, improve efficiency, or enhance the security of Web3 projects? Please provide specific examples or metrics if available.", "questionId": 6}, {"type": "paragraph", "answer": "We currently have 41 stars and 1 fork on the GitHub repo.\n\nThe library has 200-300 npm downloads per week https://www.npmjs.com/package/@3loop/transaction-decoder\n\n16 Unique visitors and 48 Views on GitHub in the last 2 weeks https://ibb.co/VM2tHB1\n\nUsed for Farcater bot to post and display transaction as a Frame https://warpcast.com/alertsbot\n\n", "hidden": true, "question": "Describe the current usage and support for your tool within the developer community. This could include GitHub stars, downloads, or testimonials from developers.", "questionId": 7}, {"type": "paragraph", "answer": "Next month:\n\nImprove the Loop Decoder transaction decoding library - make it easy to contribute and use. Create more examples and tutorials and gather feedback.\n\nNext 2 months:\n\nIntegrate Loop Decoder with other open source projects - such as open source block explorers and indexers.\n\nNext 3-6 months:\n\nCollect and improve the interpretation library. Create an open source data integration platform and experiment with different use cases for integrating human-readable blockchain data - analytics, monitoring, or off-chain + on-chain data connectivity.", "hidden": true, "question": "Outline your project's roadmap and how the grant funds will be used to achieve your development goals.", "questionId": 8}, {"type": "paragraph", "hidden": true, "question": "For any project deploying smart contracts on blockchain networks, please list all your deployer addresses and their corresponding blockchain networks. Use this format for each entry: [deployer_address], [chain_id]\u2014for example, 0x123abc..., 42161 (This represents a deployer address on the Arbitrum network). Please include a separate line for each unique deployer address and blockchain combination.", "questionId": 9}], "project": {"id": "0xf9de2d3e800d1a9cfda4b8d634b040c2bc5ebedff641b4e6f1e26df9e6bffa15", "title": "Loop Decoder", "logoImg": "bafkreicuowbieib5orgvkklukja4tbldzyewtc6pyytzwzsrqbh4xvna5q", "metaPtr": {"pointer": "bafkreihmkekma7kbupf7xq3gveoqj3z3l4nsg6zno57fts4gwrqyvzdziq", "protocol": "undefined"}, "website": "https://loop-decoder.3loop.io", "bannerImg": "bafkreievps3vkz7uw4v6mfxg5h4x72vwa7m74ike2et3fanw6rw4sdjnrq", "createdAt": 1713638547609, "userGithub": "anastasiarods", "credentials": {"github": {"type": ["VerifiableCredential"], "proof": {"jws": "eyJhbGciOiJFZERTQSIsImNyaXQiOlsiYjY0Il0sImI2NCI6ZmFsc2V9..0raEteM5jVfCnHPuzTBcOgtDUx9tB-VXQPOQjeZM1tLvXyu8FX5hvEGcOdksWd6Ye0Sb03uou8VO6tCWCsz0Cg", "type": "Ed25519Signature2018", "created": "2024-04-20T18:42:13.932Z", "proofPurpose": "assertionMethod", "verificationMethod": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC#z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC"}, "issuer": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC", "@context": ["https://www.w3.org/2018/credentials/v1"], "issuanceDate": "2024-04-20T18:42:13.932Z", "expirationDate": "2024-07-19T18:42:13.932Z", "credentialSubject": {"id": "did:pkh:eip155:1:0x6C994eEF6fdbeE8BCFF9016B7CE3A53b489Ad155", "hash": "v0.0.0:uNa/Qhzc7DJr4Ud+PFOUWH1p0/oApesUblPTOp8vjo4=", "@context": [{"hash": "https://schema.org/Text", "provider": "https://schema.org/Text"}], "provider": "ClearTextGithubOrg#3loop#16974922"}}, "twitter": {"type": ["VerifiableCredential"], "proof": {"jws": "eyJhbGciOiJFZERTQSIsImNyaXQiOlsiYjY0Il0sImI2NCI6ZmFsc2V9..XUwu9x9Vt1Q8yFZ0IJ8AQXX_8v6iOHIUuJdXnCqnkrSLHfgxgB_WuXuPgs0-R01PbQLG6uKJlX39Khw-7pvDCg", "type": "Ed25519Signature2018", "created": "2024-04-20T18:44:49.839Z", "proofPurpose": "assertionMethod", "verificationMethod": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC#z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC"}, "issuer": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC", "@context": ["https://www.w3.org/2018/credentials/v1"], "issuanceDate": "2024-04-20T18:44:49.839Z", "expirationDate": "2024-07-19T18:44:49.839Z", "credentialSubject": {"id": "did:pkh:eip155:1:0x6C994eEF6fdbeE8BCFF9016B7CE3A53b489Ad155", "hash": "v0.0.0:B+A9pdW4fIFztjI4R5yGnObLw2OoIMw72yDG2vTN1Rw=", "@context": [{"hash": "https://schema.org/Text", "provider": "https://schema.org/Text"}], "provider": "ClearTextTwitter#3loop_io"}}}, "description": "Loop Decoder - a highly customizable TypeScript library to decode and interpret any EVM transaction into a human-readable format.\n\nKey features:\n\n- Can be used on both the client side and server side in JS applications.\n- Minimal external dependencies - you only need an RPC. It also has optional API providers that can be used to fetch contract metadata or you can connect just your storage.\n- Flexible interpreter that allows you to define any custom interpretation of EVM transactions.", "lastUpdated": 0, "projectGithub": "3loop", "projectTwitter": "3loop_io"}, "recipient": "0x593101D96409156d5BB9Cd4b4C349687e37d61EA"}}