AbakhusJS
41%
average score over 6 application evaluations
Develop a TypeScript library AbakhusJS for interacting with various blockchains using design patterns for efficient resource management and scalable architecture, supporting web2 developers transitioning to web3.

Team

This project is to be developed by the same team that developed the Abakhus dApp.

Project description

We 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.

Achievements related to Abakhus dApp

(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: https://www.youtube.com/live/FxnJ-pJgRsU?feature=share (ii) Q3 2023: Mid-September 2023 we presented a talk about Abakhus (privacy-preserving) dApp at the Blockchain Rio Festival: https://twitter.com/SecretNetwork/status/1702412567673442759 (iii) Q4 2023: Early October 2023 we presented a talk about our privacy-preserving Abakhus dApp at the Rio Innovation Week: https://twitter.com/abakhus/status/1704981536070635629 (iv) Q4 2023: Late October we presented a talk about “Blockchain and Privacy” for the students of the Rio de Janeiro Rural Federal University: https://twitter.com/amrdavila/status/1718047590388777159/ (v) Q1 2024: We officially launched our Blockchain Innovation Hub on March 19th, during the DeSci Rio 2024 edition: https://twitter.com/abakhus/status/1763547619454837040 https://www.linkedin.com/feed/update/urn:li:activity:7176551950182670336

The 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.

AbakhusJS Requisites:

Abstract Factory: Create an abstraction layer to produce different types of blockchain network clients, each specific to a particular blockchain protocol or network. Factory Method: Implement factory methods within the Abstract Factory to instantiate specific client implementations based on the target blockchain network. Singleton: Ensure a single instance of each blockchain client exists, preserving resources and ensuring consistent state throughout the application. Composite: Use the Composite pattern to represent and manage complex blockchain objects such as smart contracts and accounts, allowing for hierarchical organization and easier interaction. Observer: 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. Type Safety: Utilize TypeScript's strong type system to define interfaces and types for blockchain clients, smart contracts, and other components. Error Handling: Implement robust error handling strategies for blockchain interactions, including retries and fallback mechanisms. Security: Integrate secure practices such as input validation, sanitization, and private key management. Documentation: Provide comprehensive documentation and clear references for users of AbakhusJS.

AbakhusJS Roadmap:

(Q2 2024) Planning and Design: Define library objectives, use cases, and key abstractions. Design the architecture incorporating the required design patterns. (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. (Q3 2024) Testing and Optimization: Conduct unit and integration tests for each component. Optimize performance and memory usage. (Q2-Q4 2024) Documentation: Create thorough documentation including code examples, usage guidelines, and API references. (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.

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

AbakhusJS repository

https://github.com/Abakhus/AbakhusJS

AbakhusJS History

Explore projects

Transition from web2 consumerism to web3 regenerative culture, promoting user sovereignty, creating shareable resource pools, fostering mutual availability, and catalyzing a shift towards a commonship-based, abundant web3 ecosystem.
A web3-based messaging protocol offering end-to-end encryption, decentralization, and interoperability by utilizing a registry for communication details and a network of delivery nodes. Open source with an initiative for app integration.
BIM is a decentralized cryptocurrency protocol where users can buy exchange sell bridge and stake their token. Providers provide liquidity for staking to earn passive income
Create a self-sustaining eco-region focusing on renewable energy, local food/water security, cultural heritage, education, native forests, and community gardens for a sustainable future.
A multi-chain, no-code tool enabling instant, cost-free token creation with initial liquidity, funded by ETH stakers; fees are shared among stakers, token creators, and the protocol.