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

ipfs tour #171

Open
jbenet opened this issue Oct 14, 2014 · 13 comments
Open

ipfs tour #171

jbenet opened this issue Oct 14, 2014 · 13 comments
Labels
exp/novice Someone with a little familiarity can pick up help wanted Seeking public contribution on this issue status/deferred Conscious decision to pause or backlog topic/docs-ipfs Topic docs-ipfs

Comments

@jbenet
Copy link
Member

jbenet commented Oct 14, 2014

It would be great to have ipfs tour give users a tour through the tool, starting at the basics and proceeding. Something like nodeschool.io, but included.

It could work like this. We have a sequence of sections which are just numbered markdown documents: (1, 2, 2.1, 10.1.2, etc). We keep a tour section in the config:

type Tour struct {
  Resume    string    // pointer to doc to show
  Read      []string  // list of tour points "read"
}
  • Read: have shown it once.
  • Completed: we could have a completed list too, but that would warrant tests, like nodeschool.
# show the tour section pointed at by `config.Tour.Resume`
> ipfs tour
# IPFS Tour - 5. Mounting

Like any self-respecting filesystem, IPFS can be mounted onto your
local unix filesystem.
...


# list a bunch of topics (the check denotes "Seen")
> ipfs tour list
- ✓ 0.    Hello Mars.
- ✓ 0.1   The tour.
-   1.    What is IPFS?
-   1.1   The IPFS stack.
    ...
- ✓ 5.0   Mounting
-   5.1   Mounting Command
-   5.2   Mounting IPFS
-   5.3   Mounting IPNS
  ...


# show a specific part
> ipfs tour show 7.
# IPFS Tour - 7. IPNS

IPFS provides a public-key cryptography based namespace. Unlike
other namesystems, IPNS is egalitarian, global, secure, and completely 
decentralized.
...

# advance the tour pointer + show
> ipfs tour next
# IPFS Tour - 5.1. Mounting Command

The command to mount IPFS is `ipfs mount`. It can mount both
IPFS and IPNS (you'll learn about IPNS in T 7.1).
...

# resets tour pointer to beginning, wipes Read
> ipfs tour restart
# IPFS Tour - 0. Hello Mars

Welcome to the IPFS Tour! We will walk you through a number of
concepts, features, and tools to make sure you get up to speed
with IPFS very quickly. 

First things first, let's test everything works. Try running

    ipfs cat Qmafmdamfdmafmadfsafdmas

This should connect to mars.i.ipfs.io, and download a file
using ipfs. It should print out: 

    > ipfs cat Qmafmdamfdmafmadfsafdmas
    Hello, from Mars!

There! Your very own greetings from outer (ipfs) space!
When you're done, run:

    ipfs tour next

The help of the command should look like:

  UsageLine: "tour",
  Short:     "Take the IPFS Tour",
  Long: `ipfs tour - Take the IPFS Tour

    ipfs tour              - Start or resume the tour.
    ipfs tour list         - Show a list of topics.
    ipfs tour show <part>  - Show a specific part.
    ipfs tour restart      - Restart the tour. 

This is a tour that takes you through various IPFS concepts, 
features, and tools to make sure you get up to speed with
IPFS very quickly. To start, run:

    ipfs tour

`,
@jbenet jbenet added the help wanted Seeking public contribution on this issue label Oct 14, 2014
@whyrusleeping
Copy link
Member

+:100: :+1:

@jbenet
Copy link
Member Author

jbenet commented Oct 26, 2014

#213 Implements the basic command structure. Still need to write all the content.

@dborzov
Copy link
Contributor

dborzov commented Oct 26, 2014

Whoah, cool! 👍

@jbenet
Copy link
Member Author

jbenet commented Oct 27, 2014

ATTENTION all watchers of this repo

It would be really helpful to us to work closely with 1-5 people new to IPFS tool to define the contents of our ipfs tour. let me know if you'd like to be part of this (post here or let me know on irc)

@btc btc added this to the α milestone Oct 28, 2014
@btc btc added the ready label Oct 28, 2014
@jbenet jbenet added status/in-progress In progress and removed ready labels Oct 28, 2014
@dborzov
Copy link
Contributor

dborzov commented Oct 30, 2014

Hey, hey I want to help you guys out with clearing the contents for ipfs tour. With all these changes, I think I am qualified as being "new" to the current ipfs tool interface.

@jbenet
Copy link
Member Author

jbenet commented Nov 3, 2014

@dborzov great! i'll have a sample for you to try out ~mon or tue

@jbenet jbenet self-assigned this Jan 15, 2015
@jbenet jbenet modified the milestone: α Jan 17, 2015
@caioalonso
Copy link
Contributor

I'm pretty new to IPFS and I'd like to help!

@jbenet jbenet added topic/docs-ipfs Topic docs-ipfs difficulty: easy and removed status/in-progress In progress labels Mar 28, 2015
@giodamelio
Copy link

I am pretty new and would love to help!

@daviddias
Copy link
Member

We can totally make a nodeschool out of this and even help use JS people learn how to use the js-ipfs-api directly :D I'm up to start this, if anyone wants to collab, let me know :)

Skeleton on #225

@mattisstenejohansen
Copy link

Hi all. If it is not too late (I would assume it is not, since it's still open), I'd love to help out/contribute to this in any way I can. I would not consider myself a newbie in the IPFS ecosystem, but I am a rather basic user.

cc @jbenet

@cfdair
Copy link

cfdair commented Jan 2, 2019

Hey, I'd be up to helping out on this one. I've been watching this repo for a bit and looking for an entry point to start contributing.

However doesn't seem to be a branch on this issue yet, so maybe this is on the backburner for now?

@Stebalien Stebalien added the status/deferred Conscious decision to pause or backlog label Jan 3, 2019
@Stebalien
Copy link
Member

I've added it to the backlog but nobody's currently assigned to it.

We now have a website, proto.school, with some tutorials for building with js-{libp2p,ipfs,ipld}. Given that IPFS is almost entirely controlled via the HTTP API, we can probably add lessons here. These lessons would have to tell users how to grant proto.school access to the local IPFS node but that shouldn't be too difficult.

Personally, I'm partial to the command line but a web-based tutorial is going to be more flexible here. We can even provide users with a fake "shell" to make it feal like a normal CLI.

Tutorials are designed here: https://github.com/protoschool/protoschool.github.io/labels/new%20tutorial


cc @mikeal (time permitting)

@mikeal
Copy link

mikeal commented Jan 14, 2019

Looping @terichadbourne in as well.

@aschmahmann aschmahmann mentioned this issue Sep 22, 2020
72 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
exp/novice Someone with a little familiarity can pick up help wanted Seeking public contribution on this issue status/deferred Conscious decision to pause or backlog topic/docs-ipfs Topic docs-ipfs
Projects
None yet
Development

No branches or pull requests