Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add structure to Integrate Cardano #140

Open
1 of 16 tasks
tweakch opened this issue Jul 14, 2021 · 2 comments
Open
1 of 16 tasks

Add structure to Integrate Cardano #140

tweakch opened this issue Jul 14, 2021 · 2 comments
Assignees
Labels
integrate Cardano Integrate Cardano category

Comments

@tweakch
Copy link
Collaborator

tweakch commented Jul 14, 2021

Improve Structure for "Integrating Cardano" section

The structure of Integrate Cardano should be improved. Below ere are the issues I found. I aggregate them all here as to not spam the Issues Tab with my own issues. You can create new issues and assign them to me if you like, I'll do them whenever I have some time to spare.

I am not sure how much thought went into this section and I apologize if I miss the advantages of the current structure

Sub issues

No content in Overview

IMHO the integrate-cardano/Overview.md needs to talk about what this section is about.

  • It should inform the reader about the necessary articles that he should read before continuing.
  • It should introduce and motivate the guides it contains.
  • It should briefly talk about the term integration and explain how the guides try to help achieve integration.
  • It should mention that the guides provide low-level solutions in different languages. Readers should be encouraged to submit an issue for "missing" languages.
  • It should introduce the components covered in the guides (cardano-node, cardano-cli and cardano-wallet) and present the structure of the following guides.

Inconsistent Headings

  • fix header levels

The used headings in the articles creating-wallet-faucet.md, listening-for-payments-cli.md and listening-for-payments-wallet.md begin on level 3 instead of level 2 breaking md001

Current

├╌┬ integrate-cardano/
┆ ├╌╌╌ overview.md (slug: integrate-cardano)
  ├╌┬╌ creating-wallet-faucet.md (title: Exploring Cardano Wallets)
  │ ├╌ ### Overview 
  │ ├╌ ### Cardano Wallets
  │ ┆
  ┆
  ├╌┬╌ listening-for-payments-cli.md
  │ ├╌ ### Overview 
  │ ├╌ ### Use case 
  │ ┆
  ┆
  └╌┬╌ listening-for-payments-wallet.md
    ├╌ ### Overview 
    ├╌ ### Use case 

Proposed

├╌┬ integrate-cardano/
┆ ├╌╌╌ overview.md (slug: integrate-cardano)
  ├╌┬╌ creating-wallet-faucet.md (title: Exploring Cardano Wallets)
  │ ├╌ ## Overview 
  │ ├╌ ## Cardano Wallets
  │ ┆
  ┆
  ├╌┬╌ listening-for-payments-cli.md
  │ ├╌ ## Overview 
  │ ├╌ ## Use case 
  │ ┆
  ┆
  └╌┬╌ listening-for-payments-wallet.md
    ├╌ ## Overview 
    ├╌ ## Use case 

The above structure will also improve the side-bar in the guide to contain subchapters and allow to jump to topics like creating a wallet with cardano-cli.

  • Dont use Emphasis as Headings

