metadata: {"signature": "0xb2c71b52bb7ff1c678240a6a710277455e6e381facc688a2c7cdfef6caa418b45510c1b534691e7790051497e863b2f4a120096fea0c191c2b647333d9a56baf1c", "application": {"round": "0x1b48bb09930676d99dda36c1ad27ff0a5a5f3911", "answers": [{"type": "email", "hidden": true, "question": "Email Address", "questionId": 0, "encryptedAnswer": {"ciphertext": "wk5ziP9xtpW7U60KC3lfiShTSeNvMDTNDsanWUD2y3Ah+6gIcCKE2gFcCvSATvjF", "encryptedSymmetricKey": "0ed1fa905b36e0cfca6af092ad2957d0787fb781d0c2f45001b69b1707a42bd2b24563d6ac5bc3cb720cb80c2efdab0aaf840d2a7640fbabecefe0a01e3d522c0f7f9e01c3ca64573e149e69883e9162ae30dd4d2bb2962d123738a21b7c69a3924aea5ac5ad7cf57d97fade77351219ba3c4db0081eed51e8eeb1c9c97a0fd4000000000000002010bfe705e6253ff2254d84698d3430b2a4ae05e4d991044f08581e578d5f2ee87b156f4f49f32a9bd814bda537e0f5a2"}}, {"type": "short-answer", "hidden": true, "question": "Telegram Handle We Can Use To Contact You(you can answer N/A)", "questionId": 1, "encryptedAnswer": {"ciphertext": "HeOXpoaKLtE6qZ98+O/GIe0K6seMeWVRAFc9Q2OBImg=", "encryptedSymmetricKey": "16ed853d3284c1b0ebc332e51c48eb816e8fd8a38927f0c5084b7e84866d6b3e8293fac8dbb9283236ceb63a57f49f109f9570023891ebf4982a4436675902bf79e05b5d6d72c95cc2f7451fa184a8dcd3b74a839febd9246ace6ef1d05d74908a52f912dee1e016272780139b6e27a35840820a328ae35d0dbabb133c6c348a0000000000000020f3b86771df13c8a47edd3d90c4596878f52282a63025570fbb98d45a5a10cd6a74f2f14e1b551c708e2f159df32a5e92"}}, {"type": "link", "answer": "https://github.com/Abakhus/AbakhusJS", "hidden": false, "question": "Project GitHub Repo (Not Team Page): ", "questionId": 2}, {"type": "number", "answer": "2", "hidden": false, "question": "Total Team Size", "questionId": 3}, {"type": "paragraph", "answer": "amrdavila - 0xE765Cb5e17072BBc9cF4C96DCf9ECDE54484c446\n\nrodrigojardim - 0xA38e15B0914A72E2C8706b06483b433B02f92dc8", "hidden": false, "question": "List the Github Handles and Wallet Addresses of Each Team Member (e.g. owocki - 0x123, kbw  - 0x456):", "questionId": 4}, {"type": "paragraph", "answer": "None", "hidden": true, "question": "Social profiles (Twitter, Farcaster, Lens, etc.) of other main team members publicly associated with the project (N/A for solo founders): ", "questionId": 5}, {"type": "link", "answer": "https://t.me/+otuj4UM7_Qc0NzJh", "hidden": false, "question": "Link to your Public Group Chat (e.g. Discord or Telegram)", "questionId": 6}, {"type": "paragraph", "answer": "No. This is the first time we are particpating in Gitcoin with the AbakhusJS project", "hidden": false, "question": "If you've participated in past grant rounds, please share any new updates or milestones from the prior months (N/A if you haven\u2019t participated previously). ", "questionId": 7}, {"type": "address", "hidden": true, "question": "If you participated in past grant rounds using a different project payout wallet address, please share it here:", "questionId": 8}, {"type": "paragraph", "answer": "https://abakhus.io/\nhttps://github.com/Abakhus/AbakhusJS", "hidden": false, "question": "Where should we look to see the impact of your project? Please provide links to public websites and/or the latest values for key metrics you track privately. This might be used in future impact reports", "questionId": 9}, {"type": "paragraph", "answer": "0", "hidden": false, "question": "Total Prior Funding for the project in USD", "questionId": 10}, {"type": "checkbox", "hidden": false, "question": "Which of the following funding sources do you have? Check all that apply", "questionId": 11}, {"type": "number", "answer": "24", "hidden": false, "question": "How old (in Months) is the project?  ", "questionId": 12}, {"type": "checkbox", "answer": ["Central and South America"], "hidden": false, "question": "Location/Region where the project is based ", "questionId": 13}, {"type": "multiple-choice", "answer": "Yes", "hidden": true, "question": "Have you read and confirmed your grant abides by the Program General Eligibility Policy? ", "questionId": 14}, {"type": "multiple-choice", "answer": "No", "hidden": true, "question": "Are you applying for any other OSS rounds in GG20? (Reminder: you can only be accepted into one) ", "questionId": 15}, {"type": "paragraph", "answer": "This proposal is to develop a library named AbakhusJS as part of the Abakhus protocol. AbakhusJS is a TypeScript library of the Abakhus protocol, designed to interact with any blockchain network by utilizing design pattern concepts such as Abstract Factory, Factory Method, Singleton, Composite, and Observer. This approach provides a versatile, maintainable, and scalable architecture. By developing AbakhusJS we will abstract most of the blockchain interaction layer, including smart-contracts deployment for web2 developers then we will onboard them into web3 without the need for them to learn Solidity or Rust. This will have a double impact: (i) facilitating web3 education for web2 developers, and (ii) a more user-friendly way to develop new web3 applications.", "hidden": false, "question": "Please describe the developer tool or library you're working on. How does it fit into the development environments, frameworks, or testing tools landscape for Web3? ", "questionId": 16}, {"type": "paragraph", "answer": "GitHub stars and forks will indicate popularity and interest on AbakhusJS library, while the number of pull requests and issues opened provides insights into community engagement and contributions. Monitoring downloads through package managers such as npm or pip gives an idea of usage and adoption trends over time. Additionally, we will track AbakhusJS references in other repositories to reveal how often it is being used in other projects.\n\nBeyond quantitative metrics, we will also look at community feedback, such as discussions, reviews, and testimonials, to understand how users perceive the library. Social media and blog mentions can offer insights into the library's broader impact and reach. Engaging with the community through support and active participation on forums or chat channels can foster stronger adoption. Lastly, usage of the library in popular projects or by reputable organizations will serve as a strong indicator of its quality and adoption.\nAs we are just starting the development of AbakhusJS we don't have such adoption measures available.", "hidden": false, "question": "Please provide details on how you measure the adoption of your tool and/or library. Do you have metrics on usage, downloads, and installs?", "questionId": 17}, {"type": "paragraph", "answer": "AbakhusJS library does not address the need for secure and efficient smart-contract development, it is a tool to facilitate web2 devs onboarding into web3 space.", "hidden": false, "question": "How does your project address the need for secure and efficient smart contract development? If applicable, detail the library's features or capabilities that cater to this need.", "questionId": 18}, {"type": "paragraph", "answer": "AbakhusJS will significantly reduce barriers to development and enhance project efficiency in the open-source software (OSS) and Web3 ecosystems by providing a seamless transition for Web2 developers into the Web3 space. By offering a straightforward and accessible way to interact with blockchain networks, the library will allow developers to leverage their existing skills and knowledge without needing to navigate the complex intricacies of Web3 technology. This easy onboarding process accelerates the development timeline and fosters a smoother integration of Web3 capabilities into new and existing projects.\n\nFurthermore, AbakhusJS will support developers by offering comprehensive documentation, examples, and best practices, streamlining the learning process and reducing the likelihood of common pitfalls. This library's ability to work across various blockchain networks without requiring developers to master each specific chain's nuances promotes versatility and encourages experimentation and innovation. In addition, the active community around AbakhusJS can provide support and collaboration opportunities, further contributing to a vibrant and efficient ecosystem for both OSS and Web3 projects.", "hidden": false, "question": "Can you demonstrate how your tool or library significantly reduces barriers to development or enhances project efficiency in the OSS or Web3 ecosystems? Provide examples or case studies of your tool in action.", "questionId": 19}, {"type": "paragraph", "answer": "We are scientist that entered the blockchain space in 2021, started to develop Abakhus dApp during the bear market, and finally deployed it in mainnet late 2023. Only Abakhus dApp smart-contract is publicly available at Github, that is the reason the latest Abakhus dApp front-end and API commits are not publicly available. We are going to use Abakhus API in our Hacker House (https://github.com/iberoam/hacker-house) in mid May, that is the reason we are just starting to develop the AbakhusJS library.", "hidden": false, "question": "Anything else you'd like to share about your project, previous work, or other project affiliations? Is there anything you'd like to add that may help determine project eligibility?", "questionId": 20}, {"type": "multiple-choice", "answer": "Yes", "hidden": true, "question": "Would you like to opt-in to future messages from Gitcoin for updates, information, and/or interviews? ", "questionId": 21}, {"type": "multiple-choice", "answer": "Yes", "hidden": true, "question": "Would you like to opt-in to us sharing your information with select third parties for investment opportunities? ", "questionId": 22}], "project": {"id": "0x00708f9cc25437439ee8995286045a16c02fbb396a7b6d3de78770848d69122f", "title": "AbakhusJS", "logoImg": "bafkreig3kw2ci4pzjv5zd7fj74mcvcfhko5ogb5bzjwrx2ovhibes326zq", "metaPtr": {"pointer": "bafkreiehc5uxd2s3wjnuyu5c35wt2y7g5jc7mb5if4geke2uch5pw5d6mu", "protocol": "undefined"}, "website": "https://linktr.ee/abakhus", "bannerImg": "bafkreicrvbh3cvim3ag4d6abaf6eorbxnmkhydhyx34yuub4hu6enwq2wa", "createdAt": 1713914283992, "userGithub": "amrdavila", "credentials": {"github": {"type": ["VerifiableCredential"], "proof": {"jws": "eyJhbGciOiJFZERTQSIsImNyaXQiOlsiYjY0Il0sImI2NCI6ZmFsc2V9..HFbrkwCeZCazlWxPCShoEQd55NDBpSUqqVrTbsDhEDFWMo-Mf56KVfNkKCEdmYVyG0ESl8wvjge5PQfwJQoiDw", "type": "Ed25519Signature2018", "created": "2024-04-24T01:02:26.119Z", "proofPurpose": "assertionMethod", "verificationMethod": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC#z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC"}, "issuer": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC", "@context": ["https://www.w3.org/2018/credentials/v1"], "issuanceDate": "2024-04-24T01:02:26.119Z", "expirationDate": "2024-07-23T01:02:26.119Z", "credentialSubject": {"id": "did:pkh:eip155:1:0xC89d19873d85af16cdEFCE3aC444e09576fc5769", "hash": "v0.0.0:aZyrPhtN22W3vEQjkjrILVxul4ozl8ibCqN7Wr4+tNs=", "@context": [{"hash": "https://schema.org/Text", "provider": "https://schema.org/Text"}], "provider": "ClearTextGithubOrg#Abakhus#53997575"}}, "twitter": {"type": ["VerifiableCredential"], "proof": {"jws": "eyJhbGciOiJFZERTQSIsImNyaXQiOlsiYjY0Il0sImI2NCI6ZmFsc2V9..t3DGCnUF-FP_o1RYA1fbm_Z3qvqd7gXP4dUwEmGmKTPVefuYllHwDwddNgHlCFDRze-NisjyIF5MKyPv6_0kAQ", "type": "Ed25519Signature2018", "created": "2024-04-23T23:15:08.246Z", "proofPurpose": "assertionMethod", "verificationMethod": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC#z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC"}, "issuer": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC", "@context": ["https://www.w3.org/2018/credentials/v1"], "issuanceDate": "2024-04-23T23:15:08.245Z", "expirationDate": "2024-07-22T23:15:08.245Z", "credentialSubject": {"id": "did:pkh:eip155:1:0xC89d19873d85af16cdEFCE3aC444e09576fc5769", "hash": "v0.0.0:+JSt3fB/gX6G0hBv6jmBn09x7K+40ykYPQ0rFzK+E74=", "@context": [{"hash": "https://schema.org/Text", "provider": "https://schema.org/Text"}], "provider": "ClearTextTwitter#abakhus"}}}, "description": "# Team\nThis project is to be developed by the same team that developed the Abakhus dApp.\n# Project description\nWe started to develop Abakhus dApp (a privacy-preserving tokenization platform) early 2022 and deployed to mainnet in November 2023. An API to access Abakhus was developed then we decided to launch a Blockchain Innovation Hub (https://github.com/iberoam/blockchain-innovation-hub) and Hacker House (https://github.com/iberoam/hacker-house) to promote the development of additional projects and dApps using Abakhus API. This proposal is to develop a library named AbakhusJS as part of the Abakhus protocol. AbakhusJS is a TypeScript library of the Abakhus protocol, designed to interact with any blockchain network by utilizing design pattern concepts such as Abstract Factory, Factory Method, Singleton, Composite, and Observer. This approach provides a versatile, maintainable, and scalable architecture.\n\n# Achievements related to Abakhus dApp\n\n(i) Q1 2023: we partnered with IberoAm community and successfully organized a disrupting IRL event to onboard scientists, data privacy advocates and social impact leaders on the blockchain ecosystem called \"From Genomes and Privacy to Social Impact using Blockchain\" funded by Eth-Colombia and Clr.fund. The whole event was recorded and is publicly available (to serve as an educational resource) at the Technological Park of the Rio de Janeiro Federal University youtube channel:\nhttps://www.youtube.com/live/FxnJ-pJgRsU?feature=share\n(ii) Q3 2023: Mid-September 2023 we presented a talk about Abakhus (privacy-preserving) dApp at the Blockchain Rio Festival:\nhttps://twitter.com/SecretNetwork/status/1702412567673442759\n(iii) Q4 2023: Early October 2023 we presented a talk about our privacy-preserving Abakhus dApp at the Rio Innovation Week:\nhttps://twitter.com/abakhus/status/1704981536070635629\n(iv) Q4 2023: Late October we presented a talk about \u201cBlockchain and Privacy\u201d for the students of the Rio de Janeiro Rural Federal University:\nhttps://twitter.com/amrdavila/status/1718047590388777159/\n(v) Q1 2024: We officially launched our Blockchain Innovation Hub on March 19th, during the DeSci Rio 2024 edition:\nhttps://twitter.com/abakhus/status/1763547619454837040\nhttps://www.linkedin.com/feed/update/urn:li:activity:7176551950182670336\n\nThe creation of the Blockchain Innovation Hub was driven by the need to promote networking and partnerships among academia, private sector and government, aiming to develop new projects and dApps in the blockchain space. Our Hub offers a Hacker House, Courses on Blockchain in the Federal Universities of Rio de Janeiro and Blockchain-related events/conferences. The tokenization platform to be used for Cohort 1 of the Hacker House is our Abakhus dApp, meaning selected proposals will be mentored (Ideation and Prototyping) using the Abakhus dApp API. The development of a AbakhusJS library to interact with several blockchain networks is really needed not only for the Hacker House cohorts but for anyone to access that, test and enter the blockchain space.\n\n# AbakhusJS Requisites:\nAbstract Factory: Create an abstraction layer to produce different types of blockchain network clients, each specific to a particular blockchain protocol or network.\nFactory Method: Implement factory methods within the Abstract Factory to instantiate specific client implementations based on the target blockchain network.\nSingleton: Ensure a single instance of each blockchain client exists, preserving resources and ensuring consistent state throughout the application.\nComposite: Use the Composite pattern to represent and manage complex blockchain objects such as smart contracts and accounts, allowing for hierarchical organization and easier interaction.\nObserver: Employ the Observer pattern to enable event-driven communication and notification for blockchain events (e.g., transaction confirmation, new block) and allow components to subscribe and respond accordingly.\nType Safety: Utilize TypeScript's strong type system to define interfaces and types for blockchain clients, smart contracts, and other components.\nError Handling: Implement robust error handling strategies for blockchain interactions, including retries and fallback mechanisms.\nSecurity: Integrate secure practices such as input validation, sanitization, and private key management.\nDocumentation: Provide comprehensive documentation and clear references for users of AbakhusJS.\n\n# AbakhusJS Roadmap:\n(Q2 2024) Planning and Design: Define library objectives, use cases, and key abstractions. Design the architecture incorporating the required design patterns.\n(Q2-Q3 2024) Development: Implement the Abstract Factory for creating blockchain clients. Develop Factory Methods for different network clients. Implement Singleton for client instances. Use Composite for complex blockchain objects. Integrate Observer for event handling and notifications. Define TypeScript interfaces and types for clarity and safety.\n(Q3 2024) Testing and Optimization: Conduct unit and integration tests for each component. Optimize performance and memory usage.\n(Q2-Q4 2024) Documentation: Create thorough documentation including code examples, usage guidelines, and API references.\n(Q3-Q4 2024) Release and Maintenance: Release the library with versioning and changelogs. Monitor user feedback and make continuous improvements. Maintain compatibility with new blockchain protocols and updates.\n\nBy developing AbakhusJS we will abstract most of the blockchain interaction layer, including smart-contracts deployment for web2 developers then we will onboard them into web3 without the need for them to learn Solidity or Rust. This will have a double impact: (i) facilitating web3 education for web2 developers, and (ii) a more user-friendly way to develop new web3 applications\n\n# AbakhusJS repository\nhttps://github.com/Abakhus/AbakhusJS", "lastUpdated": 0, "projectGithub": "Abakhus", "projectTwitter": "abakhus"}, "recipient": "0xC89d19873d85af16cdEFCE3aC444e09576fc5769"}}