20 lines
686 B
Markdown
20 lines
686 B
Markdown
# BaseApp
|
|
|
|
The BaseApp is an abstraction over the [Tendermint
|
|
ABCI](https://github.com/tendermint/abci) that
|
|
simplifies application development by handling common low-level concerns.
|
|
It serves as the mediator between the two key components of an SDK app: the store
|
|
and the message handlers.
|
|
|
|
The BaseApp implements the
|
|
[`abci.Application`](https://godoc.org/github.com/tendermint/abci/types#Application) interface.
|
|
It uses a `MultiStore` to manage the state, a `Router` for transaction handling, and
|
|
`Set` methods to specify functions to run at the beginning and end of every
|
|
block.
|
|
|
|
Every SDK app begins with a BaseApp:
|
|
|
|
```
|
|
app := baseapp.NewBaseApp(appName, cdc, logger, db),
|
|
```
|