Throughout the article (f.e. in ### Create simple transaction paragraphs) we use Emphasis (**Generate recovery phrase**) instead of Heading (#### Generate recovery phrase) breaking md036

Long articles

creating-wallet-faucet.md is a very long article and talks about the following topics:

  • Overview
  • Carano wallets
  • Creating a wallet
    • Creating a wallet with cardano-cli
      • Querying the wallet UTXO with cardano-cli
      • Creating simple transaction
        • generate payment key-pair for wallet 1
        • generate wallet address for wallet 1
        • query UTxOs for wallet 1
        • requesting funds from Testnet Faucet
        • generate payment key-pair for wallet 2
        • generate wallet address for wallet 2
        • query wallet UTxOs for wallet 2
        • query protocol parameters
        • Create draft transaction
        • Calculate min fee
        • Create draft transaction
        • Sign transaction
        • Submit transaction
    • Creating a wallet with cardano-wallet
      • Starting cardano-wallet as a REST API Server
      • Checking wallet server information
      • Creating the wallet via API
      • Receiving tADA (Test ADA)
      • Creating simple transaction
        • generate recovery phrase
        • recovery phrase result
        • create wallet request
        • create wallet result

The following subissues could help improve readability.

  • move Creating simple transaction one layer up and rename to Creating simple transaction with cardano-cli and Creating simple transaction with cardano-wallet respectively
  • Split fauctet article into multiple guides / use cases (like "Creating a wallet", "Receiving tADA", "Building a transaction", "Receiving payments").

Testnet Faucet Limit

If one works through the entire article he will first submit 1000 ada to the wallet he created using cardano-cli. Then (20 minutes later) he will create a new wallet using cardano-wallet and again request 1000 ada from the faucet which has a payout limit for 1000 ada / day.

  • mention this limit explicitly to make the reader aware of the consequences if he works throught the entire article.
  • reduce the guide's requested Ada to 500 ada for both paths (cardano-cli and cardano-wallet).
  • insert / create a new guide that submits a multi-wittness transactions to transmit funds from wallet 1 and 2 to wallet 3.

Oddball solution

We have the focus on two components: cardano-cli and cardano-wallet. We try to give the reader an idea on how to integrate them.

We use two approaches to present this information to him. theme-based approach and component-based approach

  • Adopt Theme-based structure (as in creating-wallet-faucet.md)
  • Adopt Component-based structure (as in listening-for-payments-cli.md and listening-for-payments-wallet.md)

I think I like Component-based more because the articles are shorter, but I really don't know what is better.

Don't repeat yourself

The guides contain some repetition. Sometimes this is unavoidable when talking about two components who do very similar things. The improvements should help avoid the unneccesary repetitions.

  • reduce repetition by improving structure

As an example, we have this paragraph from the cardano-wallet-faucet.md

As mentioned before, in this guide we will only be focusing on the cardano-cli and cardano-wallet since they provide some level of programmability which is important when we are talking about Cardano integrations for different kinds of use-cases.

This could be moved to the overview.md and not be talked about anymore. By removing this paragraph we could move all headings one layer up which would improve the structure of document further.

Typos

Improve current structure (draft)

Until we settle on the approach of the guide (theme-based or component-based or both or leave it as is) I'll leave this here as a draft and "mind map"

### Current structure
┆
├╌┬ integrate-cardano/
┆ ├╌╌╌ overview.md (slug: integrate-cardano)
  ├╌┬╌ creating-wallet-faucet.md (title: Exploring Cardano Wallets)
  │ ├╌ ### Overview 
  │ ├╌ ### Cardano Wallets
  │ ├╌ ### Creating a wallet
  │ └┬╌ #### Creating a wallet with `cardano-cli`
  │  ├╌ #### Querying the wallet UTxO with `cardano-cli`
  │  ├╌ #### Creating simple transactions
  │  ├╌ #### Querying the wallet UTxO with `cardano-wallet`
  │  └╌ #### Creating simple transactions
  ├╌┬╌ listening-for-payments-cli.md
  │ ├╌ ### Overview 
  │ ├╌ ### Use case 
  │ ├╌ ### Technical flow
  │ ├╌ ### Time to code!
  │ ├╌ ### Running and Testing
  │ └╌ ### Complete the payment
  └╌┬╌ listening-for-payments-wallet.md
    ├╌ ### Overview 
    ├╌ ### Use case 
    ├╌ ### Technical flow
    ├╌ ### Time to code!
    ├╌ ### Running and Testing
    └╌ ### Complete the payment


### Theme Baseed Structure (Proposed)
┆
├╌┬ integrate-cardano/
┆ ├╌╌ overview.md (slug: integrate-cardano)
  ├╌┬╌ creating-wallet-faucet.md (slug: )
  │ ├ ## Overview 
  │ ├ ## Cardano Wallets
  │ ├ ## Creating a wallet
  │ ├┬╌ ### Create wallet with `cardano-cli`
  │ ├┬╌ ### Create wallet with `cardano-wallet`  
  │  └╌ Cardano Wallets
  ├╌
  └╌ 


### Component-Baseed Structure (Proposed)
┆
├╌┬ integrate-cardano/
┆ ├╌╌ overview.md (slug: integrate-cardano)
  ├╌┬╌ creating-wallet-faucet.md (slug: )
  │ ├ ## Overview 
  │ ├ ## Cardano Wallets
  │ ├ ## Create wallet with `cardano-cli`
  │ ├╌┬╌ ### Create wallet with `cardano-cli`
  │ ├╌┬╌ ### Create wallet with `cardano-wallet`  
  │ │ └╌ Cardano Wallets
  │ ├ ## Create wallet with `cardano-cli`
  │ ├╌┬╌ ### Create wallet with `cardano-cli`
  │ ├╌┬╌ ### Create wallet with `cardano-wallet`  
  │   └╌ Cardano Wallets
  ├╌
  └╌ 
@tweakch
Copy link
Collaborator Author

tweakch commented Jul 14, 2021

And let me say that I really like the portal so far... the you've done a fantastic job @katomm @Mercurial @Nazeim @rcmorano @AndrewWestberg and everyone I forgot...

@Mercurial Mercurial self-assigned this Jul 14, 2021
@Mercurial
Copy link
Contributor

this issue makes me so happy! I will be reviewing this in the next couple days, thank you so much!

@katomm katomm added the integrate Cardano Integrate Cardano category label Aug 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
integrate Cardano Integrate Cardano category
Projects
None yet
Development

No branches or pull requests

3 participants