Development

Requirements

Checkout the source code

Create a fork of the project and clone the repository:

cd $GOPATH/src
mkdir -p github.com/miniflux
cd github.com/miniflux
git clone https://github.com/<your_username>/miniflux.git

Build a binary of the application

# All binaries
make build

# Only Linux
make linux

# Build for ARM architectures (32 and 64 bits)
make linux-arm

# Only Mac OS
make darwin

Run the software locally

make run

This command execute go generate and go run main.go.

Regenerate embedded files

To avoid any dependencies, all assets (Javascript, CSS, images, translations) are automatically included in the source code.

go generate

Linter

make lint

Unit tests

make test

Integration tests

Integration tests are testing API endpoints with a real database.

You need to have Postgresql installed locally preconfigured with the user “postgres” and the password “postgres”.

To run integration tests, execute the following command:

make integration-test ; make clean-integration-test

If the test suite fail, you will see the logs of Miniflux.