Closed pseudozach closed 2 years ago
Thanks for submitting a grant proposal. Our team will review your submission and get back to you.
@pseudozach -
We are thrilled with what you have been able to accomplish to date and are pleased to continue our support for your extraordinary work. This grant is approved!
Can wait to see it in action and hear about it in a follow up conversation with @JakeBlockchain
Congratulations. Your grant is now approved. Please complete the on-boarding link here: https://stacks-grant.netlify.app/onboard?q=c860e13bacc007ea257991cad39171d2
Hi, Updates on M-1: Channel open feature is implemented and currently live on lnswap.org. This allows users without a Lightning channel (or unreachable from LNSwap LN node) to have an incoming channel when they swap their STX to LN. Demo video: https://www.youtube.com/watch?v=YOY6WWTfuZY
Trigger contract call with LN
feature: Clarity contract is deployed and ready to be used on mainnet but we've been holding off due to:
Once Hiro wallet is updated with the sponsored tx fix, we'll be able to do a demo with stxnft.com to show off non-custodial NFT mint with Lightning with 0 STX. After that all the other marketplaces and apps will be able to use this functionality.
Additional note: I'm considering adding another deliverable to M-2 to enable non-technical folks to run a lnstxbridge client to reduce the barrier to entry for swap providers. Currently this is the limitation on liquidity so it's important to tackle this. I'll share more once I'm more certain on feasibility.
@pseudozach this is looking really cool! thanks for sharing. I know resolving the sponsored tx issue is a priority for the wallet team. Excited to see what you can do when that is resolved. Keep us updated on the M-2 add you are considering!
Updates on M-1:
The sponsored tx fix on hiro wallet was released yesterday. This unblocks the scenario where anyone can trigger a contract call on Stacks with no STX. Another happy coincidence is the most recent Cash App Lightning Network launch. This means we can now do this: https://twitter.com/ln_swap/status/1491347910256050178?s=20&t=QBBaNY1Mk8URSUSYc6PAjg A fully non-custodial NFT mint with Lightning from Cash App for a Hiro wallet with 0 (zero) STX.
I received a relevant request on enabling Paying someone STX with Lightning
from @aviculturist so I went ahead and pushed a new version of triggerSwap contract and deployed. Updates are done on demo website and LNSwap documentation. This means all common scenarios for Stacks App devs are covered and currently live on mainnet, available to be independently integrated.
I'd also like to note the support from other teams in the ecosystem. @heylayer team provided design support so now the widget looks a lot better. And of course @jamil from stxnft.com integrated the widget so we could accomplish the demo. I think multiple collections are now offering pay with Lightning
integration now.
This concludes all deliverables for M1. Thanks,
!M1_Complete
Sorry, you can only complete a milestone if it is active.
!M1_Complete
Thank you for completing M1. The grant committee will review and confirm completion or send feedback within a week
Hi,
All M-2 deliverables are completed, see details below:
[1]
[2]
!M2_Complete
Sorry, you can only complete a milestone if it is active.
!m2_complete
Thank you for completing M2. The grant committee will review and confirm completion or send feedback within a week
Hello, I'm happy to share progress and report completion of Milestone-3,
As targeted previously in this stability
milestone:
Clarity contracts are improved and re-deployed. I finally had a chance to implement almost all of the optimizations suggested by Marvin here: https://github.com/stacksgov/Stacks-Grants/issues/172#issuecomment-904995786 and as expected this made a great difference - by some counts 20x - 25x improvement on runtime costs of the contracts. (Ref-1). On mainnet difference is even more. (Ref-2) Similarly when triggering NFT claim via external triggerStx contract there's ~10x improvement. These efficiency gains should lead to faster and cheaper swaps considering aggregator supports tracking microblocks and fee estimation. This is possibly as cheap and as fast as we can do atomic swaps at least until hyperchains.
Extensive clarity tests are written to reach 100% from ~70% coverage as measured by clarinet (Ref-4), in addition multiple negative tests are written to ensure no gaps were introduced with the latest contracts. I'm still trying to reach out to clarity experts in the community to provide reviews.
CI unit tests failures are fixed and currently tests are passing. Of course, there's still room to improve there but it will require ongoing effort but so far a very good baseline is set. (Ref-5)
As usual, all updates are deployed to mainnet, backend is upgraded and lnswap widget updates are pushed to production to support the most recent improvements across stacks ecosystem apps.
I'm already very excited to continue to next milestone and improve the UI design. I've approached some designers and looking forward to get a new logo and re-design the website to bring it inline with community expectations. Should be fun! !M3_complete
Ref-1: Before: After:
Ref-2: Before - lockStx call on stxswap_v8 https://stacks-node-api.stacks.co/extended/v1/tx/0x3163c088b9ce668003de4c504855c5d66f3eee297eece9f7971ef80efbd4ed69
After - lockStx call on stxswap_v10 https://stacks-node-api.stacks.co/extended/v1/tx/0xff1b224d602b447415ff75fa992158c51870997cb650ddab4e88a37afd718a41
Ref-3: Before - triggerStx on triggerswap-v3
After - triggerStx on triggerswap-v5
Ref-4: Before - clarity coverage
After - clarity coverage
Ref-5: Before - unit test coverage
After - unit test coverage
Sorry, you can only complete a milestone if it is active.
!m3_complete :)
Thank you for completing M3. The grant committee will review and confirm completion or send feedback within a week
Hi, Proud to announce the completion of the final milestone and this grant!
Redesigned UI is merged to lnstxbridge-frontend repo and deployed to production on https://www.lnswap.org.
While I'm happy with the outcome and achieved everything set out to do in this milestone, there is still a lot of work to do and a long wish-list of to-do items like: analytics and a nice landing page that explains the app with relevant animations.
Hopefully I'll have some exciting announcements in the near future and will continue working on this to materialize the vision of a truly decentralized atomic swap network powered by self-hosted nodes where users are able to swap assets with each other without middleman.
I also want to once again thank Stacks Foundation for supporting this work and providing funding to build cool stuff. So much more to do.
Thanks,
!M4_Complete
Thank you for completing M4. The grant committee will review and confirm completion or send feedback within a week
Hello and thank you for participating in the Stacks Foundation Grants Program!
We are in the process of migrating from GitHub to the new Grants Dashboard. In order to complete your grant, you will need to submit any remaining Progress Review and/or Final Review requests through the Dashboard in order to receive your remaining payments.
Lastly, please note we are marking this grant 'closed' on GitHub for organizational purposes, but it is still 'open' on the Grants Dashboard.
Thanks and we hope to continue to support your efforts with additional grants!
Best, Will
Background This is a follow-up grant request to #172 and #204 where a non-custodial submarine swap implementation is successfully developed, open sourced and deployed. This service is currently live at https://LNSwap.org.
During last few months, service has seen increased usage and received great feedback from the community: https://twitter.com/muneeb/status/1479508231345127426?s=20 https://twitter.com/alexrudloff/status/1480880538638594050?s=20 https://twitter.com/heynky/status/1479550035184394241?s=20 https://twitter.com/JakeBlockchain/status/1479642317367562243?s=20 and many others...
Most recent
Mint NFT with Lightning
feature as part of integration with other apps has gotten great attention as well: https://twitter.com/jamilbtc/status/1479226840766111753?s=20 These integrations are ongoing, there are already a few others in the pipeline.I've gotten first-hand look at what it takes to run this service for the past months and as of now, it requires a lot of sysadmin skills, daily monitoring, scripting. Even though the software itself is rather stable, operation is not currently plug&play.
Target of this follow-up grant is to stabilize this project and prepare it for ramp-up and high volume production usage by any swap operator.
Project Overview This grant will help close the gaps of the codebase in terms of stability, test coverage and build necessary tools such that operators can run the app with the least amount of know-how and daily intervention.
Scope See below for a list of categories and components that will be developed to cover gaps in day-to-day operation of LNSwap codebase.
New Features
trigger
any other Clarity contract call via their lockedStx in the original lnswap contract.Admin Tools
Operator's Guide
: an easy-to-follow guide to be hosted on docs.lnswap.org that will hand-hold a swap operator from start to stable operation.Stability
Visual Design
Budget and Milestones M1: Deliverables: New Features Timeline/Cost: 3 weeks/15k$
M2: Deliverables: Admin Tools Timeline/Cost: 2 weeks/10k$
M3: Deliverables: Stability Timeline/Cost: 3 weeks/15k$
M4: Deliverables: Visual Design Timeline/Cost: 2 weeks/10k$
Total Grant Request: 50k$
Team I'll continue working on this. See below for my commit history over the past months. https://github.com/pseudozach/lnstxbridge/commits/main https://github.com/pseudozach/lnstxbridge-frontend/commits/main
Risks Initially only
non-custodial mint NFT with Lightning
will be developed and rest of the use-cases will be met as requested by community/other stacks teams. This is not considered a risk but the plan is developTrigger
contract-call feature as a separate/external contract to standard swap contracts, this will ensure it can be expanded to cover new use cases i.e.Join a yield farm for USDA with Lightning
orjoin an STX stacking pool with Lightning
.Community and Supporting Materials I'll continue using Stacks Discord, twitter and other social media channels to inform the community on the output of the grant.
https://github.com/pseudozach/lnstxbridge https://github.com/pseudozach/lnstxbridge-frontend https://lnswap.org Discord: https://discord.gg/Gt45nMYPCM Twitter: https://twitter.com/ln_swap