Skip to content

preá.goA modular web framework for Go

Split your app into small preás. Declare what each one needs, and Preá wires it, checks it and serves it.

A preá between curly bracesA preá between curly braces

From zero to a running API ​

bash
curl -fsSL https://raw.githubusercontent.com/prea-framework/prea/main/install.sh | sh

prea new todo --with-db
cd todo
prea dev

A preá is a few plain Go files. You declare its components, and every component asks for what it needs:

go
var Module = &core.Module{
	Name:      "task",
	Providers: []any{Repository{}, Service{}, Handler{}},
}

type Service struct {
	Repo *Repository `inject:""` // Preá fills this when the app starts
}

Read the quick start →

Released under the MIT License.