rest for go
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
.travis.yml
AUTHORS.md update AUTHORS.md Mar 30, 2014
Makefile
README.md Update README with blog link Sep 15, 2017
core.go Merge pull request #21 from strukturag/wrapper_support Apr 25, 2014
core_test.go Always create readable JSON strings. http://www.vinaysahni.com/best-p… Apr 7, 2014

README.md

Sleepy

I wrote about the creation of sleepy here.

A RESTful framework for Go

Sleepy is a micro-framework for building RESTful APIs.

package main

import (
    "net/url"
    "net/http"
    "github.com/dougblack/sleepy"
)

type Item struct { }

func (item Item) Get(values url.Values, headers http.Header) (int, interface{}, http.Header) {
    items := []string{"item1", "item2"}
    data := map[string][]string{"items": items}
    return 200, data, http.Header{"Content-type": {"application/json"}}
}

func main() {
    item := new(Item)

    api := sleepy.NewAPI()
    api.AddResource(item, "/items")
    api.Start(3000)
}

Now if we curl that endpoint:

$ curl localhost:3000/items
{"items": ["item1", "item2"]}

sleepy has not been officially released yet, as it is still in active development.

Docs

Documentation lives here.

License

sleepy is released under the MIT License.