grants-program icon indicating copy to clipboard operation
grants-program copied to clipboard

Finish DeName Architecture v1

Open khoa-nvk opened this issue 1 year ago • 14 comments

APPLICANT

Type:                                                                        Direct Application

Email:                                                                    [email protected]

Discord:                                                    khoa_nvk

Twitter:                                                        khoa_nvk

Stacks Forum:           khoanguyen.id.blockstack

GRANT BASICS

Grant Name:                                        Finish DeName Architecture v1

Total Budget:                              25,000

Total Duration:                 650

Grant Type:                                               Open Source Dev 1st time Grantees

Grant Track:                                          Stacks dApps & Clarity

Grant Goal:                                               Integrate Between Technologies

Grant Audience:             End Users (Consumer)

Specific Audience:         Stacks users who already have a .btc domain

Grant Team:                                       0xTraderTrou,khoa-nvk,SteveTran2903

Previous Grants:                      

Ecosystem Programs:      

GRANT MISSION, IMPACT, RISKS & REFERENCE

Grant Mission:         There are 2 million .eth domains on Ethereum. There are over 100k .btc domains only in one month from Stacks. The number is creasing over time.

The problem is after you buy a .btc domain, you have to add .us after your .btc domain to use it. It's not the decentralized user experience we want.

DeName solves this problem by making the .btc domain accessible.

DeName will help thousand of .btc domains create and config their website in a few clicks and no code website builders effortlessly.

Users can showcase their NFT collection and strengthen their identity on the web by using DeName.

It creates a compound effect. The more websites created by DeName, the more users Stacks have.

In the future, users can use .btc for websites, blog, email, and even real-life businesses.

Grant Impact:               How many websites are created from DeName? How often do they share their website with others? Total webpage view of DeName's websites. How many first-time Stacks users come from creating websites on DeName?

Grant Risks:                          There is no technical risk. But there is minor difficulty to encourage and educate users to install the DeName plugin. Our plan is to create educational videos, tutorials, and beautiful NFT gallery templates to trigger curiosity. We also have experience building a 30k-member community before.

Support Link:                                     

Please follow these steps to understand DeName better:

  1. Read ReadMe.pdf first
  2. Please watch the DeName_Introduction.mp4
  3. Please take a look at the DeName_Architecture.jpeg
  4. If you want to try the Stacks Domain Navigator extension. Please download the Stacks Domain Navigator Demo.zip. Then open chrome://extensions/ on your browser. Toggle the Developer Mode. Unzip the file and select Load unpacked. Then go to http://activator.btc or http://dename.stx/

GRANT ROADMAP & DELIVERABLES

MILESTONE 1:

Deliverable:                    Stacks Domain Navigator Chrome extension, Domain Resolver and default website

MILESTONE 2:

Deliverable:                   Simple website builder with customization, integrate Clarity contract to config

FINAL DELIVERABLE

Deliverable:                   Stacks Domain Navigator plugin, Domain Resolver and 1-click Website Builder

khoa-nvk avatar Oct 20 '22 12:10 khoa-nvk

👋 @khoa-nvk Thanks for your application! We will do a pre-review and let you know if we have any immediate questions. In the mean time please refer to our review schedule here for a detailed timeline and response dates. Best, Will

stacks-foundation avatar Oct 20 '22 12:10 stacks-foundation

Thank you for this proposal @khoa-nvk ! Very cool project.

will-corcoran avatar Oct 20 '22 13:10 will-corcoran

The plugin is probably a project on its own.

How does it work together with owl.link? And the work by Phillip's work #722 . Probably a SIP should describe how to resolve bns names to websites.

Which parts are already finished? Pre-existing work?

friedger avatar Oct 20 '22 21:10 friedger

Currently we use a proxy server (Stack Domain Resolver) behind the scence to resolve those bns websites.

The routing configurations are stored in a smart contract then it can be read publicly.

The extension (Stack Domain Navigator) will route .btc, .stx, ... domains to the proxy server.

IMG_20221021_084025_317

Here is the infographic explains the DeName system.

0xtrou avatar Oct 21 '22 01:10 0xtrou

We will also build the samething with owl.link but the profile page will be served directly under the bns, not like own.link.

But it's just a showcase for the DeName resolver and navigator.

Hence the DID implementation from Philip recommendation is prob implemented by end users side, as a DNS infra layer we can encourage users to implement the DID to make their website/dapps operate in a standard manner.

0xtrou avatar Oct 21 '22 01:10 0xtrou

This is gonna be a long-lived journey since our Stack Domain Resolver (currently a single centralized instance) can be expanded to a p2p network that powers the bns websites to work.

Currently we want to focus on end users side so that DeName proposal is all about UI/UX, the infra expansion will likely come later once the adoption is strong enough.

0xtrou avatar Oct 21 '22 01:10 0xtrou

@friedger we have done the demo, can check it out here https://drive.google.com/drive/folders/1aqeqTgsfECxYnRWW33ZyCVraYrW736_f

0xtrou avatar Oct 21 '22 02:10 0xtrou

Thank you for the clarifications. Makes sense to me.

For the config settings, does it make sense to use Atlas instead of a smart contract? What about storing the users' websites on Atlas as well?

friedger avatar Oct 21 '22 12:10 friedger

It seems like atlas was unmaintained a long time ago.

Btw I think the routing configuration should be stored in a deployed smart contract on Stacks, so it can be decentralized and secured enough. The configuration is made via dapp then it's also familiar to web3 users.

The Stack Domain Resolver will act as an aggregator layer, fetch data from Stacks blockchain and serve the routes.

0xtrou avatar Oct 21 '22 15:10 0xtrou

But yeah, thanks for the suggestion.

I have a plan for expanding the Resolver layer but it will make more sense if we have at least some adoption first xD. Hopefully.

0xtrou avatar Oct 21 '22 15:10 0xtrou

It seems like atlas was unmaintained a long time ago.

Atlas is used on a daily basis, mainly by bns contracts.

friedger avatar Oct 21 '22 18:10 friedger

I am wondering if we can add something like MX records for https://github.com/stacksgov/Stacks-Grant-Launchpad/issues/729 in this design

rswol avatar Oct 21 '22 22:10 rswol

It seems like atlas was unmaintained a long time ago.

Atlas is used on a daily basis, mainly by bns contracts.

https://github.com/stacks-network/atlas

Seems like it was merged into blockstack core. Also there is not much documentation.

0xtrou avatar Oct 22 '22 01:10 0xtrou

I am wondering if we can add something like MX records for #729 in this design

Yeah sure. The end goal for our Resolver layer would be a fully functional DNS. But not in this MVP I think xD.

0xtrou avatar Oct 22 '22 01:10 0xtrou

I think you have an interesting project. If you haven't already gone through the Stacks Web3 Startup Lab, I would like to invite you to apply.

Here's a 5-minute read on how we can help you turn your startup idea into an investment-ready startup: www.web3startuplab.io

If you are interested, you can apply through the "Apply Now" button.

Feel free to ping me on email: [email protected]

Scarlett-Web3 avatar Nov 01 '22 18:11 Scarlett-Web3