telegraph/README.md

2.9 KiB

GoLang bindings for the Telegraph API discord

This project is just to provide a wrapper around the API without any additional features.

License
Build Status
GoDoc
Go Report
Patreon

All methods and types available! Yaay!

Start using telegraph

Download and install it:
$ go get -u github.com/toby3d/telegraph

Import it in your code:
import "github.com/toby3d/telegraph"

Example

This is an example of "quick start", which shows how to create a new account for future pages, as well as creating a first simple page with text, picture, video and signature:

package main

import (
    "github.com/toby3d/telegraph"
    "log"
)

// Example content. Be sure to wrap every media in a <figure> tag, okay? Be easy, bro.
const data = `<figure><img src="/file/6a5b15e7eb4d7329ca7af.jpg"/></figure><p><i>Hello</i>, my name is
<b>Page</b>, <u>look at me</u>!</p><figure><iframe src="https://youtu.be/fzQ6gRAEoy0"></iframe>
<figcaption>Yes, you can embed youtube, vimeo and twitter widgets too!</figcaption></figure>`

func main() {
    // Create new Telegraph account. Author name/link can be epmty.
    // So secure. Much anonymously. Wow.
    acc, err := telegraph.CreateAccount(
        "toby3d", // required for assign all new pages (invisible for others)
        "Maxim Lebedev",
        "https://telegram.me/toby3d",
    )
    if err != nil {
        log.Fatal(err.Error())
    }

    // Boom!.. And your text will be understandable for Telegraph. MAGIC.
    content, _ := telegraph.ContentFormat(data)
    
    newPage := &telegraph.Page{
        Title:   "My super-awesome page",
        Content: content,

        // Not necessarily, but, hey, it's just an example.
        AuthorName: acc.AuthorName,
        AuthorURL:  acc.AuthorURL,
    }

    if page, err := acc.CreatePage(newPage, false); err != nil {
        log.Print(err.Error())
    } else {
        log.Println("Kaboom! Page created, look what happened:", page.URL)
    }
}

Requirements

Documentation