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

Detailing the Tour functionality #1764

Closed
vijayee opened this issue Sep 28, 2015 · 4 comments
Closed

Detailing the Tour functionality #1764

vijayee opened this issue Sep 28, 2015 · 4 comments
Labels
need/community-input Needs input from the wider community

Comments

@vijayee
Copy link

vijayee commented Sep 28, 2015

https://github.com/vijayee/tourguide

Exists a prototype for the tour. It features the same tour data structure definitions as the internal package with some additional interfaces to make it work with the terminal menu system. It also features an additional fields for determining each chapter's completion ie:

var FileBasicsAdding = Content{
    Title: "Adding Files",
    Text: `ipfs add
    `,
    verify: func(stdin []byte) (bool, error) {
        var input = string(stdin)
        re, err := regexp.Compile("added\\s([A-Za-z0-9]*)\\s([A-Za-z0-9]*)")
        if err != nil {
            return false, err
        }
        matches := re.FindStringSubmatch(input)
        if len(matches) < 1 {
            return false, errors.New("Add function failed:\n" + input)
        }
        if matches[1] != "" {
            return true, nil
        }
        return false, errors.New("Verification failed")

    },
}

This setup allows you to pipe your ipfs commands into the tour and have their output verified. This may or may not be sufficient for verification. Some chapters may need to actually interact with the ipfs node to verify completion but the tour is not using the ipfs-api yet.

What I'd like to determine is what the chapters' instructions should be for the tour and then start planning what the verification for each should be and whether or not they need to interface with the api directly. There are many chapters in the data structure conceptually but many have no valid fields or instructions. Many may not be needed in my opinion.

@jbenet
Copy link
Member

jbenet commented Sep 29, 2015

@vijayee this is great! So we really should just brainstorm, design, and write the tour chapters. we can likely design them in this repo, or in a note at https://github.com/ipfs/notes/ or even in the tour repo you have.

Also, we do not have to fit to the original chapters. highly encouraged to branch out and try different things.

ideally we would have a flavor storyline, that helps motivate the user. (stories always help go through these things).

@vijayee
Copy link
Author

vijayee commented Sep 29, 2015

So I guess let's start from the Top. Small attempt at story........

Chapter 1: Hello Mars
So long ago.......In a galaxy far far away...Unixians created life and man out of very simple pieces that fit together like lego bricks. They then placed them on the planet earth as stewards and care takers of the primitive planet. Their leader began to give very specific instructions that boomed from the sky to man on the nature of creation, the storage of knowledge, and the Universe which stated "Behold I have created you out of tiny interlocking pieces which store the potential and capacity for great knowledge and attainment.....and....!@#%@$@$$" Their leader looked to the heavens in the direction of mars and became distraught and angry whisper echoed the earth. "Why is Mars still red!?....What do you mean we spent our water budget on earth!?.....how long till development can continue!?!?!.....It was your job to manage the budget!!....I'm mid press-release what will I tell these guys!?!". Their leader then addressed man and said "Hold on, I'll be right back". Man was left confused and alone which soon led to great anger and frustration. It became customary to utter "!@#%@$@$$" in fluent unixian when angry which led to war. The Unixians returned moments later relative to their time but failed to account for relativity in time and discovered man had formed its own civilizations and organizational structures and a network of information called the internet. It was close in concept to the nature of knowledge they had tried to initially bestow upon them but all wrong in its structure and mostly composed of cats. So over-budget, the Unixians could not afford to start over and began to inspire those with the vision to fix the errors in their network of information. One robust enough to reach the stars. The Interplanetary File System began its creation in order to fix the problems created in ignorance. In order to receive the information you must issue commands to initialize with the heavens and your peers. You may use the primitive earth pipe to confirm your commands. ("Warp pipes are on the way!" -The Prophet Mario )

ipfs init | ./tourguide

@zramsay
Copy link
Contributor

zramsay commented Mar 23, 2018

duplicate of #171 ? either one of these issues can probably be closed

@Stebalien
Copy link
Member

Fair enough.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
need/community-input Needs input from the wider community
Projects
None yet
Development

No branches or pull requests

5 participants