indigo-web / indigo

Indigo is a blazingly fast web-framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This is just a logo

Indigo is a web-framework, designed to be readable, handy, yet performant (blazingly fast I would even say)

Documentation

Documentation is available here. It may be incomplete or not represent the actual state, so make sure the version in documentation corresponds to the latest release.

Hello, world!

package main

import (
	"log"

	"github.com/indigo-web/indigo"
	"github.com/indigo-web/indigo/http"
	"github.com/indigo-web/indigo/router/inbuilt"
)

func HelloWorld(request *http.Request) *http.Response {
	return http.String(request, "Hello, world!")
}

func Log(request *http.Request) *http.Response {
	text, err := request.Body.String()
	if err != nil {
		return http.Error(request, err)
	}

	log.Printf("%s says: %s", request.Remote, text)
	return http.String(request, text)
}

func main() {
	r := inbuilt.New()
	r.Resource("/").
		Get(HelloWorld).
		Post(Log)

	err := indigo.New(":8080").Serve(r)
	if err != nil {
		log.Fatal(err)
	}
}

You can find more examples in examples/.

About

Indigo is a blazingly fast web-framework

License:MIT License


Languages

Language:Go 99.9%Language:HTML 0.1%