onflow / developer-grants

Grants for developers that contribute to the broader developer ecosystem
Apache License 2.0
50 stars 18 forks source link

Flow swift & FCL IOS maintenance #20

Closed lmcmz closed 1 year ago

lmcmz commented 2 years ago

flow-swift

Grant category

OpenSource maintenance

Description

There are some new update on flow like secure cadence, dynamic gas fee and HTTP API. We would like to add those new features into our project.

Problem statement

Currently, some part of the SDK is out of date

Some part can be improved

Proposed solution

Impact

Milestones and funding

Milestone Deliverables Timeline Risks FLOW requested
1 - HTTP API Flow-swift will support no only gRPC but also HTTP API request ~ 2 weeks Time -
2 - Dynamic Gas Fee By adding a new method in SDK will able to calculate the gas fee dynamically base on compute effect and price effector, before sending it to the chain ~ 2 weeks Need setup a backend with emulator to calculate execution effort -
4 - FCL iOS sign message & account proof Fcl iOS will have the ability to prove authentication ~ 1 weeks Need the wallet provider which will return the proof account serice -
5 - FCL browser window improvement Currently the fcl iOS window will pop as full screen, it should have the ability to pop as page sheet ~ 1 weeks - -
6 - Decode method improving Decoding accessAPI response is hard to use and ugly at the moment, we would like to improve this make it easier to use like fcl js one ~ 1 weeks - -
7 - Maintenance Help and resolve issues for developers who face the issue ~ 4 month - -

Team

Name Role Bio Contact
Hao iOS Engineer The founder of outblock, the core developer of lilico wallet. hao@outblock.io

Milestone completion

srinjoyc commented 2 years ago

Hi @lmcmz ,

Thanks for the proposal! We have some small questions/suggested changes to the scope of the milestones:

  1. Will you be keeping support for both GRPC and HTTP? It might be lower overhead to completely switch over to HTTP unless there were any technical blockers there.
  2. We can leave out dynamic gas fees for now as there is a lot of complexity being worked on through the FLIP process and the protocol team is still figuring out the mechanics of the system. Once the FCL team gets more information on this, we might be able to add it to this scope, but for now would leave this out.
  3. Milestones 4,5,6 look good!
  4. For "maintenance" the FCL team is planning on releasing a full specification on FCL as it starts to support multiple environments. If possible, we'd like to add "conforming to the new FCL specification" which will include formalizing the methods you support now and ensuring data types and structure are consistent across all implementations.

Lastly, as an action item, would you be able to edit your requested FLOW amounts in USD instead? If you prefer, you can also leave it blank and we can provide suggested amounts. We are going through a small process change and believe it'll be much easier to discuss in terms of USD although the payout will be in FLOW based on a 30-day average token price.

If you're good with all this, leave a reply and we can move forward in the process!

We really appreciate all the great work from you so far 😄

lmcmz commented 2 years ago

Hi @srinjoyc

  1. Yes, I was planning to make the as optional to developer which can choose from GRPC or HTTP. But yeah, since there is no blocker with GPC for now, we can lower the priority.
  2. Cool ~
  3. I might wanna add one extra optional feature with Wallet connect v2, so this SDK will support deep link. Let me know how you guys think.
  4. Strong agree with it, I'm happy to keep all SDK aligned.

You guys can provide suggested amount. 😊

srinjoyc commented 2 years ago

Here is what we would suggest for the milestones:

Milestone Deliverables Timeline Risks USD suggested
1 - HTTP API Flow-swift will support the new Access Node HTTP API ~ 2 weeks Time 8,000
2 - Wallet Connect V2 MVP support Deeplinking, Discovery ~ 4 weeks Time, V2 Support, FCL Spec 16,000
4 - FCL iOS sign message & account proof Fcl iOS will have the ability to prove authentication ~ 1 weeks Need the wallet provider which will return the proof account serice 4,000
5 - FCL browser window improvement Currently the fcl iOS window will pop as full screen, it should have the ability to pop as page sheet ~ 1 weeks - 4,000
6 - Decode method improving Decoding accessAPI response is hard to use and ugly at the moment, we would like to improve this make it easier to use like fcl js one ~ 1 weeks - 4,000
7 - Maintenance Resolve bugs, issues and maintain FCL spec compliance ~ 4 month - 16,000

Total USD Suggested: $52,000

Let us know if this looks good and we can have it approved!

lmcmz commented 2 years ago

Challenge accepted🫡

image