Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dougblack/sleepy
rest for go
https://github.com/dougblack/sleepy
Last synced: 3 months ago
JSON representation
rest for go
- Host: GitHub
- URL: https://github.com/dougblack/sleepy
- Owner: dougblack
- Created: 2014-01-24T06:20:44.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2017-11-26T18:15:34.000Z (almost 7 years ago)
- Last Synced: 2024-06-30T04:13:07.160Z (4 months ago)
- Language: Go
- Size: 1.39 MB
- Stars: 673
- Watchers: 32
- Forks: 56
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-rest - sleepy - RESTful micro-framework written in Go. (Servers / Go)
README
## Sleepy
I wrote about the creation of sleepy
[here](https://dougblack.io/words/a-restful-micro-framework-in-go.html).#### A RESTful framework for Go
Sleepy is a micro-framework for building RESTful APIs.
```go
package mainimport (
"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:
```bash
$ 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](http://godoc.org/github.com/dougblack/sleepy).
## License
`sleepy` is released under the [MIT License](http://opensource.org/licenses/MIT).