From dbcc5d8a972f4f169e9e2c0636450555a06152b9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Guillot?= <fred@miniflux.net>
Date: Fri, 24 Aug 2018 21:51:50 -0700
Subject: [PATCH] Use canonical imports

---
 .travis.yml                            |  1 +
 Makefile                               | 14 ++++++-------
 README.md                              |  2 +-
 api/category.go                        |  8 +++----
 api/controller.go                      |  6 +++---
 api/doc.go                             |  2 +-
 api/entry.go                           | 12 +++++------
 api/feed.go                            |  8 +++----
 api/icon.go                            |  8 +++----
 api/opml.go                            | 10 ++++-----
 api/payload.go                         |  4 ++--
 api/payload_test.go                    |  4 ++--
 api/subscription.go                    |  6 +++---
 api/user.go                            |  8 +++----
 cli/ask_credentials.go                 |  2 +-
 cli/cli.go                             | 14 ++++++-------
 cli/create_admin.go                    |  6 +++---
 cli/doc.go                             |  2 +-
 cli/flush_sessions.go                  |  4 ++--
 cli/info.go                            |  4 ++--
 cli/reset_password.go                  |  4 ++--
 config/config.go                       |  4 ++--
 config/config_test.go                  |  2 +-
 config/doc.go                          |  2 +-
 crypto/crypto.go                       |  2 +-
 crypto/doc.go                          |  2 +-
 daemon/daemon.go                       | 14 ++++++-------
 daemon/doc.go                          |  2 +-
 daemon/routes.go                       | 22 +++++++++----------
 daemon/server.go                       | 14 ++++++-------
 database/database.go                   |  2 +-
 database/migration.go                  |  4 ++--
 database/sql.go                        |  2 +-
 doc.go                                 |  4 ++--
 errors/doc.go                          |  2 +-
 errors/errors.go                       |  4 ++--
 fever/doc.go                           |  2 +-
 fever/fever.go                         | 18 ++++++++--------
 filter/doc.go                          |  2 +-
 filter/image_proxy_filter.go           |  8 +++----
 filter/image_proxy_filter_test.go      |  4 ++--
 generate.go                            | 29 ++++++++++++++------------
 http/client/client.go                  | 10 ++++-----
 http/client/response.go                |  4 ++--
 http/client/response_test.go           |  2 +-
 http/context/context.go                |  4 ++--
 http/cookie/cookie.go                  |  2 +-
 http/request/request.go                |  2 +-
 http/request/request_test.go           |  2 +-
 http/response/html/html.go             |  6 +++---
 http/response/json/json.go             |  6 +++---
 http/response/response.go              |  2 +-
 http/response/xml/xml.go               |  2 +-
 http/route/route.go                    |  4 ++--
 integration/doc.go                     |  2 +-
 integration/instapaper/instapaper.go   |  4 ++--
 integration/integration.go             | 18 ++++++++--------
 integration/nunuxkeeper/nunuxkeeper.go |  4 ++--
 integration/pinboard/pinboard.go       |  4 ++--
 integration/pocket/connector.go        |  4 ++--
 integration/pocket/pocket.go           |  4 ++--
 integration/wallabag/wallabag.go       |  4 ++--
 locale/doc.go                          |  2 +-
 locale/language.go                     |  2 +-
 locale/locale.go                       |  4 ++--
 locale/locale_test.go                  |  2 +-
 locale/plurals.go                      |  2 +-
 locale/translations.go                 |  2 +-
 locale/translator.go                   |  2 +-
 logger/doc.go                          |  2 +-
 logger/logger.go                       |  2 +-
 main.go                                |  4 ++--
 middleware/app_session.go              | 12 +++++------
 middleware/basic_auth.go               |  6 +++---
 middleware/common_headers.go           |  2 +-
 middleware/context_keys.go             |  2 +-
 middleware/fever.go                    |  6 +++---
 middleware/header_config.go            |  2 +-
 middleware/logging.go                  |  6 +++---
 middleware/middleware.go               |  6 +++---
 middleware/user_session.go             | 14 ++++++-------
 model/app_session.go                   |  2 +-
 model/category.go                      |  2 +-
 model/category_test.go                 |  2 +-
 model/doc.go                           |  2 +-
 model/enclosure.go                     |  2 +-
 model/entry.go                         |  2 +-
 model/entry_test.go                    |  2 +-
 model/feed.go                          |  2 +-
 model/icon.go                          |  2 +-
 model/integration.go                   |  2 +-
 model/job.go                           |  2 +-
 model/theme.go                         |  4 ++--
 model/theme_test.go                    |  2 +-
 model/user.go                          |  4 ++--
 model/user_session.go                  |  4 ++--
 model/user_test.go                     |  2 +-
 oauth2/doc.go                          |  2 +-
 oauth2/google.go                       |  2 +-
 oauth2/manager.go                      |  2 +-
 oauth2/profile.go                      |  2 +-
 oauth2/provider.go                     |  2 +-
 reader/atom/atom.go                    | 14 ++++++-------
 reader/atom/parser.go                  |  8 +++----
 reader/atom/parser_test.go             |  2 +-
 reader/date/parser.go                  |  2 +-
 reader/date/parser_test.go             |  2 +-
 reader/doc.go                          |  2 +-
 reader/encoding/doc.go                 |  2 +-
 reader/encoding/encoding.go            |  2 +-
 reader/feed/handler.go                 | 20 +++++++++---------
 reader/feed/parser.go                  | 20 +++++++++---------
 reader/feed/parser_test.go             |  2 +-
 reader/icon/finder.go                  | 12 +++++------
 reader/icon/finder_test.go             |  2 +-
 reader/json/json.go                    | 14 ++++++-------
 reader/json/parser.go                  |  6 +++---
 reader/json/parser_test.go             |  2 +-
 reader/opml/handler.go                 |  8 +++----
 reader/opml/opml.go                    |  2 +-
 reader/opml/parser.go                  |  6 +++---
 reader/opml/parser_test.go             |  2 +-
 reader/opml/serializer.go              |  4 ++--
 reader/opml/serializer_test.go         |  2 +-
 reader/opml/subscription.go            |  2 +-
 reader/processor/processor.go          | 14 ++++++-------
 reader/rdf/parser.go                   |  8 +++----
 reader/rdf/parser_test.go              |  2 +-
 reader/rdf/rdf.go                      | 14 ++++++-------
 reader/readability/readability.go      |  5 +++--
 reader/rewrite/rewrite_functions.go    |  8 +++----
 reader/rewrite/rewriter.go             |  4 ++--
 reader/rewrite/rewriter_test.go        |  2 +-
 reader/rewrite/rules.go                |  2 +-
 reader/rss/parser.go                   |  8 +++----
 reader/rss/parser_test.go              |  2 +-
 reader/rss/rss.go                      | 14 ++++++-------
 reader/sanitizer/sanitizer.go          |  4 ++--
 reader/sanitizer/sanitizer_test.go     |  2 +-
 reader/sanitizer/strip_tags.go         |  2 +-
 reader/sanitizer/strip_tags_test.go    |  2 +-
 reader/scraper/rules.go                |  2 +-
 reader/scraper/scraper.go              | 11 +++++-----
 reader/scraper/scraper_test.go         |  2 +-
 reader/subscription/finder.go          | 14 ++++++-------
 reader/subscription/subscription.go    |  2 +-
 scheduler/doc.go                       |  2 +-
 scheduler/scheduler.go                 |  6 +++---
 scheduler/worker.go                    |  8 +++----
 scheduler/worker_pool.go               |  6 +++---
 storage/category.go                    |  6 +++---
 storage/doc.go                         |  2 +-
 storage/enclosure.go                   |  4 ++--
 storage/entry.go                       |  8 +++----
 storage/entry_pagination_builder.go    |  6 +++---
 storage/entry_query_builder.go         |  8 +++----
 storage/feed.go                        |  8 +++----
 storage/icon.go                        |  6 +++---
 storage/integration.go                 |  4 ++--
 storage/job.go                         |  6 +++---
 storage/session.go                     |  6 +++---
 storage/storage.go                     |  2 +-
 storage/timezone.go                    |  4 ++--
 storage/user.go                        |  6 +++---
 storage/user_session.go                |  6 +++---
 template/common.go                     |  2 +-
 template/dict.go                       |  2 +-
 template/dict_test.go                  |  2 +-
 template/doc.go                        |  2 +-
 template/elapsed.go                    |  6 +++---
 template/elapsed_test.go               |  4 ++--
 template/engine.go                     | 10 ++++-----
 template/functions.go                  | 12 +++++------
 template/views.go                      |  2 +-
 timer/doc.go                           |  2 +-
 timer/timer.go                         |  4 ++--
 timezone/timezone.go                   |  2 +-
 timezone/timezone_test.go              |  2 +-
 ui/about.go                            | 12 +++++------
 ui/bookmark_entries.go                 | 16 +++++++-------
 ui/category_create.go                  | 10 ++++-----
 ui/category_edit.go                    | 14 ++++++-------
 ui/category_entries.go                 | 16 +++++++-------
 ui/category_list.go                    | 10 ++++-----
 ui/category_remove.go                  | 12 +++++------
 ui/category_save.go                    | 20 +++++++++---------
 ui/category_update.go                  | 20 +++++++++---------
 ui/controller.go                       | 14 ++++++-------
 ui/doc.go                              |  2 +-
 ui/entry_bookmark.go                   | 20 +++++++++---------
 ui/entry_category.go                   | 20 +++++++++---------
 ui/entry_feed.go                       | 20 +++++++++---------
 ui/entry_read.go                       | 18 ++++++++--------
 ui/entry_save.go                       | 12 +++++------
 ui/entry_scraper.go                    | 14 ++++++-------
 ui/entry_search.go                     | 20 +++++++++---------
 ui/entry_toggle_bookmark.go            | 10 ++++-----
 ui/entry_unread.go                     | 20 +++++++++---------
 ui/entry_update_status.go              |  8 +++----
 ui/feed_edit.go                        | 14 ++++++-------
 ui/feed_entries.go                     | 16 +++++++-------
 ui/feed_icon.go                        |  8 +++----
 ui/feed_list.go                        | 10 ++++-----
 ui/feed_refresh.go                     | 14 ++++++-------
 ui/feed_remove.go                      | 12 +++++------
 ui/feed_update.go                      | 20 +++++++++---------
 ui/form/auth.go                        |  4 ++--
 ui/form/category.go                    |  6 +++---
 ui/form/feed.go                        |  6 +++---
 ui/form/integration.go                 |  4 ++--
 ui/form/settings.go                    |  6 +++---
 ui/form/subscription.go                |  4 ++--
 ui/form/user.go                        |  6 +++---
 ui/history_entries.go                  | 16 +++++++-------
 ui/history_flush.go                    | 10 ++++-----
 ui/integration_pocket.go               | 16 +++++++-------
 ui/integration_show.go                 | 12 +++++------
 ui/integration_update.go               | 14 ++++++-------
 ui/login_check.go                      | 22 +++++++++----------
 ui/login_show.go                       | 14 ++++++-------
 ui/logout.go                           | 16 +++++++-------
 ui/oauth2.go                           |  6 +++---
 ui/oauth2_callback.go                  | 20 +++++++++---------
 ui/oauth2_redirect.go                  | 14 ++++++-------
 ui/oauth2_unlink.go                    | 16 +++++++-------
 ui/opml_export.go                      | 10 ++++-----
 ui/opml_import.go                      | 10 ++++-----
 ui/opml_upload.go                      | 18 ++++++++--------
 ui/pagination.go                       |  2 +-
 ui/payload.go                          |  4 ++--
 ui/proxy.go                            | 14 ++++++-------
 ui/search_entries.go                   | 16 +++++++-------
 ui/session/session.go                  |  8 +++----
 ui/session_list.go                     | 10 ++++-----
 ui/session_remove.go                   | 14 ++++++-------
 ui/settings_show.go                    | 16 +++++++-------
 ui/settings_update.go                  | 22 +++++++++----------
 ui/static/bin.go                       |  2 +-
 ui/static/css.go                       |  2 +-
 ui/static/js.go                        |  2 +-
 ui/static_app_icon.go                  | 12 +++++------
 ui/static_favicon.go                   | 10 ++++-----
 ui/static_javascript.go                | 10 ++++-----
 ui/static_manifest.go                  | 10 ++++-----
 ui/static_stylesheet.go                | 10 ++++-----
 ui/subscription_add.go                 | 10 ++++-----
 ui/subscription_bookmarklet.go         | 14 ++++++-------
 ui/subscription_choose.go              | 16 +++++++-------
 ui/subscription_submit.go              | 20 +++++++++---------
 ui/unread_entries.go                   | 16 +++++++-------
 ui/unread_mark_all_read.go             | 10 ++++-----
 ui/user_create.go                      | 12 +++++------
 ui/user_edit.go                        | 14 ++++++-------
 ui/user_list.go                        | 10 ++++-----
 ui/user_remove.go                      | 12 +++++------
 ui/user_save.go                        | 18 ++++++++--------
 ui/user_update.go                      | 20 +++++++++---------
 ui/view/view.go                        | 10 ++++-----
 url/doc.go                             |  2 +-
 url/url.go                             |  2 +-
 url/url_test.go                        |  2 +-
 version/doc.go                         |  2 +-
 version/version.go                     |  2 +-
 263 files changed, 962 insertions(+), 956 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index c29034d2..6d8bb05a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,6 +5,7 @@ services:
 addons:
   postgresql: "9.4"
 language: go
+go_import_path: "miniflux.app"
 go:
   - "1.10"
 before_install:
diff --git a/Makefile b/Makefile
index ea60bd3f..1063ed3a 100644
--- a/Makefile
+++ b/Makefile
@@ -8,22 +8,22 @@ DB_URL := postgres://postgres:postgres@localhost/miniflux_test?sslmode=disable
 
 linux:
 	@ go generate
-	@ GOOS=linux GOARCH=amd64 go build -ldflags="-s -w -X 'github.com/miniflux/miniflux/version.Version=$(VERSION)' -X 'github.com/miniflux/miniflux/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-linux-amd64 main.go
+	@ GOOS=linux GOARCH=amd64 go build -ldflags="-s -w -X 'miniflux.app/version.Version=$(VERSION)' -X 'miniflux.app/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-linux-amd64 main.go
 
 linux-arm:
 	@ go generate
-	@ GOOS=linux GOARCH=arm64 go build -ldflags="-s -w -X 'github.com/miniflux/miniflux/version.Version=$(VERSION)' -X 'github.com/miniflux/miniflux/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-linux-armv8 main.go
-	@ GOOS=linux GOARCH=arm GOARM=7 go build -ldflags="-s -w -X 'github.com/miniflux/miniflux/version.Version=$(VERSION)' -X 'github.com/miniflux/miniflux/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-linux-armv7 main.go
-	@ GOOS=linux GOARCH=arm GOARM=6 go build -ldflags="-s -w -X 'github.com/miniflux/miniflux/version.Version=$(VERSION)' -X 'github.com/miniflux/miniflux/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-linux-armv6 main.go
-	@ GOOS=linux GOARCH=arm GOARM=5 go build -ldflags="-s -w -X 'github.com/miniflux/miniflux/version.Version=$(VERSION)' -X 'github.com/miniflux/miniflux/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-linux-armv5 main.go
+	@ GOOS=linux GOARCH=arm64 go build -ldflags="-s -w -X 'miniflux.app/version.Version=$(VERSION)' -X 'miniflux.app/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-linux-armv8 main.go
+	@ GOOS=linux GOARCH=arm GOARM=7 go build -ldflags="-s -w -X 'miniflux.app/version.Version=$(VERSION)' -X 'miniflux.app/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-linux-armv7 main.go
+	@ GOOS=linux GOARCH=arm GOARM=6 go build -ldflags="-s -w -X 'miniflux.app/version.Version=$(VERSION)' -X 'miniflux.app/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-linux-armv6 main.go
+	@ GOOS=linux GOARCH=arm GOARM=5 go build -ldflags="-s -w -X 'miniflux.app/version.Version=$(VERSION)' -X 'miniflux.app/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-linux-armv5 main.go
 
 darwin:
 	@ go generate
