add readme documentation

This commit is contained in:
decauwsemaecker.glen@gmail.com 2017-04-06 19:54:38 -05:00
parent f028e6bbc8
commit ad747ab82f
2 changed files with 78 additions and 4 deletions

11
.github/ISSUE_TEMPLATE.md vendored Normal file
View File

@ -0,0 +1,11 @@
## Problem statement
Please remove the sections that don't apply
## Steps to reproduce
## Environment
go-external-ip commit:
go version:
OS:

View File

@ -1,6 +1,69 @@
# Go External IP # Go External IP [![license](https://img.shields.io/github/license/glendc/go-external-ip.svg)](https://github.com/GlenDC/go-external-ip/blob/master/LICENSE.txt)
TODO: A Golang library to get your external ip from multiple services.
+ README Documentation; ## TODO
+ Unit-Tests;
+ Unit-Tests + CI (Travis);
+ Investigate support for (a) STUN protocol(s);
## Docs
https://godoc.org/github.com/GlenDC/go-external-ip
## Usage
Using the library can as simple as the following (runnable) example:
```go
package main
import (
"fmt"
"github.com/glendc/go-external-ip"
)
func main() {
// Create the default consensus,
// using the default configuration and no logger.
consensus := externalip.DefaultConsensus(nil, nil)
// Get your IP,
// which is never <nil> when err is <nil>.
ip, err := consensus.ExternalIP()
if err == nil {
fmt.Println(ip.String()) // print IPv4/IPv6 in string format
}
}
```
Please read [the documentation][docs] for more information.
## exip
This library also comes with a standalone command line application,
which can be used to get your external IP, directly from your terminal.
### install
```
$ go install github.com/glendc/go-external-ip/cmd/exip
```
### usage
```
$ exip -h
Retrieve your external IP.
Usage:
exip [flags]
Flags:
-h help
show this usage message
-t duration
consensus's voting timeout (default 5s)
-v log errors to STDERR, when defined
```
[docs]: https://godoc.org/github.com/GlenDC/go-external-ip