Skip to content

Commit

Permalink
add PolkaMask
Browse files Browse the repository at this point in the history
Update polkamask.md
  • Loading branch information
Nick-1979 committed Oct 19, 2023
1 parent 95c382b commit 0552b76
Showing 1 changed file with 153 additions and 0 deletions.
153 changes: 153 additions & 0 deletions applications/polkamask.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
# PolkaMask

- **Team Name:** PolkaGate
- **Payment Address:** 17VdcY2F3WvhSLFHBGZreubzQNQ3NZzLbQsugGzHmzzprSG (USDT)
- **[Level](https://github.com/w3f/Grants-Program/tree/master#level_slider-levels):** 2


## Project Overview :page_facing_up:

[Polkagate](polkagate.xyz) is a dedicated team of Polkadot enthusiasts, actively involved in various aspects of community development. Our multifaceted contributions encompass the development of the Polkagate extension, as well as the efficient management of Polkagate's Polkadot and Kusama pools. Today, we are excited to present our latest initiative aimed at further enriching the Polkadot ecosystem.

Introducing a revolutionary project with the vision of bridging the gap between the Polkadot ecosystem and the vast user base of Metamask, which boasts over 30 million users. We are committed to creating a seamless connection between these two vibrant communities, opening up new possibilities and opportunities for all involved.

### Overview

This project includes a signer Snap for the Polkadot ecosystem on MetaMask. It seamlessly integrates with all existing dApps without requiring any code modifications.
The Signer is capable of signing not only Polkadot and Kusama extrinsics but also extrinsics from all other Substrate-based chains that align with Polkadot.js APIs.

![Image](https://raw.githubusercontent.com/Nick-1979/PolkadotJsPlusPictures/main/polkagate/polkamask%20small.bmp)


### Project Details

We've prepared a [demo video](https://youtu.be/rclCgIFql7U), showcasing how Polkadot.js Apps seamlessly connects with MetaMask using the Polkagate Signer Snap. This Snap flawlessly signs transactions, enhancing the user experience.

Our project primarily utilizes JavaScript and TypeScript for development, ensuring accessibility and extendability for developers interested in contributing fresh ideas.

While not a full-fledged extension like existing Polkadot ecosystem extensions such as Polkagate, Subwallet, or Talisman, our project has the potential to evolve into a comprehensive extension. This transformation is contingent on MetaMask expanding the capabilities of its Snaps, which some of them are currently accessible only to developers using MetaMask Flask.

To uphold Snap security, MetaMask requires audits from selected teams. We are in the process of arranging these audits to ensure a high level of security. Additionally, we have plans to further enhance the extension's capabilities as soon as MetaMask provides Snaps with more functionalities.

### Ecosystem Fit

Where and how does your project fit into the ecosystem?

Polkamask is designed to seamlessly integrate into the Polkadot and Kusama ecosystems by enhancing the interaction between MetaMask and Substrate-based chains. It introduces the Polkagate Signer Snap, allowing users to access and utilize the Polkadot and Kusama networks without any code modifications. It aims to bridge the gap between MetaMask and the Polkadot ecosystem, making it more accessible and user-friendly.

Who is your target audience (parachain/dapp/wallet/UI developers, designers, your own user base, some dapp's userbase, yourself)?

Our primary target audience includes dApp developers and users who engage with the Polkadot and Kusama ecosystems through MetaMask. We aim to provide a solution that benefits developers by simplifying the integration process and offers users a smooth experience when interacting with Polkadot and Kusama dApps through MetaMask.

What need(s) does your project meet?

Polkamask addresses the need for seamless integration between MetaMask and Substrate-based chains like Polkadot and Kusama. It removes barriers and complexities in the user experience, allowing MetaMask users to access these ecosystems without having to modify existing dApps. This simplification and user-friendliness are essential for the broader adoption of Web3 technologies.

Are there any other projects similar to yours in the Substrate / Polkadot / Kusama ecosystem?

There are existing projects in the Polkadot ecosystem that aim to enhance the user experience and accessibility. One example is the Polkadot wallet Snap. However, it primarily supports Polkadot, Kusama, and Westend based on their codebase on GitHub. An important distinction is that integrating with this wallet Snap often requires dApps to undergo modifications to utilize the Snap, which can be a significant barrier to integration.

In contrast, Polkamask differentiates itself by introducing the Polkagate Signer Snap. This Snap offers seamless integration with MetaMask, providing a user-friendly experience and eliminating the need for dApps to make code modifications. This ease of use and the ability to connect to Substrate-based chains without requiring code changes make Polkamask a unique and valuable addition to the ecosystem.

## Team :busts_in_silhouette:

### Team members

- [Kami Ekbatanifard](https://www.linkedin.com/in/ekbatanifard)
- [Morteza Chalaki](https://www.linkedin.com/in/mchalaki)
- [Mehran Pourvahab](https://www.linkedin.com/in/mehran-pourvahab)
- [Martin Azarbad](https://www.linkedin.com/in/mehranazarbad)
- [Amir Ekbatani](https://www.linkedin.com/in/amir-ekbatani-4b7399201)

### Contact

- **Contact Name:** Kami Ekbatanifard
- **Contact Email:** [email protected]
- **Website:** [polkagate.xyz](https://polkagate.xyz/)

### Team's experience

We are a dedicated team of Polkadot ecosystem enthusiasts with a strong track record of contributing to the blockchain space. Our mission is to make common Polkadot functionalities more accessible to end users. As the creators of the Polkagate extension, we have already demonstrated our commitment to enhancing the Polkadot experience.

Our team members bring diverse expertise:

Kami: Holds a Ph.D. in software systems and works as a blockchain engineer and full-stack developer. Kami's experience includes developing applications for both private and public sources, such as centralized and decentralized crypto exchanges, NFT markets on Ethereum, and more. Kami also has a notable research track record, which you can explore [here](https://scholar.google.com/citations?user=pJ0HwqEAAAAJ&hl=en).

Morteza: Our CFO, Morteza, has an impressive background in financial systems, ensuring strong financial management for our projects.

Mehran: As a dedicated blockchain researcher, Mehran contributes to in-depth research within the Polkadot ecosystem.

Martin: Martin, a senior UX designer, who is working on enhancing the user experience of our softwares.

Amir: Amir, our meticulous test engineer, is responsible for implementing various tests to guarantee the smooth performance of our developments.

With the successful development of the Polkagate extension, we have already established our commitment to the Polkadot ecosystem. Together, we are determined to continue making Polkadot more user-friendly and accessible, building on our collective expertise and passion.

Previous Web3 Foundation Grants:

- Polkadot js plus Extension - [Details](./Plus.md)
- Polkadot js plus / Social Recovery Wallet (Follow-up Grant) - [Details](./Plus-social-recovery-wallet.md)
- Polkadot js plus / Nomination Pools (Follow-up Grant) - [Details](./Plus-follow-up.md)

Note: Polkadot js plus has been rebranded as the Polkagate extension.

### Team Code Repos

- https://github.com/PolkaGate/polkagate-extension
- https://github.com/PolkaGate/polkadot-Js-Plus-extension
- https://github.com/Nick-1979/Eligibility
- https://github.com/Nick-1979/fastUnstakeTest
- https://github.com/Nick-1979/stuckTokens

Please also provide the GitHub accounts of all team members. If they contain no activity, references to projects hosted elsewhere or live are also fine.

- https://github.com/Nick-1979
- https://github.com/AMIRKHANEF
- https://github.com/mehran-pourvahab

### Team LinkedIn Profiles (if available)

- https://www.linkedin.com/in/ekbatanifard
- https://www.linkedin.com/in/mchalaki
- https://www.linkedin.com/in/mehran-pourvahab
- https://www.linkedin.com/in/mehranazarbad
- https://www.linkedin.com/in/amir-ekbatani-4b7399201


## Development Status :open_book:

While our project code is currently housed in a private repository due to its work-in-progress (WIP) nature, we have made two essential packages available for the community:

- @polkagate/snap: [NPM Link](https://www.npmjs.com/package/@polkagate/snap)
- @polkagate/extension-dapp: [NPM Link](https://www.npmjs.com/package/@polkagate/extension-dapp)


These packages serve as initial contributions to our project and provide a foundation for what's to come. We look forward to further developing and sharing our work as it matures.

## Development Roadmap :nut_and_bolt:

### Overview

- **Total Estimated Duration:** 3 months
- **Full-Time Equivalent (FTE):** 1
- **Total Costs:** 30,000 USD

### Milestone 1 - Create PolkaMask


| Number | Deliverable | Specification |
| -----: | ----------- | ------------- |
| **0a.** | License | Apache 2.0 / GPLv3 / MIT / Unlicense |
| **0b.** | Our documentation will include both inline code explanations and a comprehensive tutorial to guide users on how to work with the Polkagate Signer and MetaMask Snaps. This tutorial will effectively showcase the functionality of Polkamask.|
| **0c.** | Testing and Testing Guide | Core functions will be fully covered by comprehensive unit tests to ensure functionality and robustness. In the guide, we will describe how to run these tests. |
| **0d.** | Docker | We will provide a Dockerfile(s) that can be used to test all the functionality delivered with this milestone. |
| 0e. | Article | We will publish an **article** that explains what was done/achieved as part of the grant. |
| 1. | Polkagate Signer (Metamask Snap) | We will develop a MetaMask Snap that intercepts user interactions with dApps and provides a user-friendly interface for signing transactions. |
| 2. | Upgrading Polkadot extension-dapp | We will enhance the official Polkadot extension-dapp by adding Snap support to improve its functionality. |
| 3. | Upgrading Polkadot-Cloud | We will integrate Metamask as a connection option within Polkadot-Cloud, expanding its compatibility and accessibility. |



## Future Plans

Our future plans for the project involve gradual expansion in alignment with new features released by MetaMask for Snaps. Our short-term focus includes utilizing, enhancing, promoting, and supporting the existing functionality. In the long term, we intend to continue adapting and extending the project to encompass a broader range of features, ensuring it evolves into a full-featured extension as MetaMask introduces new capabilities for Snaps.

0 comments on commit 0552b76

Please sign in to comment.