-	@ GOOS=darwin GOARCH=amd64 go build -ldflags="-s -w -X 'github.com/miniflux/miniflux/version.Version=$(VERSION)' -X 'github.com/miniflux/miniflux/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-darwin-amd64 main.go
+	@ GOOS=darwin GOARCH=amd64 go build -ldflags="-s -w -X 'miniflux.app/version.Version=$(VERSION)' -X 'miniflux.app/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-darwin-amd64 main.go
 
 freebsd:
 	@ go generate
-	@ GOOS=freebsd GOARCH=amd64 go build -ldflags="-s -w -X 'githug.com/miniflux/miniflux/version.Version=$(VERSION)' -X 'github.com/miniflux/miniflux/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-freebsd-amd64 main.go
+	@ GOOS=freebsd GOARCH=amd64 go build -ldflags="-s -w -X 'miniflux.app/version.Version=$(VERSION)' -X 'miniflux.app/version.BuildDate=$(BUILD_DATE)'" -o $(APP)-freebsd-amd64 main.go
 
 build: linux linux-arm darwin freebsd
 
diff --git a/README.md b/README.md
index 4289b795..02eceb13 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
 Miniflux 2
 ==========
 [![Build Status](https://travis-ci.org/miniflux/miniflux.svg?branch=master)](https://travis-ci.org/miniflux/miniflux)
-[![GoDoc](https://godoc.org/github.com/miniflux/miniflux?status.svg)](https://godoc.org/github.com/miniflux/miniflux)
+[![GoDoc](https://godoc.org/miniflux.app?status.svg)](https://godoc.org/miniflux.app)
 [![Documentation Status](https://readthedocs.org/projects/miniflux/badge/?version=latest)](https://docs.miniflux.app/)
 
 Miniflux is a minimalist and opinionated feed reader:
diff --git a/api/category.go b/api/category.go
index b7b5c028..86766c91 100644
--- a/api/category.go
+++ b/api/category.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package api
+package api // import "miniflux.app/api"
 
 import (
 	"errors"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/json"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/json"
 )
 
 // CreateCategory is the API handler to create a new category.
diff --git a/api/controller.go b/api/controller.go
index c9798e3c..5cdc056b 100644
--- a/api/controller.go
+++ b/api/controller.go
@@ -2,11 +2,11 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package api
+package api // import "miniflux.app/api"
 
 import (
-	"github.com/miniflux/miniflux/reader/feed"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/reader/feed"
+	"miniflux.app/storage"
 )
 
 // Controller holds all handlers for the API.
diff --git a/api/doc.go b/api/doc.go
index a43e4630..68ddc324 100644
--- a/api/doc.go
+++ b/api/doc.go
@@ -7,4 +7,4 @@
 Package api implements API endpoints for Miniflux application.
 
 */
-package api
+package api // import "miniflux.app/api"
diff --git a/api/entry.go b/api/entry.go
index b2a4d9dc..cb9c0435 100644
--- a/api/entry.go
+++ b/api/entry.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package api
+package api // import "miniflux.app/api"
 
 import (
 	"errors"
 	"net/http"
 	"time"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/json"
+	"miniflux.app/model"
+	"miniflux.app/storage"
 )
 
 // GetFeedEntry is the API handler to get a single feed entry.
diff --git a/api/feed.go b/api/feed.go
index b6b63578..04740052 100644
--- a/api/feed.go
+++ b/api/feed.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package api
+package api // import "miniflux.app/api"
 
 import (
 	"errors"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/json"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/json"
 )
 
 // CreateFeed is the API handler to create a new feed.
diff --git a/api/icon.go b/api/icon.go
index 052cdbc3..2d2171a8 100644
--- a/api/icon.go
+++ b/api/icon.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package api
+package api // import "miniflux.app/api"
 
 import (
 	"errors"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/json"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/json"
 )
 
 // FeedIcon returns a feed icon.
diff --git a/api/opml.go b/api/opml.go
index 8613ded7..8554dc1d 100644
--- a/api/opml.go
+++ b/api/opml.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package api
+package api // import "miniflux.app/api"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/http/response/xml"
-	"github.com/miniflux/miniflux/reader/opml"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/json"
+	"miniflux.app/http/response/xml"
+	"miniflux.app/reader/opml"
 )
 
 // Export is the API handler that export feeds to OPML.
diff --git a/api/payload.go b/api/payload.go
index ed5255a0..ee1e41b0 100644
--- a/api/payload.go
+++ b/api/payload.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package api
+package api // import "miniflux.app/api"
 
 import (
 	"encoding/json"
 	"fmt"
 	"io"
 
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/model"
 )
 
 type feedIcon struct {
diff --git a/api/payload_test.go b/api/payload_test.go
index debf897e..f890fe6f 100644
--- a/api/payload_test.go
+++ b/api/payload_test.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package api
+package api // import "miniflux.app/api"
 
 import (
 	"testing"
 
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/model"
 )
 
 func TestUpdateFeedURL(t *testing.T) {
diff --git a/api/subscription.go b/api/subscription.go
index a28c3b25..ee471c6b 100644
--- a/api/subscription.go
+++ b/api/subscription.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package api
+package api // import "miniflux.app/api"
 
 import (
 	"errors"
 	"fmt"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/reader/subscription"
+	"miniflux.app/http/response/json"
+	"miniflux.app/reader/subscription"
 )
 
 // GetSubscriptions is the API handler to find subscriptions.
diff --git a/api/user.go b/api/user.go
index b880ba30..1222ccdf 100644
--- a/api/user.go
+++ b/api/user.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package api
+package api // import "miniflux.app/api"
 
 import (
 	"errors"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/json"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/json"
 )
 
 // CurrentUser is the API handler to retrieve the authenticated user.
diff --git a/cli/ask_credentials.go b/cli/ask_credentials.go
index 3755f436..bd4bf5f9 100644
--- a/cli/ask_credentials.go
+++ b/cli/ask_credentials.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package cli
+package cli // import "miniflux.app/cli"
 
 import (
 	"bufio"
diff --git a/cli/cli.go b/cli/cli.go
index f4014db3..aae54759 100644
--- a/cli/cli.go
+++ b/cli/cli.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package cli
+package cli // import "miniflux.app/cli"
 
 import (
 	"flag"
 	"fmt"
 
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/daemon"
-	"github.com/miniflux/miniflux/database"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/storage"
-	"github.com/miniflux/miniflux/version"
+	"miniflux.app/config"
+	"miniflux.app/daemon"
+	"miniflux.app/database"
+	"miniflux.app/logger"
+	"miniflux.app/storage"
+	"miniflux.app/version"
 )
 
 // Parse parses command line arguments.
diff --git a/cli/create_admin.go b/cli/create_admin.go
index fc6eb6eb..372b712f 100644
--- a/cli/create_admin.go
+++ b/cli/create_admin.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package cli
+package cli // import "miniflux.app/cli"
 
 import (
 	"fmt"
 	"os"
 
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/model"
+	"miniflux.app/storage"
 )
 
 func createAdmin(store *storage.Storage) {
diff --git a/cli/doc.go b/cli/doc.go
index 9d4954f1..d4607263 100644
--- a/cli/doc.go
+++ b/cli/doc.go
@@ -7,4 +7,4 @@
 Package cli implements command line arguments for Miniflux application.
 
 */
-package cli
+package cli // import "miniflux.app/cli"
diff --git a/cli/flush_sessions.go b/cli/flush_sessions.go
index 06a56d0b..5e16d3ca 100644
--- a/cli/flush_sessions.go
+++ b/cli/flush_sessions.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package cli
+package cli // import "miniflux.app/cli"
 
 import (
 	"fmt"
 	"os"
 
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/storage"
 )
 
 func flushSessions(store *storage.Storage) {
diff --git a/cli/info.go b/cli/info.go
index 2ae1cefe..40db0d94 100644
--- a/cli/info.go
+++ b/cli/info.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package cli
+package cli // import "miniflux.app/cli"
 
 import (
 	"fmt"
 	"runtime"
 
-	"github.com/miniflux/miniflux/version"
+	"miniflux.app/version"
 )
 
 func info() {
diff --git a/cli/reset_password.go b/cli/reset_password.go
index 05a9b51f..b9e5150d 100644
--- a/cli/reset_password.go
+++ b/cli/reset_password.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package cli
+package cli // import "miniflux.app/cli"
 
 import (
 	"fmt"
 	"os"
 
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/storage"
 )
 
 func resetPassword(store *storage.Storage) {
diff --git a/config/config.go b/config/config.go
index 580f01d6..c13a7f9b 100644
--- a/config/config.go
+++ b/config/config.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package config
+package config // import "miniflux.app/config"
 
 import (
 	"net/url"
@@ -10,7 +10,7 @@ import (
 	"strconv"
 	"strings"
 
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/logger"
 )
 
 const (
diff --git a/config/config_test.go b/config/config_test.go
index 1f91add5..a32edfcd 100644
--- a/config/config_test.go
+++ b/config/config_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package config
+package config // import "miniflux.app/config"
 
 import (
 	"os"
diff --git a/config/doc.go b/config/doc.go
index f2e9211e..a5c6547b 100644
--- a/config/doc.go
+++ b/config/doc.go
@@ -7,4 +7,4 @@
 Package config handles configuration values for Miniflux application.
 
 */
-package config
+package config // import "miniflux.app/config"
diff --git a/crypto/crypto.go b/crypto/crypto.go
index ea8ea2b7..fa236ab4 100644
--- a/crypto/crypto.go
+++ b/crypto/crypto.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package crypto
+package crypto // import "miniflux.app/crypto"
 
 import (
 	"crypto/rand"
diff --git a/crypto/doc.go b/crypto/doc.go
index 2bca85af..4213e3ff 100644
--- a/crypto/doc.go
+++ b/crypto/doc.go
@@ -7,4 +7,4 @@
 Package crypto implements helpers related to cryptography.
 
 */
-package crypto
+package crypto // import "miniflux.app/crypto"
diff --git a/daemon/daemon.go b/daemon/daemon.go
index de91d71a..b33d8827 100644
--- a/daemon/daemon.go
+++ b/daemon/daemon.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package daemon
+package daemon // import "miniflux.app/daemon"
 
 import (
 	"context"
@@ -12,12 +12,12 @@ import (
 	"syscall"
 	"time"
 
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/locale"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/reader/feed"
-	"github.com/miniflux/miniflux/scheduler"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/config"
+	"miniflux.app/locale"
+	"miniflux.app/logger"
+	"miniflux.app/reader/feed"
+	"miniflux.app/scheduler"
+	"miniflux.app/storage"
 )
 
 // Run starts the daemon.
diff --git a/daemon/doc.go b/daemon/doc.go
index e2469496..448c6c73 100644
--- a/daemon/doc.go
+++ b/daemon/doc.go
@@ -7,4 +7,4 @@
 Package daemon handles the main application process.
 
 */
-package daemon
+package daemon // import "miniflux.app/daemon"
diff --git a/daemon/routes.go b/daemon/routes.go
index d720b5bb..b0a6464d 100644
--- a/daemon/routes.go
+++ b/daemon/routes.go
@@ -2,21 +2,21 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package daemon
+package daemon // import "miniflux.app/daemon"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/api"
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/fever"
-	"github.com/miniflux/miniflux/locale"
-	"github.com/miniflux/miniflux/middleware"
-	"github.com/miniflux/miniflux/reader/feed"
-	"github.com/miniflux/miniflux/scheduler"
-	"github.com/miniflux/miniflux/storage"
-	"github.com/miniflux/miniflux/template"
-	"github.com/miniflux/miniflux/ui"
+	"miniflux.app/api"
+	"miniflux.app/config"
+	"miniflux.app/fever"
+	"miniflux.app/locale"
+	"miniflux.app/middleware"
+	"miniflux.app/reader/feed"
+	"miniflux.app/scheduler"
+	"miniflux.app/storage"
+	"miniflux.app/template"
+	"miniflux.app/ui"
 
 	"github.com/gorilla/mux"
 )
diff --git a/daemon/server.go b/daemon/server.go
index d32cd687..c00027fa 100644
--- a/daemon/server.go
+++ b/daemon/server.go
@@ -2,19 +2,19 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package daemon
+package daemon // import "miniflux.app/daemon"
 
 import (
 	"crypto/tls"
 	"net/http"
 	"time"
 
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/locale"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/reader/feed"
-	"github.com/miniflux/miniflux/scheduler"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/config"
+	"miniflux.app/locale"
+	"miniflux.app/logger"
+	"miniflux.app/reader/feed"
+	"miniflux.app/scheduler"
+	"miniflux.app/storage"
 
 	"golang.org/x/crypto/acme/autocert"
 )
diff --git a/database/database.go b/database/database.go
index 42f22925..f5d8a3cd 100644
--- a/database/database.go
+++ b/database/database.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package database
+package database // import "miniflux.app/database"
 
 import (
 	"database/sql"
diff --git a/database/migration.go b/database/migration.go
index e348e40c..31797059 100644
--- a/database/migration.go
+++ b/database/migration.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package database
+package database // import "miniflux.app/database"
 
 import (
 	"database/sql"
 	"fmt"
 	"strconv"
 
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/logger"
 )
 
 const schemaVersion = 20
diff --git a/database/sql.go b/database/sql.go
index a9468ecb..34fecd87 100644
--- a/database/sql.go
+++ b/database/sql.go
@@ -1,6 +1,6 @@
 // Code generated by go generate; DO NOT EDIT.
 
-package database
+package database // import "miniflux.app/database"
 
 var SqlMap = map[string]string{
 	"schema_version_1": `create table schema_version (
diff --git a/doc.go b/doc.go
index 0d021914..3f8e1e59 100644
--- a/doc.go
+++ b/doc.go
@@ -4,7 +4,7 @@
 
 /*
 
-Package main implements a feed reader application.
+Miniflux is a feed reader application.
 
 */
-package main
+package main // import "miniflux.app"
diff --git a/errors/doc.go b/errors/doc.go
index 4c3114d9..234ee5c9 100644
--- a/errors/doc.go
+++ b/errors/doc.go
@@ -7,4 +7,4 @@
 Package errors handles localized errors.
 
 */
-package errors
+package errors // import "miniflux.app/errors"
diff --git a/errors/errors.go b/errors/errors.go
index e7af7b10..b3c55301 100644
--- a/errors/errors.go
+++ b/errors/errors.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package errors
+package errors // import "miniflux.app/errors"
 
 import (
 	"fmt"
 
-	"github.com/miniflux/miniflux/locale"
+	"miniflux.app/locale"
 )
 
 // LocalizedError represents an error than could be translated to another language.
diff --git a/fever/doc.go b/fever/doc.go
index f01f098d..ea18da8b 100644
--- a/fever/doc.go
+++ b/fever/doc.go
@@ -7,4 +7,4 @@
 Package fever implements Fever API endpoints.
 
 */
-package fever
+package fever // import "miniflux.app/fever"
diff --git a/fever/fever.go b/fever/fever.go
index 44e155a9..2f17fd2e 100644
--- a/fever/fever.go
+++ b/fever/fever.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package fever
+package fever // import "miniflux.app/fever"
 
 import (
 	"net/http"
@@ -10,14 +10,14 @@ import (
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/integration"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/config"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/json"
+	"miniflux.app/integration"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/storage"
 )
 
 type baseResponse struct {
diff --git a/filter/doc.go b/filter/doc.go
index 5fd9fef1..db4d6102 100644
--- a/filter/doc.go
+++ b/filter/doc.go
@@ -7,4 +7,4 @@
 Package filter implements a content filter to rewrite image links.
 
 */
-package filter
+package filter // import "miniflux.app/filter"
diff --git a/filter/image_proxy_filter.go b/filter/image_proxy_filter.go
index 99884e37..01ae5917 100644
--- a/filter/image_proxy_filter.go
+++ b/filter/image_proxy_filter.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package filter
+package filter // import "miniflux.app/filter"
 
 import (
 	"encoding/base64"
 	"strings"
 
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/url"
+	"miniflux.app/config"
+	"miniflux.app/http/route"
+	"miniflux.app/url"
 
 	"github.com/PuerkitoBio/goquery"
 	"github.com/gorilla/mux"
diff --git a/filter/image_proxy_filter_test.go b/filter/image_proxy_filter_test.go
index 7c1376ed..8e97cd00 100644
--- a/filter/image_proxy_filter_test.go
+++ b/filter/image_proxy_filter_test.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package filter
+package filter // import "miniflux.app/filter"
 
 import (
 	"net/http"
 	"os"
 	"testing"
 
-	"github.com/miniflux/miniflux/config"
+	"miniflux.app/config"
 
 	"github.com/gorilla/mux"
 )
diff --git a/generate.go b/generate.go
index cba64e31..7136cc3b 100644
--- a/generate.go
+++ b/generate.go
@@ -24,7 +24,7 @@ import (
 
 const tpl = `// Code generated by go generate; DO NOT EDIT.
 
-package {{ .Package }}
+package {{ .Package }} // import "miniflux.app/{{ .ImportPath }}"
 
 var {{ .Map }} = map[string]string{
 {{ range $constant, $content := .Files }}` + "\t" + `"{{ $constant }}": ` + "`{{ $content }}`" + `,
@@ -38,9 +38,11 @@ var {{ .Map }}Checksums = map[string]string{
 var bundleTpl = template.Must(template.New("").Parse(tpl))
 
 type Bundle struct {
-	Package, Map string
-	Files        map[string]string
-	Checksums    map[string]string
+	Package    string
+	Map        string
+	ImportPath string
+	Files      map[string]string
+	Checksums  map[string]string
 }
 
 func (b *Bundle) Write(filename string) {
@@ -53,12 +55,13 @@ func (b *Bundle) Write(filename string) {
 	bundleTpl.Execute(f, b)
 }
 
-func NewBundle(pkg, mapName string) *Bundle {
+func NewBundle(pkg, mapName, importPath string) *Bundle {
 	return &Bundle{
-		Package:   pkg,
-		Map:       mapName,
-		Files:     make(map[string]string),
-		Checksums: make(map[string]string),
+		Package:    pkg,
+		Map:        mapName,
+		ImportPath: importPath,
+		Files:      make(map[string]string),
+		Checksums:  make(map[string]string),
 	}
 }
 
@@ -97,7 +100,7 @@ func concat(files []string) string {
 }
 
 func generateJSBundle(bundleFile string, bundleFiles map[string][]string, prefixes, suffixes map[string]string) {
-	bundle := NewBundle("static", "Javascripts")
+	bundle := NewBundle("static", "Javascripts", "ui/static")
 	m := minify.New()
 	m.AddFunc("text/javascript", js.Minify)
 
@@ -127,7 +130,7 @@ func generateJSBundle(bundleFile string, bundleFiles map[string][]string, prefix
 }
 
 func generateCSSBundle(bundleFile string, themes map[string][]string) {
-	bundle := NewBundle("static", "Stylesheets")
+	bundle := NewBundle("static", "Stylesheets", "ui/static")
 	m := minify.New()
 	m.AddFunc("text/css", css.Minify)
 
@@ -146,7 +149,7 @@ func generateCSSBundle(bundleFile string, themes map[string][]string) {
 }
 
 func generateBinaryBundle(bundleFile string, srcFiles []string) {
-	bundle := NewBundle("static", "Binaries")
+	bundle := NewBundle("static", "Binaries", "ui/static")
 
 	for _, srcFile := range srcFiles {
 		data := readFile(srcFile)
@@ -161,7 +164,7 @@ func generateBinaryBundle(bundleFile string, srcFiles []string) {
 }
 
 func generateBundle(bundleFile, pkg, mapName string, srcFiles []string) {
-	bundle := NewBundle(pkg, mapName)
+	bundle := NewBundle(pkg, mapName, pkg)
 
 	for _, srcFile := range srcFiles {
 		data := readFile(srcFile)
diff --git a/http/client/client.go b/http/client/client.go
index d9f3524a..201b136c 100644
--- a/http/client/client.go
+++ b/http/client/client.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package client
+package client // import "miniflux.app/http/client"
 
 import (
 	"bytes"
@@ -18,10 +18,10 @@ import (
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/timer"
-	"github.com/miniflux/miniflux/version"
+	"miniflux.app/errors"
+	"miniflux.app/logger"
+	"miniflux.app/timer"
+	"miniflux.app/version"
 )
 
 const (
diff --git a/http/client/response.go b/http/client/response.go
index d4e3cdca..0efd8e24 100644
--- a/http/client/response.go
+++ b/http/client/response.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package client
+package client // import "miniflux.app/http/client"
 
 import (
 	"io"
 	"mime"
 	"strings"
 
-	"github.com/miniflux/miniflux/logger"
 	"golang.org/x/net/html/charset"
+	"miniflux.app/logger"
 )
 
 // Response wraps a server response.
diff --git a/http/client/response_test.go b/http/client/response_test.go
index f3402a80..cd0f73dd 100644
--- a/http/client/response_test.go
+++ b/http/client/response_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package client
+package client // import "miniflux.app/http/client"
 
 import "testing"
 
diff --git a/http/context/context.go b/http/context/context.go
index 4ca95c5c..1c65e64c 100644
--- a/http/context/context.go
+++ b/http/context/context.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package context
+package context // import "miniflux.app/http/context"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/middleware"
+	"miniflux.app/middleware"
 )
 
 // Context contains helper functions related to the current request.
diff --git a/http/cookie/cookie.go b/http/cookie/cookie.go
index 4407daab..d0e55eb1 100644
--- a/http/cookie/cookie.go
+++ b/http/cookie/cookie.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package cookie
+package cookie // import "miniflux.app/http/cookie"
 
 import (
 	"net/http"
diff --git a/http/request/request.go b/http/request/request.go
index cc5a4dd7..802b1d01 100644
--- a/http/request/request.go
+++ b/http/request/request.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package request
+package request // import "miniflux.app/http/request"
 
 import (
 	"fmt"
diff --git a/http/request/request_test.go b/http/request/request_test.go
index a4aaabf6..fa2c4b14 100644
--- a/http/request/request_test.go
+++ b/http/request/request_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package request
+package request // import "miniflux.app/http/request"
 
 import (
 	"net/http"
diff --git a/http/response/html/html.go b/http/response/html/html.go
index a17ce04b..65a46490 100644
--- a/http/response/html/html.go
+++ b/http/response/html/html.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package html
+package html // import "miniflux.app/http/response/html"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/http/response"
+	"miniflux.app/logger"
 )
 
 // OK writes a standard HTML response.
diff --git a/http/response/json/json.go b/http/response/json/json.go
index 6f3eb15c..f19efb0b 100644
--- a/http/response/json/json.go
+++ b/http/response/json/json.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package json
+package json // import "miniflux.app/http/response/json"
 
 import (
 	"encoding/json"
 	"errors"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/http/response"
+	"miniflux.app/logger"
 )
 
 // OK sends a JSON response with the status code 200.
diff --git a/http/response/response.go b/http/response/response.go
index f7926254..4d731719 100644
--- a/http/response/response.go
+++ b/http/response/response.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package response
+package response // import "miniflux.app/http/response"
 
 import (
 	"compress/flate"
diff --git a/http/response/xml/xml.go b/http/response/xml/xml.go
index 9e37e875..bceb5f16 100644
--- a/http/response/xml/xml.go
+++ b/http/response/xml/xml.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package xml
+package xml // import "miniflux.app/http/response/xml"
 
 import (
 	"fmt"
diff --git a/http/route/route.go b/http/route/route.go
index ee574a58..e7b1dc28 100644
--- a/http/route/route.go
+++ b/http/route/route.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package route
+package route // import "miniflux.app/http/route"
 
 import (
 	"strconv"
 
 	"github.com/gorilla/mux"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/logger"
 )
 
 // Path returns the defined route based on given arguments.
diff --git a/integration/doc.go b/integration/doc.go
index fb1fc086..abbf5527 100644
--- a/integration/doc.go
+++ b/integration/doc.go
@@ -7,4 +7,4 @@
 Package integration implements API clients for third-party services.
 
 */
-package integration
+package integration // import "miniflux.app/integration"
diff --git a/integration/instapaper/instapaper.go b/integration/instapaper/instapaper.go
index 3b9e91c1..a3973ff4 100644
--- a/integration/instapaper/instapaper.go
+++ b/integration/instapaper/instapaper.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package instapaper
+package instapaper // import "miniflux.app/integration/instapaper"
 
 import (
 	"fmt"
 	"net/url"
 
-	"github.com/miniflux/miniflux/http/client"
+	"miniflux.app/http/client"
 )
 
 // Client represents an Instapaper client.
diff --git a/integration/integration.go b/integration/integration.go
index af19939b..38a215f9 100644
--- a/integration/integration.go
+++ b/integration/integration.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package integration
+package integration // import "miniflux.app/integration"
 
 import (
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/integration/instapaper"
-	"github.com/miniflux/miniflux/integration/nunuxkeeper"
-	"github.com/miniflux/miniflux/integration/pinboard"
-	"github.com/miniflux/miniflux/integration/pocket"
-	"github.com/miniflux/miniflux/integration/wallabag"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/config"
+	"miniflux.app/integration/instapaper"
+	"miniflux.app/integration/nunuxkeeper"
+	"miniflux.app/integration/pinboard"
+	"miniflux.app/integration/pocket"
+	"miniflux.app/integration/wallabag"
+	"miniflux.app/logger"
+	"miniflux.app/model"
 )
 
 // SendEntry send the entry to the activated providers.
diff --git a/integration/nunuxkeeper/nunuxkeeper.go b/integration/nunuxkeeper/nunuxkeeper.go
index 76367e17..87192d32 100644
--- a/integration/nunuxkeeper/nunuxkeeper.go
+++ b/integration/nunuxkeeper/nunuxkeeper.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package nunuxkeeper
+package nunuxkeeper // import "miniflux.app/integration/nunuxkeeper"
 
 import (
 	"fmt"
 	"net/url"
 	"path"
 
-	"github.com/miniflux/miniflux/http/client"
+	"miniflux.app/http/client"
 )
 
 // Document structure of a Nununx Keeper document
diff --git a/integration/pinboard/pinboard.go b/integration/pinboard/pinboard.go
index 0de1dd26..4bef3cac 100644
--- a/integration/pinboard/pinboard.go
+++ b/integration/pinboard/pinboard.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package pinboard
+package pinboard // import "miniflux.app/integration/pinboard"
 
 import (
 	"fmt"
 	"net/url"
 
-	"github.com/miniflux/miniflux/http/client"
+	"miniflux.app/http/client"
 )
 
 // Client represents a Pinboard client.
diff --git a/integration/pocket/connector.go b/integration/pocket/connector.go
index b3ed79df..4cb0931f 100644
--- a/integration/pocket/connector.go
+++ b/integration/pocket/connector.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package pocket
+package pocket // import "miniflux.app/integration/pocket"
 
 import (
 	"errors"
@@ -10,7 +10,7 @@ import (
 	"io/ioutil"
 	"net/url"
 
-	"github.com/miniflux/miniflux/http/client"
+	"miniflux.app/http/client"
 )
 
 // Connector manages the authorization flow with Pocket to get a personal access token.
diff --git a/integration/pocket/pocket.go b/integration/pocket/pocket.go
index 77f77d4b..6f1b197c 100644
--- a/integration/pocket/pocket.go
+++ b/integration/pocket/pocket.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package pocket
+package pocket // import "miniflux.app/integration/pocket"
 
 import (
 	"fmt"
 
-	"github.com/miniflux/miniflux/http/client"
+	"miniflux.app/http/client"
 )
 
 // Client represents a Pocket client.
diff --git a/integration/wallabag/wallabag.go b/integration/wallabag/wallabag.go
index 02a36b50..786470f7 100644
--- a/integration/wallabag/wallabag.go
+++ b/integration/wallabag/wallabag.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package wallabag
+package wallabag // import "miniflux.app/integration/wallabag"
 
 import (
 	"encoding/json"
@@ -10,7 +10,7 @@ import (
 	"io"
 	"net/url"
 
-	"github.com/miniflux/miniflux/http/client"
+	"miniflux.app/http/client"
 )
 
 // Client represents a Wallabag client.
diff --git a/locale/doc.go b/locale/doc.go
index 5e92c6fc..2602cc7b 100644
--- a/locale/doc.go
+++ b/locale/doc.go
@@ -7,4 +7,4 @@
 Package locale handles the internationalization of the application.
 
 */
-package locale
+package locale // import "miniflux.app/locale"
diff --git a/locale/language.go b/locale/language.go
index b63976ca..2146960f 100644
--- a/locale/language.go
+++ b/locale/language.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package locale
+package locale // import "miniflux.app/locale"
 
 import "fmt"
 
diff --git a/locale/locale.go b/locale/locale.go
index c76ad8ab..64d3b865 100755
--- a/locale/locale.go
+++ b/locale/locale.go
@@ -2,9 +2,9 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package locale
+package locale // import "miniflux.app/locale"
 
-import "github.com/miniflux/miniflux/logger"
+import "miniflux.app/logger"
 
 // Translation is the translation mapping table.
 type Translation map[string]interface{}
diff --git a/locale/locale_test.go b/locale/locale_test.go
index baddd1e1..28e2a800 100644
--- a/locale/locale_test.go
+++ b/locale/locale_test.go
@@ -1,7 +1,7 @@
 // Copyright 2017 Frédéric Guillot. All rights reserved.
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
-package locale
+package locale // import "miniflux.app/locale"
 
 import "testing"
 
diff --git a/locale/plurals.go b/locale/plurals.go
index d94f238a..c4e47cf4 100644
--- a/locale/plurals.go
+++ b/locale/plurals.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package locale
+package locale // import "miniflux.app/locale"
 
 // See https://localization-guide.readthedocs.io/en/latest/l10n/pluralforms.html
 // And http://www.unicode.org/cldr/charts/29/supplemental/language_plural_rules.html
diff --git a/locale/translations.go b/locale/translations.go
index 962e091c..c1174e42 100755
--- a/locale/translations.go
+++ b/locale/translations.go
@@ -1,6 +1,6 @@
 // Code generated by go generate; DO NOT EDIT.
 
-package locale
+package locale // import "miniflux.app/locale"
 
 var translations = map[string]string{
 	"de_DE": `{
diff --git a/locale/translator.go b/locale/translator.go
index 18206b07..dff8b2cf 100644
--- a/locale/translator.go
+++ b/locale/translator.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package locale
+package locale // import "miniflux.app/locale"
 
 import (
 	"encoding/json"
diff --git a/logger/doc.go b/logger/doc.go
index 4d63bcd6..d6b6a35c 100644
--- a/logger/doc.go
+++ b/logger/doc.go
@@ -7,4 +7,4 @@
 Package logger handles application log messages with different levels.
 
 */
-package logger
+package logger // import "miniflux.app/logger"
diff --git a/logger/logger.go b/logger/logger.go
index a7ef3c1a..33a08e3e 100644
--- a/logger/logger.go
+++ b/logger/logger.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package logger
+package logger // import "miniflux.app/logger"
 
 import (
 	"fmt"
diff --git a/main.go b/main.go
index 44f38dbb..b56e427a 100644
--- a/main.go
+++ b/main.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package main
+package main // import "miniflux.app"
 
 //go:generate go run generate.go
 //go:generate gofmt -s -w database/sql.go
@@ -14,7 +14,7 @@ package main
 //go:generate gofmt -s -w locale/translations.go
 
 import (
-	"github.com/miniflux/miniflux/cli"
+	"miniflux.app/cli"
 )
 
 func main() {
diff --git a/middleware/app_session.go b/middleware/app_session.go
index ae1d8e92..8b3284b5 100644
--- a/middleware/app_session.go
+++ b/middleware/app_session.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package middleware
+package middleware // import "miniflux.app/middleware"
 
 import (
 	"context"
 	"errors"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/cookie"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/http/cookie"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/logger"
+	"miniflux.app/model"
 )
 
 // AppSession handles application session middleware.
diff --git a/middleware/basic_auth.go b/middleware/basic_auth.go
index edea3338..c02913fa 100644
--- a/middleware/basic_auth.go
+++ b/middleware/basic_auth.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package middleware
+package middleware // import "miniflux.app/middleware"
 
 import (
 	"context"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/http/response/json"
+	"miniflux.app/logger"
 )
 
 // BasicAuth handles HTTP basic authentication.
diff --git a/middleware/common_headers.go b/middleware/common_headers.go
index bdec580c..a60969f7 100644
--- a/middleware/common_headers.go
+++ b/middleware/common_headers.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package middleware
+package middleware // import "miniflux.app/middleware"
 
 import (
 	"net/http"
diff --git a/middleware/context_keys.go b/middleware/context_keys.go
index 03a3e2bf..80b5e965 100644
--- a/middleware/context_keys.go
+++ b/middleware/context_keys.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package middleware
+package middleware // import "miniflux.app/middleware"
 
 // ContextKey represents a context key.
 type ContextKey struct {
diff --git a/middleware/fever.go b/middleware/fever.go
index 6211fb79..3fdbcfdd 100644
--- a/middleware/fever.go
+++ b/middleware/fever.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package middleware
+package middleware // import "miniflux.app/middleware"
 
 import (
 	"context"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/http/response/json"
+	"miniflux.app/logger"
 )
 
 // FeverAuth handles Fever API authentication.
diff --git a/middleware/header_config.go b/middleware/header_config.go
index 91d18201..4302ac80 100644
--- a/middleware/header_config.go
+++ b/middleware/header_config.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package middleware
+package middleware // import "miniflux.app/middleware"
 
 import (
 	"net/http"
diff --git a/middleware/logging.go b/middleware/logging.go
index 48158b43..2e78ea8e 100644
--- a/middleware/logging.go
+++ b/middleware/logging.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package middleware
+package middleware // import "miniflux.app/middleware"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/http/request"
+	"miniflux.app/logger"
 )
 
 // Logging logs the HTTP request.
diff --git a/middleware/middleware.go b/middleware/middleware.go
index 3c1bb0ec..cf393d23 100644
--- a/middleware/middleware.go
+++ b/middleware/middleware.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package middleware
+package middleware // import "miniflux.app/middleware"
 
 import (
 	"github.com/gorilla/mux"
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/config"
+	"miniflux.app/storage"
 )
 
 // Middleware handles different middleware handlers.
diff --git a/middleware/user_session.go b/middleware/user_session.go
index b27858fc..764cbdbc 100644
--- a/middleware/user_session.go
+++ b/middleware/user_session.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package middleware
+package middleware // import "miniflux.app/middleware"
 
 import (
 	"context"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/cookie"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/http/cookie"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/model"
 
 	"github.com/gorilla/mux"
 )
diff --git a/model/app_session.go b/model/app_session.go
index e9ee06e8..4f97c4c1 100644
--- a/model/app_session.go
+++ b/model/app_session.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import (
 	"database/sql/driver"
diff --git a/model/category.go b/model/category.go
index 1c72851b..40a132d5 100644
--- a/model/category.go
+++ b/model/category.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import (
 	"errors"
diff --git a/model/category_test.go b/model/category_test.go
index 9f8a054f..47a524df 100644
--- a/model/category_test.go
+++ b/model/category_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import "testing"
 
diff --git a/model/doc.go b/model/doc.go
index 4718d8ae..bef8495e 100644
--- a/model/doc.go
+++ b/model/doc.go
@@ -7,4 +7,4 @@
 Package model contains all data structures used by the application.
 
 */
-package model
+package model // import "miniflux.app/model"
diff --git a/model/enclosure.go b/model/enclosure.go
index 6de1af73..52388794 100644
--- a/model/enclosure.go
+++ b/model/enclosure.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 // Enclosure represents an attachment.
 type Enclosure struct {
diff --git a/model/entry.go b/model/entry.go
index 104601e1..75ffaca9 100644
--- a/model/entry.go
+++ b/model/entry.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import (
 	"fmt"
diff --git a/model/entry_test.go b/model/entry_test.go
index 8b92d3f0..d6440df7 100644
--- a/model/entry_test.go
+++ b/model/entry_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import "testing"
 
diff --git a/model/feed.go b/model/feed.go
index d019eeb8..d6ce0d16 100644
--- a/model/feed.go
+++ b/model/feed.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import (
 	"fmt"
diff --git a/model/icon.go b/model/icon.go
index 3608a0a0..5e3bd769 100644
--- a/model/icon.go
+++ b/model/icon.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import (
 	"encoding/base64"
diff --git a/model/integration.go b/model/integration.go
index e4282a48..9fc5696a 100644
--- a/model/integration.go
+++ b/model/integration.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 // Integration represents user integration settings.
 type Integration struct {
diff --git a/model/job.go b/model/job.go
index 9f9167bc..7a42437a 100644
--- a/model/job.go
+++ b/model/job.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 // Job represents a payload sent to the processing queue.
 type Job struct {
diff --git a/model/theme.go b/model/theme.go
index f58f91c8..9d379fd3 100644
--- a/model/theme.go
+++ b/model/theme.go
@@ -2,9 +2,9 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
-import "github.com/miniflux/miniflux/errors"
+import "miniflux.app/errors"
 
 // Themes returns the list of available themes.
 func Themes() map[string]string {
diff --git a/model/theme_test.go b/model/theme_test.go
index ddf58c43..0e710db4 100644
--- a/model/theme_test.go
+++ b/model/theme_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import "testing"
 
diff --git a/model/user.go b/model/user.go
index 6a985e3a..6c537b21 100644
--- a/model/user.go
+++ b/model/user.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import (
 	"errors"
 	"time"
 
-	"github.com/miniflux/miniflux/timezone"
+	"miniflux.app/timezone"
 )
 
 // User represents a user in the system.
diff --git a/model/user_session.go b/model/user_session.go
index 51b25438..55c2d67c 100644
--- a/model/user_session.go
+++ b/model/user_session.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import (
 	"fmt"
 	"time"
 
-	"github.com/miniflux/miniflux/timezone"
+	"miniflux.app/timezone"
 )
 
 // UserSession represents a user session in the system.
diff --git a/model/user_test.go b/model/user_test.go
index e7bcb1e3..d560e35d 100644
--- a/model/user_test.go
+++ b/model/user_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package model
+package model // import "miniflux.app/model"
 
 import "testing"
 
diff --git a/oauth2/doc.go b/oauth2/doc.go
index 2254a3fe..4fee9319 100644
--- a/oauth2/doc.go
+++ b/oauth2/doc.go
@@ -7,4 +7,4 @@
 Package oauth2 abstracts different OAuth2 providers.
 
 */
-package oauth2
+package oauth2 // import "miniflux.app/oauth2"
diff --git a/oauth2/google.go b/oauth2/google.go
index e57e027f..5d3ca49c 100644
--- a/oauth2/google.go
+++ b/oauth2/google.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package oauth2
+package oauth2 // import "miniflux.app/oauth2"
 
 import (
 	"context"
diff --git a/oauth2/manager.go b/oauth2/manager.go
index 08360a97..f1ba7d97 100644
--- a/oauth2/manager.go
+++ b/oauth2/manager.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package oauth2
+package oauth2 // import "miniflux.app/oauth2"
 
 import "errors"
 
diff --git a/oauth2/profile.go b/oauth2/profile.go
index 488ffb29..b43f07c2 100644
--- a/oauth2/profile.go
+++ b/oauth2/profile.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package oauth2
+package oauth2 // import "miniflux.app/oauth2"
 
 // Profile is the OAuth2 user profile.
 type Profile struct {
diff --git a/oauth2/provider.go b/oauth2/provider.go
index c43931c0..04f92149 100644
--- a/oauth2/provider.go
+++ b/oauth2/provider.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package oauth2
+package oauth2 // import "miniflux.app/oauth2"
 
 // Provider is an interface for OAuth2 providers.
 type Provider interface {
diff --git a/reader/atom/atom.go b/reader/atom/atom.go
index 274d67f7..7fbf0407 100644
--- a/reader/atom/atom.go
+++ b/reader/atom/atom.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package atom
+package atom // import "miniflux.app/reader/atom"
 
 import (
 	"encoding/xml"
@@ -10,12 +10,12 @@ import (
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/crypto"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/date"
-	"github.com/miniflux/miniflux/reader/sanitizer"
-	"github.com/miniflux/miniflux/url"
+	"miniflux.app/crypto"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/reader/date"
+	"miniflux.app/reader/sanitizer"
+	"miniflux.app/url"
 )
 
 type atomFeed struct {
diff --git a/reader/atom/parser.go b/reader/atom/parser.go
index d560c273..152626c0 100644
--- a/reader/atom/parser.go
+++ b/reader/atom/parser.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package atom
+package atom // import "miniflux.app/reader/atom"
 
 import (
 	"encoding/xml"
 	"io"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/encoding"
+	"miniflux.app/errors"
+	"miniflux.app/model"
+	"miniflux.app/reader/encoding"
 )
 
 // Parse returns a normalized feed struct from a Atom feed.
diff --git a/reader/atom/parser_test.go b/reader/atom/parser_test.go
index e6cfdd78..82a569ac 100644
--- a/reader/atom/parser_test.go
+++ b/reader/atom/parser_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package atom
+package atom // import "miniflux.app/reader/atom"
 
 import (
 	"bytes"
diff --git a/reader/date/parser.go b/reader/date/parser.go
index d223ceb9..8a22df83 100644
--- a/reader/date/parser.go
+++ b/reader/date/parser.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package date
+package date // import "miniflux.app/reader/date"
 
 import (
 	"errors"
diff --git a/reader/date/parser_test.go b/reader/date/parser_test.go
index f796b535..b3306326 100644
--- a/reader/date/parser_test.go
+++ b/reader/date/parser_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package date
+package date // import "miniflux.app/reader/date"
 
 import "testing"
 
diff --git a/reader/doc.go b/reader/doc.go
index 1698644a..21012669 100644
--- a/reader/doc.go
+++ b/reader/doc.go
@@ -7,4 +7,4 @@
 Package reader implements everything related to feed parsing.
 
 */
-package reader
+package reader // import "miniflux.app/reader"
diff --git a/reader/encoding/doc.go b/reader/encoding/doc.go
index bd3a42e1..8498cf3a 100644
--- a/reader/encoding/doc.go
+++ b/reader/encoding/doc.go
@@ -7,4 +7,4 @@
 Package encoding handles workarounds to deal with encoding edge cases found into the wild.
 
 */
-package encoding
+package encoding // import "miniflux.app/reader/encoding"
diff --git a/reader/encoding/encoding.go b/reader/encoding/encoding.go
index 7f726adf..497b2d04 100644
--- a/reader/encoding/encoding.go
+++ b/reader/encoding/encoding.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package encoding
+package encoding // import "miniflux.app/reader/encoding"
 
 import (
 	"bytes"
diff --git a/reader/feed/handler.go b/reader/feed/handler.go
index f01b8772..fa09cb65 100644
--- a/reader/feed/handler.go
+++ b/reader/feed/handler.go
@@ -2,21 +2,21 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package feed
+package feed // import "miniflux.app/reader/feed"
 
 import (
 	"fmt"
 	"time"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/http/client"
-	"github.com/miniflux/miniflux/locale"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/icon"
-	"github.com/miniflux/miniflux/reader/processor"
-	"github.com/miniflux/miniflux/storage"
-	"github.com/miniflux/miniflux/timer"
+	"miniflux.app/errors"
+	"miniflux.app/http/client"
+	"miniflux.app/locale"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/reader/icon"
+	"miniflux.app/reader/processor"
+	"miniflux.app/storage"
+	"miniflux.app/timer"
 )
 
 var (
diff --git a/reader/feed/parser.go b/reader/feed/parser.go
index f76a071a..70c05244 100644
--- a/reader/feed/parser.go
+++ b/reader/feed/parser.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package feed
+package feed // import "miniflux.app/reader/feed"
 
 import (
 	"bytes"
@@ -11,15 +11,15 @@ import (
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/atom"
-	"github.com/miniflux/miniflux/reader/encoding"
-	"github.com/miniflux/miniflux/reader/json"
-	"github.com/miniflux/miniflux/reader/rdf"
-	"github.com/miniflux/miniflux/reader/rss"
-	"github.com/miniflux/miniflux/timer"
+	"miniflux.app/errors"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/reader/atom"
+	"miniflux.app/reader/encoding"
+	"miniflux.app/reader/json"
+	"miniflux.app/reader/rdf"
+	"miniflux.app/reader/rss"
+	"miniflux.app/timer"
 )
 
 // List of feed formats.
diff --git a/reader/feed/parser_test.go b/reader/feed/parser_test.go
index 31dbedf2..46dc34eb 100644
--- a/reader/feed/parser_test.go
+++ b/reader/feed/parser_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package feed
+package feed // import "miniflux.app/reader/feed"
 
 import (
 	"bytes"
diff --git a/reader/icon/finder.go b/reader/icon/finder.go
index 296ddeca..c9da1bc0 100644
--- a/reader/icon/finder.go
+++ b/reader/icon/finder.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package icon
+package icon // import "miniflux.app/reader/icon"
 
 import (
 	"encoding/base64"
@@ -11,11 +11,11 @@ import (
 	"io/ioutil"
 	"strings"
 
-	"github.com/miniflux/miniflux/crypto"
-	"github.com/miniflux/miniflux/http/client"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/url"
+	"miniflux.app/crypto"
+	"miniflux.app/http/client"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/url"
 
 	"github.com/PuerkitoBio/goquery"
 )
diff --git a/reader/icon/finder_test.go b/reader/icon/finder_test.go
index e76f68c5..5fcbaa9a 100644
--- a/reader/icon/finder_test.go
+++ b/reader/icon/finder_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package icon
+package icon // import "miniflux.app/reader/icon"
 
 import "testing"
 
diff --git a/reader/json/json.go b/reader/json/json.go
index 2c812abf..af059f07 100644
--- a/reader/json/json.go
+++ b/reader/json/json.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package json
+package json // import "miniflux.app/reader/json"
 
 import (
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/crypto"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/date"
-	"github.com/miniflux/miniflux/reader/sanitizer"
-	"github.com/miniflux/miniflux/url"
+	"miniflux.app/crypto"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/reader/date"
+	"miniflux.app/reader/sanitizer"
+	"miniflux.app/url"
 )
 
 type jsonFeed struct {
diff --git a/reader/json/parser.go b/reader/json/parser.go
index 55c93726..babbde15 100644
--- a/reader/json/parser.go
+++ b/reader/json/parser.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package json
+package json // import "miniflux.app/reader/json"
 
 import (
 	"encoding/json"
 	"io"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/errors"
+	"miniflux.app/model"
 )
 
 // Parse returns a normalized feed struct from a JON feed.
diff --git a/reader/json/parser_test.go b/reader/json/parser_test.go
index 19c12c93..482212be 100644
--- a/reader/json/parser_test.go
+++ b/reader/json/parser_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package json
+package json // import "miniflux.app/reader/json"
 
 import (
 	"bytes"
diff --git a/reader/opml/handler.go b/reader/opml/handler.go
index 3bbce6c5..98612439 100644
--- a/reader/opml/handler.go
+++ b/reader/opml/handler.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package opml
+package opml // import "miniflux.app/reader/opml"
 
 import (
 	"errors"
 	"fmt"
 	"io"
 
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/storage"
 )
 
 // Handler handles the logic for OPML import/export.
diff --git a/reader/opml/opml.go b/reader/opml/opml.go
index ab818125..27d0167e 100644
--- a/reader/opml/opml.go
+++ b/reader/opml/opml.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package opml
+package opml // import "miniflux.app/reader/opml"
 
 import "encoding/xml"
 
diff --git a/reader/opml/parser.go b/reader/opml/parser.go
index 93f2f259..1c24a70a 100644
--- a/reader/opml/parser.go
+++ b/reader/opml/parser.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package opml
+package opml // import "miniflux.app/reader/opml"
 
 import (
 	"encoding/xml"
 	"io"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/reader/encoding"
+	"miniflux.app/errors"
+	"miniflux.app/reader/encoding"
 )
 
 // Parse reads an OPML file and returns a SubcriptionList.
diff --git a/reader/opml/parser_test.go b/reader/opml/parser_test.go
index e00d5784..ef8e9f17 100644
--- a/reader/opml/parser_test.go
+++ b/reader/opml/parser_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package opml
+package opml // import "miniflux.app/reader/opml"
 
 import (
 	"bytes"
diff --git a/reader/opml/serializer.go b/reader/opml/serializer.go
index 68cafa92..c094f4c4 100644
--- a/reader/opml/serializer.go
+++ b/reader/opml/serializer.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package opml
+package opml // import "miniflux.app/reader/opml"
 
 import (
 	"bufio"
 	"bytes"
 	"encoding/xml"
 
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/logger"
 )
 
 // Serialize returns a SubcriptionList in OPML format.
diff --git a/reader/opml/serializer_test.go b/reader/opml/serializer_test.go
index dd431d9d..9c598eef 100644
--- a/reader/opml/serializer_test.go
+++ b/reader/opml/serializer_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package opml
+package opml // import "miniflux.app/reader/opml"
 
 import (
 	"bytes"
diff --git a/reader/opml/subscription.go b/reader/opml/subscription.go
index 45f2597d..415b0957 100644
--- a/reader/opml/subscription.go
+++ b/reader/opml/subscription.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package opml
+package opml // import "miniflux.app/reader/opml"
 
 // Subcription represents a feed that will be imported or exported.
 type Subcription struct {
diff --git a/reader/processor/processor.go b/reader/processor/processor.go
index eacce9f6..002f7e88 100644
--- a/reader/processor/processor.go
+++ b/reader/processor/processor.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package processor
+package processor // import "miniflux.app/reader/processor"
 
 import (
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/rewrite"
-	"github.com/miniflux/miniflux/reader/sanitizer"
-	"github.com/miniflux/miniflux/reader/scraper"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/reader/rewrite"
+	"miniflux.app/reader/sanitizer"
+	"miniflux.app/reader/scraper"
+	"miniflux.app/storage"
 )
 
 // FeedProcessor handles the processing of feed contents.
diff --git a/reader/rdf/parser.go b/reader/rdf/parser.go
index 76b731c5..90eb1dce 100644
--- a/reader/rdf/parser.go
+++ b/reader/rdf/parser.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package rdf
+package rdf // import "miniflux.app/reader/rdf"
 
 import (
 	"encoding/xml"
 	"io"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/encoding"
+	"miniflux.app/errors"
+	"miniflux.app/model"
+	"miniflux.app/reader/encoding"
 )
 
 // Parse returns a normalized feed struct from a RDF feed.
diff --git a/reader/rdf/parser_test.go b/reader/rdf/parser_test.go
index 392b9871..30c34139 100644
--- a/reader/rdf/parser_test.go
+++ b/reader/rdf/parser_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package rdf
+package rdf // import "miniflux.app/reader/rdf"
 
 import (
 	"bytes"
diff --git a/reader/rdf/rdf.go b/reader/rdf/rdf.go
index 44ff0afc..6ee6828d 100644
--- a/reader/rdf/rdf.go
+++ b/reader/rdf/rdf.go
@@ -2,19 +2,19 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package rdf
+package rdf // import "miniflux.app/reader/rdf"
 
 import (
 	"encoding/xml"
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/crypto"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/date"
-	"github.com/miniflux/miniflux/reader/sanitizer"
-	"github.com/miniflux/miniflux/url"
+	"miniflux.app/crypto"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/reader/date"
+	"miniflux.app/reader/sanitizer"
+	"miniflux.app/url"
 )
 
 type rdfFeed struct {
diff --git a/reader/readability/readability.go b/reader/readability/readability.go
index 5eb4cc3e..d58ff221 100644
--- a/reader/readability/readability.go
+++ b/reader/readability/readability.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package readability
+package readability // import "miniflux.app/reader/readability"
 
 import (
 	"bytes"
@@ -12,8 +12,9 @@ import (
 	"regexp"
 	"strings"
 
+	"miniflux.app/logger"
+
 	"github.com/PuerkitoBio/goquery"
-	"github.com/miniflux/miniflux/logger"
 	"golang.org/x/net/html"
 )
 
diff --git a/reader/rewrite/rewrite_functions.go b/reader/rewrite/rewrite_functions.go
index 4348584f..fee2a85e 100644
--- a/reader/rewrite/rewrite_functions.go
+++ b/reader/rewrite/rewrite_functions.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package rewrite
+package rewrite // import "miniflux.app/reader/rewrite"
 
 import (
 	"fmt"
@@ -14,7 +14,7 @@ import (
 
 var (
 	youtubeRegex = regexp.MustCompile(`youtube\.com/watch\?v=(.*)`)
-	imgRegex = regexp.MustCompile(`<img [^>]+>`)
+	imgRegex     = regexp.MustCompile(`<img [^>]+>`)
 )
 
 func addImageTitle(entryURL, entryContent string) string {
@@ -72,13 +72,13 @@ func addDynamicImage(entryURL, entryContent string) string {
 				changed = true
 
 				if img.Is("img") {
-					img.SetAttr("src",srcAttr)
+					img.SetAttr("src", srcAttr)
 				} else {
 					altAttr := img.AttrOr("alt", "")
 					img.ReplaceWithHtml(`<img src="` + srcAttr + `" alt="` + altAttr + `"/>`)
 				}
 
-				break;
+				break
 			}
 		}
 	})
diff --git a/reader/rewrite/rewriter.go b/reader/rewrite/rewriter.go
index 39a499cf..e9b1fae1 100644
--- a/reader/rewrite/rewriter.go
+++ b/reader/rewrite/rewriter.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package rewrite
+package rewrite // import "miniflux.app/reader/rewrite"
 
 import (
 	"strings"
 
-	"github.com/miniflux/miniflux/url"
+	"miniflux.app/url"
 )
 
 // Rewriter modify item contents with a set of rewriting rules.
diff --git a/reader/rewrite/rewriter_test.go b/reader/rewrite/rewriter_test.go
index 2e4aeaca..7ceb0dc9 100644
--- a/reader/rewrite/rewriter_test.go
+++ b/reader/rewrite/rewriter_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package rewrite
+package rewrite // import "miniflux.app/reader/rewrite"
 
 import "testing"
 
diff --git a/reader/rewrite/rules.go b/reader/rewrite/rules.go
index 76a1c0b1..500459f2 100644
--- a/reader/rewrite/rules.go
+++ b/reader/rewrite/rules.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package rewrite
+package rewrite // import "miniflux.app/reader/rewrite"
 
 // List of predefined rewrite rules (alphabetically sorted)
 // Available rules: "add_image_title", "add_youtube_video"
diff --git a/reader/rss/parser.go b/reader/rss/parser.go
index 709f8ff6..96339ae8 100644
--- a/reader/rss/parser.go
+++ b/reader/rss/parser.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package rss
+package rss // import "miniflux.app/reader/rss"
 
 import (
 	"encoding/xml"
 	"io"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/encoding"
+	"miniflux.app/errors"
+	"miniflux.app/model"
+	"miniflux.app/reader/encoding"
 )
 
 // Parse returns a normalized feed struct from a RSS feed.
diff --git a/reader/rss/parser_test.go b/reader/rss/parser_test.go
index f3ca697e..c0afe590 100644
--- a/reader/rss/parser_test.go
+++ b/reader/rss/parser_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package rss
+package rss // import "miniflux.app/reader/rss"
 
 import (
 	"bytes"
diff --git a/reader/rss/rss.go b/reader/rss/rss.go
index 5ccbb0ee..fa6c8322 100644
--- a/reader/rss/rss.go
+++ b/reader/rss/rss.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package rss
+package rss // import "miniflux.app/reader/rss"
 
 import (
 	"encoding/xml"
@@ -11,12 +11,12 @@ import (
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/crypto"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/date"
-	"github.com/miniflux/miniflux/reader/sanitizer"
-	"github.com/miniflux/miniflux/url"
+	"miniflux.app/crypto"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/reader/date"
+	"miniflux.app/reader/sanitizer"
+	"miniflux.app/url"
 )
 
 type rssFeed struct {
diff --git a/reader/sanitizer/sanitizer.go b/reader/sanitizer/sanitizer.go
index 6de46145..eae9b211 100644
--- a/reader/sanitizer/sanitizer.go
+++ b/reader/sanitizer/sanitizer.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package sanitizer
+package sanitizer // import "miniflux.app/reader/sanitizer"
 
 import (
 	"bytes"
@@ -11,7 +11,7 @@ import (
 	"regexp"
 	"strings"
 
-	"github.com/miniflux/miniflux/url"
+	"miniflux.app/url"
 
 	"golang.org/x/net/html"
 )
diff --git a/reader/sanitizer/sanitizer_test.go b/reader/sanitizer/sanitizer_test.go
index 8db0bda5..b6588f03 100644
--- a/reader/sanitizer/sanitizer_test.go
+++ b/reader/sanitizer/sanitizer_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package sanitizer
+package sanitizer // import "miniflux.app/reader/sanitizer"
 
 import "testing"
 
diff --git a/reader/sanitizer/strip_tags.go b/reader/sanitizer/strip_tags.go
index f3cecd11..8dc944fc 100644
--- a/reader/sanitizer/strip_tags.go
+++ b/reader/sanitizer/strip_tags.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package sanitizer
+package sanitizer // import "miniflux.app/reader/sanitizer"
 
 import (
 	"bytes"
diff --git a/reader/sanitizer/strip_tags_test.go b/reader/sanitizer/strip_tags_test.go
index 763ccc9e..18a0ce82 100644
--- a/reader/sanitizer/strip_tags_test.go
+++ b/reader/sanitizer/strip_tags_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package sanitizer
+package sanitizer // import "miniflux.app/reader/sanitizer"
 
 import "testing"
 
diff --git a/reader/scraper/rules.go b/reader/scraper/rules.go
index 7967869f..e84b882b 100644
--- a/reader/scraper/rules.go
+++ b/reader/scraper/rules.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package scraper
+package scraper // import "miniflux.app/reader/scraper"
 
 // List of predefined scraper rules (alphabetically sorted)
 // domain => CSS selectors
diff --git a/reader/scraper/scraper.go b/reader/scraper/scraper.go
index 17e67145..d2cccdbb 100644
--- a/reader/scraper/scraper.go
+++ b/reader/scraper/scraper.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package scraper
+package scraper // import "miniflux.app/reader/scraper"
 
 import (
 	"errors"
@@ -10,11 +10,12 @@ import (
 	"io"
 	"strings"
 
+	"miniflux.app/http/client"
+	"miniflux.app/logger"
+	"miniflux.app/reader/readability"
+	"miniflux.app/url"
+
 	"github.com/PuerkitoBio/goquery"
-	"github.com/miniflux/miniflux/http/client"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/reader/readability"
-	"github.com/miniflux/miniflux/url"
 )
 
 // Fetch downloads a web page a returns relevant contents.
diff --git a/reader/scraper/scraper_test.go b/reader/scraper/scraper_test.go
index b493e25c..e43ac118 100644
--- a/reader/scraper/scraper_test.go
+++ b/reader/scraper/scraper_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package scraper
+package scraper // import "miniflux.app/reader/scraper"
 
 import "testing"
 
diff --git a/reader/subscription/finder.go b/reader/subscription/finder.go
index 57fbd118..8be6f73e 100644
--- a/reader/subscription/finder.go
+++ b/reader/subscription/finder.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package subscription
+package subscription // import "miniflux.app/reader/subscription"
 
 import (
 	"bytes"
@@ -10,12 +10,12 @@ import (
 	"io"
 	"time"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/http/client"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/reader/feed"
-	"github.com/miniflux/miniflux/timer"
-	"github.com/miniflux/miniflux/url"
+	"miniflux.app/errors"
+	"miniflux.app/http/client"
+	"miniflux.app/logger"
+	"miniflux.app/reader/feed"
+	"miniflux.app/timer"
+	"miniflux.app/url"
 
 	"github.com/PuerkitoBio/goquery"
 )
diff --git a/reader/subscription/subscription.go b/reader/subscription/subscription.go
index f619f738..604dce56 100644
--- a/reader/subscription/subscription.go
+++ b/reader/subscription/subscription.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package subscription
+package subscription // import "miniflux.app/reader/subscription"
 
 import "fmt"
 
diff --git a/scheduler/doc.go b/scheduler/doc.go
index ea5becc5..1afa2a8c 100644
--- a/scheduler/doc.go
+++ b/scheduler/doc.go
@@ -7,4 +7,4 @@
 Package scheduler implements the application internal scheduler.
 
 */
-package scheduler
+package scheduler // import "miniflux.app/scheduler"
diff --git a/scheduler/scheduler.go b/scheduler/scheduler.go
index e354c09e..f0a81340 100644
--- a/scheduler/scheduler.go
+++ b/scheduler/scheduler.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package scheduler
+package scheduler // import "miniflux.app/scheduler"
 
 import (
 	"time"
 
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/logger"
+	"miniflux.app/storage"
 )
 
 // NewFeedScheduler starts a new scheduler that push jobs to a pool of workers.
diff --git a/scheduler/worker.go b/scheduler/worker.go
index 934f31cd..68efed77 100644
--- a/scheduler/worker.go
+++ b/scheduler/worker.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package scheduler
+package scheduler // import "miniflux.app/scheduler"
 
 import (
 	"time"
 
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/feed"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/reader/feed"
 )
 
 // Worker refreshes a feed in the background.
diff --git a/scheduler/worker_pool.go b/scheduler/worker_pool.go
index 1b9f0860..ce5a4539 100644
--- a/scheduler/worker_pool.go
+++ b/scheduler/worker_pool.go
@@ -2,11 +2,11 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package scheduler
+package scheduler // import "miniflux.app/scheduler"
 
 import (
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/feed"
+	"miniflux.app/model"
+	"miniflux.app/reader/feed"
 )
 
 // WorkerPool handle a pool of workers.
diff --git a/storage/category.go b/storage/category.go
index bbb4c865..deb8e242 100644
--- a/storage/category.go
+++ b/storage/category.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"database/sql"
@@ -10,8 +10,8 @@ import (
 	"fmt"
 	"time"
 
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/timer"
+	"miniflux.app/model"
+	"miniflux.app/timer"
 )
 
 // AnotherCategoryExists checks if another category exists with the same title.
diff --git a/storage/doc.go b/storage/doc.go
index aede4e86..ab8d0b53 100644
--- a/storage/doc.go
+++ b/storage/doc.go
@@ -7,4 +7,4 @@
 Package storage implements a set of functions to interact with the database.
 
 */
-package storage
+package storage // import "miniflux.app/storage"
diff --git a/storage/enclosure.go b/storage/enclosure.go
index 5ae0a432..0fc7be7e 100644
--- a/storage/enclosure.go
+++ b/storage/enclosure.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"fmt"
 
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/model"
 )
 
 // GetEnclosures returns all attachments for the given entry.
diff --git a/storage/entry.go b/storage/entry.go
index b703a4ce..9fd8a53f 100644
--- a/storage/entry.go
+++ b/storage/entry.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"errors"
 	"fmt"
 	"time"
 
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/timer"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/timer"
 
 	"github.com/lib/pq"
 )
diff --git a/storage/entry_pagination_builder.go b/storage/entry_pagination_builder.go
index e443b009..ce6f7fcc 100644
--- a/storage/entry_pagination_builder.go
+++ b/storage/entry_pagination_builder.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"database/sql"
@@ -10,8 +10,8 @@ import (
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/timer"
+	"miniflux.app/model"
+	"miniflux.app/timer"
 )
 
 // EntryPaginationBuilder is a builder for entry prev/next queries.
diff --git a/storage/entry_query_builder.go b/storage/entry_query_builder.go
index 8c0d706e..18cf7350 100644
--- a/storage/entry_query_builder.go
+++ b/storage/entry_query_builder.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"fmt"
@@ -11,9 +11,9 @@ import (
 
 	"github.com/lib/pq"
 
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/timer"
-	"github.com/miniflux/miniflux/timezone"
+	"miniflux.app/model"
+	"miniflux.app/timer"
+	"miniflux.app/timezone"
 )
 
 // EntryQueryBuilder builds a SQL query to fetch entries.
diff --git a/storage/feed.go b/storage/feed.go
index 326ada87..283b0958 100644
--- a/storage/feed.go
+++ b/storage/feed.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"database/sql"
@@ -10,9 +10,9 @@ import (
 	"fmt"
 	"time"
 
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/timer"
-	"github.com/miniflux/miniflux/timezone"
+	"miniflux.app/model"
+	"miniflux.app/timer"
+	"miniflux.app/timezone"
 )
 
 // FeedExists checks if the given feed exists.
diff --git a/storage/icon.go b/storage/icon.go
index 5e8b5dc6..3a3686dc 100644
--- a/storage/icon.go
+++ b/storage/icon.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"database/sql"
@@ -10,8 +10,8 @@ import (
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/timer"
+	"miniflux.app/model"
+	"miniflux.app/timer"
 )
 
 // HasIcon checks if the given feed has an icon.
diff --git a/storage/integration.go b/storage/integration.go
index 5a7ef193..6bc70641 100644
--- a/storage/integration.go
+++ b/storage/integration.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"database/sql"
 	"fmt"
 
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/model"
 )
 
 // HasDuplicateFeverUsername checks if another user have the same fever username.
diff --git a/storage/job.go b/storage/job.go
index e20a0c42..41e63fa2 100644
--- a/storage/job.go
+++ b/storage/job.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"fmt"
 	"time"
 
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/timer"
+	"miniflux.app/model"
+	"miniflux.app/timer"
 )
 
 const maxParsingError = 3
diff --git a/storage/session.go b/storage/session.go
index 1e6fb42d..41396848 100644
--- a/storage/session.go
+++ b/storage/session.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"database/sql"
 	"fmt"
 
-	"github.com/miniflux/miniflux/crypto"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/crypto"
+	"miniflux.app/model"
 )
 
 // CreateSession creates a new session.
diff --git a/storage/storage.go b/storage/storage.go
index 19372f07..c2aef77e 100644
--- a/storage/storage.go
+++ b/storage/storage.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"database/sql"
diff --git a/storage/timezone.go b/storage/timezone.go
index 396c7d41..714d0032 100644
--- a/storage/timezone.go
+++ b/storage/timezone.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"fmt"
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/timer"
+	"miniflux.app/timer"
 )
 
 // Timezones returns all timezones supported by the database.
diff --git a/storage/user.go b/storage/user.go
index de58c098..9d584d55 100644
--- a/storage/user.go
+++ b/storage/user.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"database/sql"
@@ -11,8 +11,8 @@ import (
 	"strings"
 	"time"
 
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/timer"
+	"miniflux.app/model"
+	"miniflux.app/timer"
 
 	"github.com/lib/pq/hstore"
 	"golang.org/x/crypto/bcrypt"
diff --git a/storage/user_session.go b/storage/user_session.go
index 990157d4..9c1381e0 100644
--- a/storage/user_session.go
+++ b/storage/user_session.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package storage
+package storage // import "miniflux.app/storage"
 
 import (
 	"database/sql"
 	"fmt"
 
-	"github.com/miniflux/miniflux/crypto"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/crypto"
+	"miniflux.app/model"
 )
 
 // UserSessions returns the list of sessions for the given user.
diff --git a/template/common.go b/template/common.go
index 665e90f7..a2523917 100644
--- a/template/common.go
+++ b/template/common.go
@@ -1,6 +1,6 @@
 // Code generated by go generate; DO NOT EDIT.
 
-package template
+package template // import "miniflux.app/template"
 
 var templateCommonMap = map[string]string{
 	"entry_pagination": `{{ define "entry_pagination" }}
diff --git a/template/dict.go b/template/dict.go
index 3056bcd5..1251bb6a 100644
--- a/template/dict.go
+++ b/template/dict.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package template
+package template // import "miniflux.app/template"
 
 import "fmt"
 
diff --git a/template/dict_test.go b/template/dict_test.go
index 8b236e04..ef4b17c1 100644
--- a/template/dict_test.go
+++ b/template/dict_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package template
+package template // import "miniflux.app/template"
 
 import (
 	"testing"
diff --git a/template/doc.go b/template/doc.go
index 5bdae47a..ead768de 100644
--- a/template/doc.go
+++ b/template/doc.go
@@ -7,4 +7,4 @@
 Package template handles template parsing and execution.
 
 */
-package template
+package template // import "miniflux.app/template"
diff --git a/template/elapsed.go b/template/elapsed.go
index 5c5d98cf..bfcc3eef 100644
--- a/template/elapsed.go
+++ b/template/elapsed.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the MIT License
 // that can be found in the LICENSE file.
 
-package template
+package template // import "miniflux.app/template"
 
 import (
 	"math"
 	"time"
 
-	"github.com/miniflux/miniflux/locale"
-	"github.com/miniflux/miniflux/timezone"
+	"miniflux.app/locale"
+	"miniflux.app/timezone"
 )
 
 // Texts to be translated if necessary.
diff --git a/template/elapsed_test.go b/template/elapsed_test.go
index b5fd4fa8..987833a6 100644
--- a/template/elapsed_test.go
+++ b/template/elapsed_test.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the MIT License
 // that can be found in the LICENSE file.
 
-package template
+package template // import "miniflux.app/template"
 
 import (
 	"fmt"
 	"testing"
 	"time"
 
-	"github.com/miniflux/miniflux/locale"
+	"miniflux.app/locale"
 )
 
 func TestElapsedTime(t *testing.T) {
diff --git a/template/engine.go b/template/engine.go
index 80555821..5a46e0ce 100644
--- a/template/engine.go
+++ b/template/engine.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package template
+package template // import "miniflux.app/template"
 
 import (
 	"bytes"
 	"html/template"
 	"time"
 
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/locale"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/config"
+	"miniflux.app/errors"
+	"miniflux.app/locale"
+	"miniflux.app/logger"
 
 	"github.com/gorilla/mux"
 )
diff --git a/template/functions.go b/template/functions.go
index 225984b9..d20b4458 100644
--- a/template/functions.go
+++ b/template/functions.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package template
+package template // import "miniflux.app/template"
 
 import (
 	"bytes"
@@ -12,11 +12,11 @@ import (
 	"time"
 
 	"github.com/gorilla/mux"
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/filter"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/url"
+	"miniflux.app/config"
+	"miniflux.app/filter"
+	"miniflux.app/http/route"
+	"miniflux.app/model"
+	"miniflux.app/url"
 )
 
 type funcMap struct {
diff --git a/template/views.go b/template/views.go
index 861dea69..2912f22a 100644
--- a/template/views.go
+++ b/template/views.go
@@ -1,6 +1,6 @@
 // Code generated by go generate; DO NOT EDIT.
 
-package template
+package template // import "miniflux.app/template"
 
 var templateViewsMap = map[string]string{
 	"about": `{{ define "title"}}{{ t "About" }}{{ end }}
diff --git a/timer/doc.go b/timer/doc.go
index 8d330aec..e27af928 100644
--- a/timer/doc.go
+++ b/timer/doc.go
@@ -7,4 +7,4 @@
 Package timer implements utility functions to measure the execution time of a block of code.
 
 */
-package timer
+package timer // import "miniflux.app/timer"
diff --git a/timer/timer.go b/timer/timer.go
index d7444ca5..8f311c3d 100644
--- a/timer/timer.go
+++ b/timer/timer.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package timer
+package timer // import "miniflux.app/timer"
 
 import (
 	"time"
 
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/logger"
 )
 
 // ExecutionTime returns the elapsed time of a block of code.
diff --git a/timezone/timezone.go b/timezone/timezone.go
index 96b7fe41..aaef655b 100644
--- a/timezone/timezone.go
+++ b/timezone/timezone.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package timezone
+package timezone // import "miniflux.app/timezone"
 
 import (
 	"time"
diff --git a/timezone/timezone_test.go b/timezone/timezone_test.go
index eb960f24..ad62343d 100644
--- a/timezone/timezone_test.go
+++ b/timezone/timezone_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package timezone
+package timezone // import "miniflux.app/timezone"
 
 import (
 	"testing"
diff --git a/ui/about.go b/ui/about.go
index 9a2bcfbc..484fdc07 100644
--- a/ui/about.go
+++ b/ui/about.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
-	"github.com/miniflux/miniflux/version"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
+	"miniflux.app/version"
 )
 
 // About shows the about page.
diff --git a/ui/bookmark_entries.go b/ui/bookmark_entries.go
index 9d64119b..8bf30950 100644
--- a/ui/bookmark_entries.go
+++ b/ui/bookmark_entries.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/model"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowStarredPage renders the page with all starred entries.
diff --git a/ui/category_create.go b/ui/category_create.go
index 7c0e0d9b..2d8c9d99 100644
--- a/ui/category_create.go
+++ b/ui/category_create.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // CreateCategory shows the form to create a new category.
diff --git a/ui/category_edit.go b/ui/category_edit.go
index e84c96d0..c61d9308 100644
--- a/ui/category_edit.go
+++ b/ui/category_edit.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // EditCategory shows the form to modify a category.
diff --git a/ui/category_entries.go b/ui/category_entries.go
index 49ff8910..bb04d8b6 100644
--- a/ui/category_entries.go
+++ b/ui/category_entries.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/model"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // CategoryEntries shows all entries for the given category.
diff --git a/ui/category_list.go b/ui/category_list.go
index dea961fb..663bafe2 100644
--- a/ui/category_list.go
+++ b/ui/category_list.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // CategoryList shows the page with all categories.
diff --git a/ui/category_remove.go b/ui/category_remove.go
index 6656ee36..6cdb0e45 100644
--- a/ui/category_remove.go
+++ b/ui/category_remove.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
 )
 
 // RemoveCategory deletes a category from the database.
diff --git a/ui/category_save.go b/ui/category_save.go
index bdf10a8f..a41e2c4f 100644
--- a/ui/category_save.go
+++ b/ui/category_save.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // SaveCategory validate and save the new category into the database.
diff --git a/ui/category_update.go b/ui/category_update.go
index bf217345..64bebe1b 100644
--- a/ui/category_update.go
+++ b/ui/category_update.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // UpdateCategory validates and updates a category.
diff --git a/ui/controller.go b/ui/controller.go
index b3e85af4..5b1bbafe 100644
--- a/ui/controller.go
+++ b/ui/controller.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"github.com/gorilla/mux"
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/locale"
-	"github.com/miniflux/miniflux/reader/feed"
-	"github.com/miniflux/miniflux/scheduler"
-	"github.com/miniflux/miniflux/storage"
-	"github.com/miniflux/miniflux/template"
+	"miniflux.app/config"
+	"miniflux.app/locale"
+	"miniflux.app/reader/feed"
+	"miniflux.app/scheduler"
+	"miniflux.app/storage"
+	"miniflux.app/template"
 )
 
 // Controller contains all HTTP handlers for the user interface.
diff --git a/ui/doc.go b/ui/doc.go
index 30154e97..2e6cc39b 100644
--- a/ui/doc.go
+++ b/ui/doc.go
@@ -7,4 +7,4 @@
 Package ui implements handlers to render to user interface.
 
 */
-package ui
+package ui  // import "miniflux.app/ui"
diff --git a/ui/entry_bookmark.go b/ui/entry_bookmark.go
index c65cccf6..a9a4a97a 100644
--- a/ui/entry_bookmark.go
+++ b/ui/entry_bookmark.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/storage"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/storage"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowStarredEntry shows a single feed entry in "starred" mode.
diff --git a/ui/entry_category.go b/ui/entry_category.go
index 163bd08b..03115a60 100644
--- a/ui/entry_category.go
+++ b/ui/entry_category.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/storage"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/storage"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowCategoryEntry shows a single feed entry in "category" mode.
diff --git a/ui/entry_feed.go b/ui/entry_feed.go
index ea68ab4e..13e54526 100644
--- a/ui/entry_feed.go
+++ b/ui/entry_feed.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/storage"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/storage"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowFeedEntry shows a single feed entry in "feed" mode.
diff --git a/ui/entry_read.go b/ui/entry_read.go
index 2f89119f..83bb108f 100644
--- a/ui/entry_read.go
+++ b/ui/entry_read.go
@@ -2,19 +2,19 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/storage"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/model"
+	"miniflux.app/storage"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowReadEntry shows a single feed entry in "history" mode.
diff --git a/ui/entry_save.go b/ui/entry_save.go
index 12ebf2a0..292b5268 100644
--- a/ui/entry_save.go
+++ b/ui/entry_save.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"errors"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/integration"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/json"
+	"miniflux.app/integration"
+	"miniflux.app/model"
 )
 
 // SaveEntry send the link to external services.
diff --git a/ui/entry_scraper.go b/ui/entry_scraper.go
index aea9b209..52e08467 100644
--- a/ui/entry_scraper.go
+++ b/ui/entry_scraper.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"errors"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/reader/sanitizer"
-	"github.com/miniflux/miniflux/reader/scraper"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/json"
+	"miniflux.app/model"
+	"miniflux.app/reader/sanitizer"
+	"miniflux.app/reader/scraper"
 )
 
 // FetchContent downloads the original HTML page and returns relevant contents.
diff --git a/ui/entry_search.go b/ui/entry_search.go
index 21fdf56a..67954b97 100644
--- a/ui/entry_search.go
+++ b/ui/entry_search.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/storage"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/storage"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowSearchEntry shows a single entry in "search" mode.
diff --git a/ui/entry_toggle_bookmark.go b/ui/entry_toggle_bookmark.go
index 9d94cd18..13de9719 100644
--- a/ui/entry_toggle_bookmark.go
+++ b/ui/entry_toggle_bookmark.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/json"
+	"miniflux.app/logger"
 )
 
 // ToggleBookmark handles Ajax request to toggle bookmark value.
diff --git a/ui/entry_unread.go b/ui/entry_unread.go
index 021df72c..784255e6 100644
--- a/ui/entry_unread.go
+++ b/ui/entry_unread.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/storage"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/storage"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowUnreadEntry shows a single feed entry in "unread" mode.
diff --git a/ui/entry_update_status.go b/ui/entry_update_status.go
index bafa0a09..4f5c114e 100644
--- a/ui/entry_update_status.go
+++ b/ui/entry_update_status.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"errors"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/json"
+	"miniflux.app/logger"
 )
 
 // UpdateEntriesStatus updates the status for a list of entries.
diff --git a/ui/feed_edit.go b/ui/feed_edit.go
index b4fb86f9..4d2aabd0 100644
--- a/ui/feed_edit.go
+++ b/ui/feed_edit.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // EditFeed shows the form to modify a subscription.
diff --git a/ui/feed_entries.go b/ui/feed_entries.go
index 7f056c5e..92aaab75 100644
--- a/ui/feed_entries.go
+++ b/ui/feed_entries.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/model"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowFeedEntries shows all entries for the given feed.
diff --git a/ui/feed_icon.go b/ui/feed_icon.go
index c05efe55..c5a74148 100644
--- a/ui/feed_icon.go
+++ b/ui/feed_icon.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 	"time"
 
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
 )
 
 // ShowIcon shows the feed icon.
diff --git a/ui/feed_list.go b/ui/feed_list.go
index 54f09f20..74877e3f 100644
--- a/ui/feed_list.go
+++ b/ui/feed_list.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowFeedsPage shows the page with all subscriptions.
diff --git a/ui/feed_refresh.go b/ui/feed_refresh.go
index eb86b042..634edfad 100644
--- a/ui/feed_refresh.go
+++ b/ui/feed_refresh.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
 )
 
 // RefreshFeed refresh a subscription and redirect to the feed entries page.
diff --git a/ui/feed_remove.go b/ui/feed_remove.go
index 23d877b6..4a7294e2 100644
--- a/ui/feed_remove.go
+++ b/ui/feed_remove.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
 )
 
 // RemoveFeed deletes a subscription from the database and redirect to the list of feeds page.
diff --git a/ui/feed_update.go b/ui/feed_update.go
index b960d117..821f850e 100644
--- a/ui/feed_update.go
+++ b/ui/feed_update.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // UpdateFeed update a subscription and redirect to the feed entries page.
diff --git a/ui/form/auth.go b/ui/form/auth.go
index c18a0bef..7635efe4 100644
--- a/ui/form/auth.go
+++ b/ui/form/auth.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package form
+package form // import "miniflux.app/ui/form"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/errors"
+	"miniflux.app/errors"
 )
 
 // AuthForm represents the authentication form.
diff --git a/ui/form/category.go b/ui/form/category.go
index 31b71968..f255cb42 100644
--- a/ui/form/category.go
+++ b/ui/form/category.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package form
+package form // import "miniflux.app/ui/form"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/errors"
+	"miniflux.app/model"
 )
 
 // CategoryForm represents a feed form in the UI
diff --git a/ui/form/feed.go b/ui/form/feed.go
index 853287a3..a8a4343b 100644
--- a/ui/form/feed.go
+++ b/ui/form/feed.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package form
+package form // import "miniflux.app/ui/form"
 
 import (
 	"net/http"
 	"strconv"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/errors"
+	"miniflux.app/model"
 )
 
 // FeedForm represents a feed form in the UI
diff --git a/ui/form/integration.go b/ui/form/integration.go
index db095aae..77e0295f 100644
--- a/ui/form/integration.go
+++ b/ui/form/integration.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package form
+package form // import "miniflux.app/ui/form"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/model"
 )
 
 // IntegrationForm represents user integration settings form.
diff --git a/ui/form/settings.go b/ui/form/settings.go
index e5f6939b..86f2d156 100644
--- a/ui/form/settings.go
+++ b/ui/form/settings.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package form
+package form // import "miniflux.app/ui/form"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/errors"
+	"miniflux.app/model"
 )
 
 // SettingsForm represents the settings form.
diff --git a/ui/form/subscription.go b/ui/form/subscription.go
index 122d25ab..a1a73b9f 100644
--- a/ui/form/subscription.go
+++ b/ui/form/subscription.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package form
+package form // import "miniflux.app/ui/form"
 
 import (
 	"net/http"
 	"strconv"
 
-	"github.com/miniflux/miniflux/errors"
+	"miniflux.app/errors"
 )
 
 // SubscriptionForm represents the subscription form.
diff --git a/ui/form/user.go b/ui/form/user.go
index 8b8346ea..404f9c7b 100644
--- a/ui/form/user.go
+++ b/ui/form/user.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package form
+package form // import "miniflux.app/ui/form"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/errors"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/errors"
+	"miniflux.app/model"
 )
 
 // UserForm represents the user form.
diff --git a/ui/history_entries.go b/ui/history_entries.go
index 2f18bbf4..3835b349 100644
--- a/ui/history_entries.go
+++ b/ui/history_entries.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/model"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowHistoryPage renders the page with all read entries.
diff --git a/ui/history_flush.go b/ui/history_flush.go
index 96b6f3de..0776f9c8 100644
--- a/ui/history_flush.go
+++ b/ui/history_flush.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
 )
 
 // FlushHistory changes all "read" items to "removed".
diff --git a/ui/integration_pocket.go b/ui/integration_pocket.go
index 02497c73..62d3ddc8 100644
--- a/ui/integration_pocket.go
+++ b/ui/integration_pocket.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/integration/pocket"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/session"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/integration/pocket"
+	"miniflux.app/logger"
+	"miniflux.app/ui/session"
 )
 
 // PocketAuthorize redirects the end-user to Pocket website to authorize the application.
diff --git a/ui/integration_show.go b/ui/integration_show.go
index b3dc6d94..c32479f4 100644
--- a/ui/integration_show.go
+++ b/ui/integration_show.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowIntegrations renders the page with all external integrations.
diff --git a/ui/integration_update.go b/ui/integration_update.go
index a1e98cb7..22c90001 100644
--- a/ui/integration_update.go
+++ b/ui/integration_update.go
@@ -2,19 +2,19 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"crypto/md5"
 	"fmt"
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
 )
 
 // UpdateIntegration updates integration settings.
diff --git a/ui/login_check.go b/ui/login_check.go
index 36fafea6..8f501b89 100644
--- a/ui/login_check.go
+++ b/ui/login_check.go
@@ -1,18 +1,18 @@
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/cookie"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/cookie"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // CheckLogin validates the username/password and redirects the user to the unread page.
diff --git a/ui/login_show.go b/ui/login_show.go
index 88e12d41..d963df50 100644
--- a/ui/login_show.go
+++ b/ui/login_show.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowLoginPage shows the login form.
diff --git a/ui/logout.go b/ui/logout.go
index 0c777cef..e610282f 100644
--- a/ui/logout.go
+++ b/ui/logout.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/cookie"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/session"
+	"miniflux.app/http/context"
+	"miniflux.app/http/cookie"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/ui/session"
 )
 
 // Logout destroy the session and redirects the user to the login page.
diff --git a/ui/oauth2.go b/ui/oauth2.go
index f1e6a4ee..3f964a62 100644
--- a/ui/oauth2.go
+++ b/ui/oauth2.go
@@ -2,11 +2,11 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
-	"github.com/miniflux/miniflux/config"
-	"github.com/miniflux/miniflux/oauth2"
+	"miniflux.app/config"
+	"miniflux.app/oauth2"
 )
 
 func getOAuth2Manager(cfg *config.Config) *oauth2.Manager {
diff --git a/ui/oauth2_callback.go b/ui/oauth2_callback.go
index a39c0ac7..4e0cd748 100644
--- a/ui/oauth2_callback.go
+++ b/ui/oauth2_callback.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/cookie"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/ui/session"
+	"miniflux.app/http/context"
+	"miniflux.app/http/cookie"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/ui/session"
 )
 
 // OAuth2Callback receives the authorization code and create a new session.
diff --git a/ui/oauth2_redirect.go b/ui/oauth2_redirect.go
index 7f472ac1..08f065d7 100644
--- a/ui/oauth2_redirect.go
+++ b/ui/oauth2_redirect.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/session"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/ui/session"
 )
 
 // OAuth2Redirect redirects the user to the consent page to ask for permission.
diff --git a/ui/oauth2_unlink.go b/ui/oauth2_unlink.go
index 4421092c..e0dbd16e 100644
--- a/ui/oauth2_unlink.go
+++ b/ui/oauth2_unlink.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/session"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/ui/session"
 )
 
 // OAuth2Unlink unlink an account from the external provider.
diff --git a/ui/opml_export.go b/ui/opml_export.go
index ec396f0d..561c6c3b 100644
--- a/ui/opml_export.go
+++ b/ui/opml_export.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/response/xml"
-	"github.com/miniflux/miniflux/reader/opml"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/response/xml"
+	"miniflux.app/reader/opml"
 )
 
 // Export generates the OPML file.
diff --git a/ui/opml_import.go b/ui/opml_import.go
index 10172729..10d09fc4 100644
--- a/ui/opml_import.go
+++ b/ui/opml_import.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // Import shows the import form.
diff --git a/ui/opml_upload.go b/ui/opml_upload.go
index 2e0a1b8c..e11eb730 100644
--- a/ui/opml_upload.go
+++ b/ui/opml_upload.go
@@ -2,19 +2,19 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/reader/opml"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/reader/opml"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // UploadOPML handles OPML file importation.
diff --git a/ui/pagination.go b/ui/pagination.go
index aaf9d12c..5fdf715a 100644
--- a/ui/pagination.go
+++ b/ui/pagination.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 const (
 	nbItemsPerPage = 100
diff --git a/ui/payload.go b/ui/payload.go
index bd65c830..76e92064 100644
--- a/ui/payload.go
+++ b/ui/payload.go
@@ -2,14 +2,14 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"encoding/json"
 	"fmt"
 	"io"
 
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/model"
 )
 
 func decodeEntryStatusPayload(r io.ReadCloser) (entryIDs []int64, status string, err error) {
diff --git a/ui/proxy.go b/ui/proxy.go
index 62364aa4..68e4db00 100644
--- a/ui/proxy.go
+++ b/ui/proxy.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"encoding/base64"
@@ -11,12 +11,12 @@ import (
 	"net/http"
 	"time"
 
-	"github.com/miniflux/miniflux/crypto"
-	"github.com/miniflux/miniflux/http/client"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/crypto"
+	"miniflux.app/http/client"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/logger"
 )
 
 // ImageProxy fetch an image from a remote server and sent it back to the browser.
diff --git a/ui/search_entries.go b/ui/search_entries.go
index 60d35c73..267176ef 100644
--- a/ui/search_entries.go
+++ b/ui/search_entries.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/model"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowSearchEntries shows all entries for the given feed.
diff --git a/ui/session/session.go b/ui/session/session.go
index 474bd187..f6a35c28 100644
--- a/ui/session/session.go
+++ b/ui/session/session.go
@@ -2,12 +2,12 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package session
+package session // import "miniflux.app/ui/session"
 
 import (
-	"github.com/miniflux/miniflux/crypto"
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/storage"
+	"miniflux.app/crypto"
+	"miniflux.app/http/context"
+	"miniflux.app/storage"
 )
 
 // Session handles session data.
diff --git a/ui/session_list.go b/ui/session_list.go
index ad296c6f..19aa13ef 100644
--- a/ui/session_list.go
+++ b/ui/session_list.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
 )
 
 // ShowSessions shows the list of active user sessions.
diff --git a/ui/session_remove.go b/ui/session_remove.go
index 1ee2a6b9..6bec368b 100644
--- a/ui/session_remove.go
+++ b/ui/session_remove.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
 )
 
 // RemoveSession remove a user session.
diff --git a/ui/settings_show.go b/ui/settings_show.go
index aa43f3eb..fd2ec4f3 100644
--- a/ui/settings_show.go
+++ b/ui/settings_show.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/locale"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/locale"
+	"miniflux.app/model"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowSettings shows the settings page.
diff --git a/ui/settings_update.go b/ui/settings_update.go
index 229042d7..b8614666 100644
--- a/ui/settings_update.go
+++ b/ui/settings_update.go
@@ -2,21 +2,21 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/locale"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/locale"
+	"miniflux.app/logger"
+	"miniflux.app/model"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // UpdateSettings update the settings.
diff --git a/ui/static/bin.go b/ui/static/bin.go
index b5250271..a740bb65 100644
--- a/ui/static/bin.go
+++ b/ui/static/bin.go
@@ -1,6 +1,6 @@
 // Code generated by go generate; DO NOT EDIT.
 
-package static
+package static // import "miniflux.app/ui/static"
 
 var Binaries = map[string]string{
 	"favicon-16.png": `iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADBQTFRF////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL92gewAAAA90Uk5TABAgMEBQYHCAkLDA0ODw5J0j2QAAADtJREFUCNdjYMADVJvME1kKGRiY7v/+/+v8fwcGhv6fsv+T/k8AMr5w/2f4v4E0BtP9v5z/J9x/hsdKAKKaKtBX2IhFAAAAAElFTkSuQmCC`,
diff --git a/ui/static/css.go b/ui/static/css.go
index c661fa24..d689e202 100644
--- a/ui/static/css.go
+++ b/ui/static/css.go
@@ -1,6 +1,6 @@
 // Code generated by go generate; DO NOT EDIT.
 
-package static
+package static // import "miniflux.app/ui/static"
 
 var Stylesheets = map[string]string{
 	"black":     `*{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{font-family:helvetica neue,Helvetica,Arial,sans-serif;text-rendering:optimizeLegibility}main{padding-left:5px;padding-right:5px;margin-bottom:30px}a{color:#36c}a:focus{outline:0;color:red;text-decoration:none;border:1px dotted #aaa}a:hover{color:#333;text-decoration:none}.header{margin-top:10px;margin-bottom:20px}.header nav ul{display:none}.header li{cursor:pointer;padding-left:10px;line-height:2.1em;font-size:1.2em;border-bottom:1px dotted #ddd}.header li:hover a{color:#888}.header a{font-size:.9em;color:#444;text-decoration:none;border:0}.header .active a{font-weight:600}.header a:hover,.header a:focus{color:#888}.page-header{margin-bottom:25px}.page-header h1{font-weight:500;border-bottom:1px dotted #ddd}.page-header ul{margin-left:25px}.page-header li{list-style-type:circle;line-height:1.8em}.logo{cursor:pointer;text-align:center}.logo a{color:#000;letter-spacing:1px}.logo a:hover{color:#396}.logo a span{color:#396}.logo a:hover span{color:#000}.search{text-align:center;display:none}.search-toggle-switch{display:none}@media(min-width:600px){body{margin:auto;max-width:750px}.header{margin-bottom:0}.logo{text-align:left;float:left;margin-right:15px;margin-left:5px}.header nav ul{display:block}.header li{display:inline;padding:0;padding-right:15px;line-height:normal;border:0;font-size:1em}.page-header ul{margin-left:0}.page-header li{display:inline;padding-right:15px}.search{text-align:right;display:block;margin-top:10px}.search-toggle-switch{display:block}.search-form{display:none}.search-toggle-switch.has-search-query{display:none}.search-form.has-search-query{display:block}}table{width:100%;border-collapse:collapse}table,th,td{border:1px solid #ddd}th,td{padding:5px;text-align:left}td{vertical-align:top}th{background:#fcfcfc}tr:hover{background-color:#f9f9f9}.column-40{width:40%}.column-25{width:25%}.column-20{width:20%}fieldset{border:1px solid #ddd;padding:8px}legend{font-weight:500;padding-left:3px;padding-right:3px}label{cursor:pointer;display:block}.radio-group{line-height:1.9em}div.radio-group label{display:inline-block}select{margin-bottom:15px}input[type=search],input[type=url],input[type=password],input[type=text]{border:1px solid #ccc;padding:3px;line-height:20px;width:250px;font-size:99%;margin-bottom:10px;margin-top:5px;-webkit-appearance:none}input[type=search]:focus,input[type=url]:focus,input[type=password]:focus,input[type=text]:focus{color:#000;border-color:rgba(82,168,236,.8);outline:0;box-shadow:0 0 8px rgba(82,168,236,.6)}input[type=checkbox]{margin-bottom:15px}::-moz-placeholder,::-ms-input-placeholder,::-webkit-input-placeholder{color:#ddd;padding-top:2px}.form-help{font-size:.9em;color:brown;margin-bottom:15px}.form-section{border-left:2px dotted #ddd;padding-left:20px;margin-left:10px}a.button{text-decoration:none}.button{display:inline-block;-webkit-appearance:none;-moz-appearance:none;font-size:1.1em;cursor:pointer;padding:3px 10px;border:1px solid;border-radius:unset}.button-primary{border-color:#3079ed;background:#4d90fe;color:#fff}.button-primary:hover,.button-primary:focus{border-color:#2f5bb7;background:#357ae8}.button-danger{border-color:#b0281a;background:#d14836;color:#fff}.button-danger:hover,.button-danger:focus{color:#fff;background:#c53727}.button:disabled{color:#ccc;background:#f7f7f7;border-color:#ccc}.buttons{margin-top:10px;margin-bottom:20px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;background-color:#fcf8e3;border:1px solid #fbeed5;border-radius:4px;overflow:auto}.alert h3{margin-top:0;margin-bottom:15px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-error a{color:#b94a48}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.panel{color:#333;background-color:#fcfcfc;border:1px solid #ddd;border-radius:5px;padding:10px;margin-bottom:15px}.panel h3{font-weight:500;margin-top:0;margin-bottom:20px}.panel ul{margin-left:30px}#modal-left{position:fixed;top:0;left:0;bottom:0;width:360px;overflow:auto;background:#f0f0f0;box-shadow:2px 0 5px 0 #ccc;padding:5px;padding-top:30px}#modal-left h3{font-weight:400;margin:0}.btn-close-modal{position:absolute;top:0;right:0;font-size:1.7em;color:#ccc;padding:0 .2em;margin:10px;text-decoration:none}.btn-close-modal:hover{color:#999}.keyboard-shortcuts li{margin-left:25px;list-style-type:square;color:#333;font-size:.95em;line-height:1.45em}.keyboard-shortcuts p{line-height:1.9em}.login-form{margin:50px auto 0;max-width:280px}.unread-counter-wrapper{font-size:.9em;font-weight:300;color:#666}.category{font-size:.75em;background-color:#fffcd7;border:1px solid #d5d458;border-radius:5px;margin-left:.25em;padding:1px .4em;white-space:nowrap}.category a{color:#555;text-decoration:none}.category a:hover,.category a:focus{color:#000}.pagination{font-size:1.1em;display:flex;align-items:center;padding-top:8px}.pagination-bottom{border-top:1px dotted #ddd;margin-bottom:15px;margin-top:50px}.pagination>div{flex:1}.pagination-next{text-align:right}.pagination-prev:before{content:"« "}.pagination-next:after{content:" »"}.pagination a{color:#333}.pagination a:hover,.pagination a:focus{text-decoration:none}.item{border:1px dotted #ddd;margin-bottom:20px;padding:5px;overflow:hidden}.item.current-item{border:3px solid #bce;padding:3px}.item-title a{text-decoration:none;font-weight:600}.item-status-read .item-title a{color:#777}.item-meta{color:#777;font-size:.8em}.item-meta a{color:#777;text-decoration:none}.item-meta a:hover,.item-meta a:focus{color:#333}.item-meta ul{margin-top:5px}.item-meta li{display:inline}.item-meta li:after{content:"|";color:#aaa}.item-meta li:last-child:after{content:""}.items{overflow-x:hidden}.hide-read-items .item-status-read{display:none}article.feed-parsing-error{background-color:#fcf8e3;border-color:#aaa}.parsing-error{font-size:.85em;margin-top:2px;color:#333}.parsing-error-count{cursor:pointer}.entry header{padding-bottom:5px;border-bottom:1px dotted #ddd}.entry header h1{font-size:2em;line-height:1.25em;margin:5px 0 30px}.entry header h1 a{text-decoration:none;color:#333}.entry header h1 a:hover,.entry header h1 a:focus{color:#666}.entry-actions{margin-bottom:20px}.entry-actions a{text-decoration:none}.entry-actions li{display:inline}.entry-actions li:not(:last-child):after{content:"|"}.entry-meta{font-size:.95em;margin:0 0 20px;color:#666;overflow-wrap:break-word}.entry-website img{vertical-align:top}.entry-website a{color:#666;vertical-align:top;text-decoration:none}.entry-website a:hover,.entry-website a:focus{text-decoration:underline}.entry-date{font-size:.65em;font-style:italic;color:#555}.entry-content{padding-top:15px;font-size:1.2em;font-weight:300;font-family:Georgia,times new roman,Times,serif;color:#555;line-height:1.4em;overflow-wrap:break-word}.entry-content h1,h2,h3,h4,h5,h6{margin-top:15px;margin-bottom:10px}.entry-content iframe,.entry-content video,.entry-content img{max-width:100%}.entry-content figure{margin-top:15px;margin-bottom:15px}.entry-content figure img{border:1px solid #000}.entry-content figcaption{font-size:.75em;text-transform:uppercase;color:#777}.entry-content p{margin-top:10px;margin-bottom:15px}.entry-content a{overflow-wrap:break-word}.entry-content a:visited{color:purple}.entry-content dt{font-weight:500;margin-top:15px;color:#555}.entry-content dd{margin-left:15px;margin-top:5px;padding-left:20px;border-left:3px solid #ddd;color:#777;font-weight:300;line-height:1.4em}.entry-content blockquote{border-left:4px solid #ddd;padding-left:25px;margin-left:20px;margin-top:20px;margin-bottom:20px;color:#888;line-height:1.4em;font-family:Georgia,serif}.entry-content q{color:purple;font-family:Georgia,serif;font-style:italic}.entry-content q:before{content:"“"}.entry-content q:after{content:"”"}.entry-content pre{padding:5px;background:#f0f0f0;border:1px solid #ddd;overflow:scroll;overflow-wrap:initial}.entry-content table{table-layout:fixed;max-width:100%}.entry-content ul,.entry-content ol{margin-left:30px}.entry-content ul{list-style-type:square}.entry-enclosures h3{font-weight:500}.entry-enclosure{border:1px dotted #ddd;padding:5px;margin-top:10px;max-width:100%}.entry-enclosure-download{font-size:.85em;overflow-wrap:break-word}.enclosure-video video,.enclosure-image img{max-width:100%}.confirm{font-weight:500;color:#ed2d04}.confirm a{color:#ed2d04}.loading{font-style:italic}.bookmarklet{border:1px dashed #ccc;border-radius:5px;padding:15px;margin:15px;text-align:center}.bookmarklet a{font-weight:600;text-decoration:none;font-size:1.2em}body{background:#222;color:#efefef}h1,h2,h3{color:#aaa}a{color:#aaa}a:focus,a:hover{color:#ddd}.header li{border-color:#333}.header a{color:#ddd;font-weight:400}.header .active a{font-weight:400;color:#9b9494}.header a:focus,.header a:hover{color:rgba(82,168,236,.85)}.page-header h1{border-color:#333}.logo a:hover span{color:#555}table,th,td{border:1px solid #555}th{background:#333;color:#aaa;font-weight:400}tr:hover{background-color:#333;color:#aaa}input[type=search],input[type=url],input[type=password],input[type=text]{border:1px solid #555;background:#333;color:#ccc}input[type=search]:focus,input[type=url]:focus,input[type=password]:focus,input[type=text]:focus{color:#efefef;border-color:rgba(82,168,236,.8);box-shadow:0 0 8px rgba(82,168,236,.6)}.button-primary{border-color:#444;background:#333;color:#efefef}.button-primary:hover,.button-primary:focus{border-color:#888;background:#555}.alert,.alert-success,.alert-error,.alert-info,.alert-normal{color:#efefef;background-color:#333;border-color:#444}.panel{background:#333;border-color:#555;color:#9b9b9b}#modal-left{background:#333;color:#efefef;box-shadow:0 0 10px rgba(82,168,236,.6)}.keyboard-shortcuts li{color:#9b9b9b}.unread-counter-wrapper{color:#bbb}.category{color:#efefef;background-color:#333;border-color:#444}.category a{color:#999}.category a:hover,.category a:focus{color:#aaa}.pagination a{color:#aaa}.pagination-bottom{border-color:#333}.item{border-color:#666;padding:4px}.item.current-item{border-width:2px;border-color:rgba(82,168,236,.8);box-shadow:0 0 8px rgba(82,168,236,.6)}.item-title a{font-weight:400}.item-status-read .item-title a{color:#666}.item-status-read .item-title a:focus,.item-status-read .item-title a:hover{color:rgba(82,168,236,.6)}.item-meta a:hover,.item-meta a:focus{color:#aaa}.item-meta li:after{color:#ddd}article.feed-parsing-error{background-color:#343434}.parsing-error{color:#eee}.entry header{border-color:#333}.entry header h1 a{color:#bbb}.entry-content,.entry-content p,ul{color:#999}.entry-content pre,.entry-content code{color:#fff;background:#555;border-color:#888}.entry-content q{color:#777}.entry-enclosure{border-color:#333}`,
diff --git a/ui/static/js.go b/ui/static/js.go
index 5c901e78..555bec6d 100644
--- a/ui/static/js.go
+++ b/ui/static/js.go
@@ -1,6 +1,6 @@
 // Code generated by go generate; DO NOT EDIT.
 
-package static
+package static // import "miniflux.app/ui/static"
 
 var Javascripts = map[string]string{
 	"app": `(function(){'use strict';class DomHelper{static isVisible(element){return element.offsetParent!==null;}
diff --git a/ui/static_app_icon.go b/ui/static_app_icon.go
index 19a823e2..6da3f1ad 100644
--- a/ui/static_app_icon.go
+++ b/ui/static_app_icon.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"encoding/base64"
 	"net/http"
 	"time"
 
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/static"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/logger"
+	"miniflux.app/ui/static"
 )
 
 // AppIcon renders application icons.
diff --git a/ui/static_favicon.go b/ui/static_favicon.go
index c68c5560..2e19c055 100644
--- a/ui/static_favicon.go
+++ b/ui/static_favicon.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"encoding/base64"
 	"net/http"
 	"time"
 
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/static"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/logger"
+	"miniflux.app/ui/static"
 )
 
 // Favicon renders the application favicon.
diff --git a/ui/static_javascript.go b/ui/static_javascript.go
index 990368b5..c52251c9 100644
--- a/ui/static_javascript.go
+++ b/ui/static_javascript.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 	"time"
 
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/static"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/static"
 )
 
 // Javascript renders application client side code.
diff --git a/ui/static_manifest.go b/ui/static_manifest.go
index 96814fe1..f8f6ac01 100644
--- a/ui/static_manifest.go
+++ b/ui/static_manifest.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/json"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/model"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/json"
+	"miniflux.app/http/route"
+	"miniflux.app/model"
 )
 
 // WebManifest renders web manifest file.
diff --git a/ui/static_stylesheet.go b/ui/static_stylesheet.go
index 37a06e05..de540fe3 100644
--- a/ui/static_stylesheet.go
+++ b/ui/static_stylesheet.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 	"time"
 
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/static"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/static"
 )
 
 // Stylesheet renders the CSS.
diff --git a/ui/subscription_add.go b/ui/subscription_add.go
index b710cf04..607f19bd 100644
--- a/ui/subscription_add.go
+++ b/ui/subscription_add.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // AddSubscription shows the form to add a new feed.
diff --git a/ui/subscription_bookmarklet.go b/ui/subscription_bookmarklet.go
index 33e82b42..23dcd520 100644
--- a/ui/subscription_bookmarklet.go
+++ b/ui/subscription_bookmarklet.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // Bookmarklet prefill the form to add a subscription from the URL provided by the bookmarklet.
diff --git a/ui/subscription_choose.go b/ui/subscription_choose.go
index e4a77fd2..65e3b6de 100644
--- a/ui/subscription_choose.go
+++ b/ui/subscription_choose.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ChooseSubscription shows a page to choose a subscription.
diff --git a/ui/subscription_submit.go b/ui/subscription_submit.go
index d7f4e616..f7a0181c 100644
--- a/ui/subscription_submit.go
+++ b/ui/subscription_submit.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/reader/subscription"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/reader/subscription"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // SubmitSubscription try to find a feed from the URL provided by the user.
diff --git a/ui/unread_entries.go b/ui/unread_entries.go
index 0d10bb6c..18fc2cd2 100644
--- a/ui/unread_entries.go
+++ b/ui/unread_entries.go
@@ -2,18 +2,18 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/model"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/model"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowUnreadPage render the page with all unread entries.
diff --git a/ui/unread_mark_all_read.go b/ui/unread_mark_all_read.go
index 2c745e49..7d475239 100644
--- a/ui/unread_mark_all_read.go
+++ b/ui/unread_mark_all_read.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
 )
 
 // MarkAllAsRead marks all unread entries as read.
diff --git a/ui/user_create.go b/ui/user_create.go
index 9c47c6ab..6b95e34e 100644
--- a/ui/user_create.go
+++ b/ui/user_create.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // CreateUser shows the user creation form.
diff --git a/ui/user_edit.go b/ui/user_edit.go
index 953d1ef4..20acdde7 100644
--- a/ui/user_edit.go
+++ b/ui/user_edit.go
@@ -2,17 +2,17 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // EditUser shows the form to edit a user.
diff --git a/ui/user_list.go b/ui/user_list.go
index f9ec35f8..57bad4e1 100644
--- a/ui/user_list.go
+++ b/ui/user_list.go
@@ -2,15 +2,15 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response/html"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // ShowUsers renders the list of users.
diff --git a/ui/user_remove.go b/ui/user_remove.go
index 0b9113b0..63d2c46a 100644
--- a/ui/user_remove.go
+++ b/ui/user_remove.go
@@ -2,16 +2,16 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
 )
 
 // RemoveUser deletes a user from the database.
diff --git a/ui/user_save.go b/ui/user_save.go
index b5638772..01d70dc4 100644
--- a/ui/user_save.go
+++ b/ui/user_save.go
@@ -2,19 +2,19 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // SaveUser validate and save the new user into the database.
diff --git a/ui/user_update.go b/ui/user_update.go
index 1b785f55..54a47a61 100644
--- a/ui/user_update.go
+++ b/ui/user_update.go
@@ -2,20 +2,20 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package ui
+package ui  // import "miniflux.app/ui"
 
 import (
 	"net/http"
 
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/http/request"
-	"github.com/miniflux/miniflux/http/response"
-	"github.com/miniflux/miniflux/http/response/html"
-	"github.com/miniflux/miniflux/http/route"
-	"github.com/miniflux/miniflux/logger"
-	"github.com/miniflux/miniflux/ui/form"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/view"
+	"miniflux.app/http/context"
+	"miniflux.app/http/request"
+	"miniflux.app/http/response"
+	"miniflux.app/http/response/html"
+	"miniflux.app/http/route"
+	"miniflux.app/logger"
+	"miniflux.app/ui/form"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/view"
 )
 
 // UpdateUser validate and update a user.
diff --git a/ui/view/view.go b/ui/view/view.go
index 2dafa08b..03517562 100644
--- a/ui/view/view.go
+++ b/ui/view/view.go
@@ -2,13 +2,13 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package view
+package view // import "miniflux.app/ui/view"
 
 import (
-	"github.com/miniflux/miniflux/http/context"
-	"github.com/miniflux/miniflux/template"
-	"github.com/miniflux/miniflux/ui/session"
-	"github.com/miniflux/miniflux/ui/static"
+	"miniflux.app/http/context"
+	"miniflux.app/template"
+	"miniflux.app/ui/session"
+	"miniflux.app/ui/static"
 )
 
 // View wraps template argument building.
diff --git a/url/doc.go b/url/doc.go
index e7ddf890..9b80dd80 100644
--- a/url/doc.go
+++ b/url/doc.go
@@ -7,4 +7,4 @@
 Package url implements a set of utility functions to parse URL.
 
 */
-package url
+package url // import "miniflux.app/url"
diff --git a/url/url.go b/url/url.go
index e5a7c62d..cc35e2f0 100644
--- a/url/url.go
+++ b/url/url.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package url
+package url // import "miniflux.app/url"
 
 import "net/url"
 import "fmt"
diff --git a/url/url_test.go b/url/url_test.go
index 12e131f3..ef333f9a 100644
--- a/url/url_test.go
+++ b/url/url_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package url
+package url // import "miniflux.app/url"
 
 import "testing"
 
diff --git a/version/doc.go b/version/doc.go
index fd58a6d9..0d594296 100644
--- a/version/doc.go
+++ b/version/doc.go
@@ -7,4 +7,4 @@
 Package version contains application and build information.
 
 */
-package version
+package version // import "miniflux.app/version"
diff --git a/version/version.go b/version/version.go
index 2b9c050d..0a9e4884 100644
--- a/version/version.go
+++ b/version/version.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by the Apache 2.0
 // license that can be found in the LICENSE file.
 
-package version
+package version // import "miniflux.app/version"
 
 // Version of the application (generated with "make build")
 var Version = "2.0.x-dev"
-- 
GitLab