textile-go

command module
v1.0.0-rc5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 5, 2018 License: MIT Imports: 18 Imported by: 0

README

textile-go

banner


MIT License Go Report Card Commitizen friendly CircleCI

Status

Throughput Graph

What is Textile?

Textile provides encrypted, recoverable, schema-based, and cross-application data storage built on IPFS and libp2p. We like to think of it as a decentralized Firebase with built-in protocols for sharing and recovery.

This repository contains the core Textile node and daemon, a CLI client, and a mobile client for building an iOS/Android application.

See textile-mobile for the Textile Photos iOS/Android app.

Install

Download the latest release for your OS.

Usage

NOTE: The command line tool currently has limited access to the internal node APIs. We're quickly mapping everything over to a newly designed REST API and command line tool. Stay tuned for docs.

~ $ textile --help
Usage:
  textile [OPTIONS] <command>

Help Options:
  -h, --help  Show this help message

Available commands:
  add      Add file(s) to a thread
  address  Show wallet address
  cafes    Manage cafes
  daemon   Start the daemon
  get      Get a thread file
  init     Init the node repo and exit
  invite   Manage thread invites
  ls       Paginate thread files
  migrate  Migrate the node repo and exit
  peer     Show peer ID
  ping     Ping another peer
  profile  Manage public profile
  shell    Start a shell session
  threads  Manage threads
  version  Print version and exit
  wallet   Manage or create an account wallet

Textile uses an HD Wallet as an account key manager. You may use the name derived account seed on multiple devices to sync wallet data. To get started, run:

$ textile wallet init

This will generate a recovery phrase for all your accounts. You may specify a word count and password as well (run with --help for usage).

Next, use an account from you wallet to initialize a node. First time users should just use Account 0, which is printed out by the wallet init subcommand. Use the accounts subcommand to access deeper derived wallet accounts.

$ textile init -s <account_seed>

Finally, start the daemon:

$ textile daemon

TODO: Run through creating a thread, adding images, comments, etc.

Contributing

$ go get github.com/textileio/textile-go

You'll need a few different tools here to get setup...

Install dep

Golang package manager:

$ brew install dep
Install gx

IPFS package manager:

$ go get -u github.com/whyrusleeping/gx
$ go get -u github.com/whyrusleeping/gx-go
Install dependencies

Finally, download dependencies managed by gx and dep:

$ make setup
Run tests
$ make test_compile

Building

There are various things to build:

CLI/daemon
$ make build
iOS Framework
$ go get golang.org/x/mobile/cmd/gomobile
$ gomobile init
$ make ios_framework
Android Framework
$ go get golang.org/x/mobile/cmd/gomobile
$ gomobile init
$ make android_framework

Acknowledgments

While almost entirely different now, this project was jumpstarted from OpenBazaar. Thanks to @cpacia, @drwasho and the rest of the contributors for their work on openbazaar-go.

And of course, thank you Protocal Labs for the incredible FOSS effort and constant inspiration.

License

MIT

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
https://github.com/tjgq/broadcast/blob/master/broadcast.go
https://github.com/tjgq/broadcast/blob/master/broadcast.go
Package crc16 is implementation according to CCITT standards.
Package crc16 is implementation according to CCITT standards.
https://gist.github.com/jsmouret/2bc876e8def6c63410556350eca3e43d
https://gist.github.com/jsmouret/2bc876e8def6c63410556350eca3e43d
db

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL