{"signature": "0xaed2a094ed5bb597e807a59f3ab9f46a289967164fa6f503edc290c184a3b0ac755cbe300bc3fb43690dbf84fac9371b8d2746990649b669cf651aa7bfbc30af1b", "application": {"round": "0xe03a19f4921d69cddd37f54dfe814dc66aa92100", "answers": [{"type": "email", "hidden": true, "question": "Email Address", "questionId": 0, "encryptedAnswer": {"ciphertext": "TBfXHtmE3q0oWd9AcPuPNf4njll0EKolMSeYNTp99SuEv4/tu+H6bGBgrL3KpWA7", "encryptedSymmetricKey": "7f7b451e7ad3a4c2a7a83f741bcdfff3f1c5fed8805a61303d9e3330036a6eef05f2d181028d074cfc77113563505b0aa892648b468855bafbb0912050b224be5ff964ddb90757b09ab38e8732859857ea756cde0a681278fddc0ecdfdf22289bb413ebaccec02b1f5a50d09eee49cf718d6b84186cffa517e51ddcc863c8d150000000000000020ef6a16843f4748829a2ac0505ad9b1a160f7c2f759ae86656f41364932a5f14b269a2ce7fe2086cd90493aa8b5d84084"}}, {"type": "short-answer", "hidden": true, "question": "Telegram Handle We Can Use To Contact You(you can answer N/A)", "questionId": 1, "encryptedAnswer": {"ciphertext": "uT9ZTgxLIH0leIf+G9VpwUatmz+/v7tStvmnkD57y2Y=", "encryptedSymmetricKey": "4cd0874447adb65ab0ffadf06af35463adf140585f7952260a074637c0ab54a3de80cbd1ee5328e622988874b04768098f343f3c001723860f6da5a040af604d15bea7bb9bfe5f95aaa86462d1a72fe58dd4945db0c35f9f33a9a67d05c05cab6a3221c59cf3449bab317cb614d8b410e972e2f9488ee33b574460d12a6fd765000000000000002023783fd50f0587c97cc44fdb9ea2919d9347d7c3c92887110279f4ece7a1a18d45068dbb7f0f3746970c212149281288"}}, {"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": "Alberto D\u00e1vila - @amrdavila - 0xE765Cb5e17072BBc9cF4C96DCf9ECDE54484c446\n\nRodrigo Jardim - @rodrigojardim - 0xA38e15B0914A72E2C8706b06483b433B02f92dc8\n", "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\n", "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", "answer": "", "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 Amounts, Sources, and Dates 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": "multiple-choice", "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": "short-answer", "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. Many web2 devs are not willing to learn another language like Solidity or Rust, then onboarding them into web3 is not that easy. 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 your dApp or App, focusing on its innovative utility or service within the ecosystem. Highlight the problem it solves or the need it addresses.", "questionId": 16}, {"type": "paragraph", "answer": "By developing and providing AbakhusJS we will be able to offer an easy-to-use library for web2 devs to enter the web3 space. Additionally, AbakhusJS will be abstract enough to facilitate interaction with different blockchain networks like Ethereum (L1 & L2s) and Cosmos Ecosystem.", "hidden": false, "question": "Describe how your application improves user experience in the Web3 space. Include any specific design choices or features that enhance accessibility and practical utility.", "questionId": 17}, {"type": "paragraph", "answer": "Teaching web2 devs to use AbakhusJS is going to be much easier than teaching them to code in Solidity or Rust, then AbakhusJS could be also used as an educational tool to help onboarding more devs in the web3 space.", "hidden": false, "question": "In what ways does your project contribute to financial inclusion, education, or social impact? Explain the specific areas of impact and the target audience or communities you serve.", "questionId": 18}, {"type": "paragraph", "answer": "AbakhusJS code will be freely available in a open repo under the GPL-3.0 license.", "hidden": false, "question": "What type of open source software (OSS) license(s) do you have? Is all of your code available on public repos or is some portion of your codebase private?", "questionId": 19}, {"type": "paragraph", "answer": "Initial. We just mapped the requisites and will start coding in the new few weeks.", "hidden": false, "question": "What stage of development is your application currently in, and what are your immediate next steps? Provide a roadmap or development timeline if available.", "questionId": 20}, {"type": "paragraph", "answer": "Funding to be used mainly for the library development and community building, especially in the context of our Blockchain Innovation Hub (https://github.com/iberoam/blockchain-innovation-hub) where AbakhusJS will be used together with our Abakhus dApp (https://github.com/Abakhus/dApp) in the 1st Cohort of our Hacker House (https://github.com/iberoam/hacker-house)", "hidden": false, "question": "How would funding from this round support your project's development and goals? Outline specific areas where the funds would be allocated (e.g., development, user research, community building).", "questionId": 21}, {"type": "paragraph", "answer": "We are scientists and blockchain developers that entered the blockchain space in 2021, since then we have deployed Abakhus dApp in Secret Network mainnet, and are now proposing to develop AbakhusJS library to promote the use of Abakhus as a protocol for new dApps in the web3 space.", "hidden": false, "question": "Anything else you'd like to share about your project, previous work, or other project affiliations? Anything you'd like to add that may help in determining project eligibility?", "questionId": 22}, {"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": 23}, {"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": 24}], "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"}}