diff --git a/.gitignore b/.gitignore
index 828856f4c..31800016d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,5 +19,7 @@ node_modules/
 
 .tx/
 
+build/
+dist/
 local/
 searx.egg-info/
diff --git a/Makefile b/Makefile
index 77ffe489f..dae8fce31 100644
--- a/Makefile
+++ b/Makefile
@@ -1,16 +1,20 @@
 # -*- coding: utf-8; mode: makefile-gmake -*-
 
 PYOBJECTS = searx
+DOC       = docs
 PY_SETUP_EXTRAS ?= \[test\]
 
 include utils/makefile.include
 include utils/makefile.python
+include utils/makefile.sphinx
 
 all: clean install
 
 PHONY += help
 help:
 	@echo  '  test      - run developer tests'
+	@echo  '  docs      - build documentation'
+	@echo  '  docs-live - autobuild HTML documentation while editing'
 	@echo  '  run       - run developer instance'
 	@echo  '  install   - developer install (./local)'
 	@echo  '  uninstall - uninstall (./local)'
@@ -40,6 +44,18 @@ run:  pyenvinstall
 	) &
 	$(PY_ENV)/bin/python ./searx/webapp.py
 
+# docs
+# ----
+
+PHONY += docs
+docs:  pyenvinstall sphinx-doc
+	$(call cmd,sphinx,html,docs,docs)
+
+PHONY += docs-live
+docs-live:  pyenvinstall sphinx-live
+	$(call cmd,sphinx_autobuild,html,docs,docs)
+
+
 # test
 # ----
 
diff --git a/utils/makefile.python b/utils/makefile.python
index 228eb3f80..4aa9d6b49 100644
--- a/utils/makefile.python
+++ b/utils/makefile.python
@@ -155,7 +155,7 @@ quiet_cmd_virtualenv  = PYENV     usage: $ source ./$@/bin/activate
 	if [ ! -d "./$(PY_ENV)" ];then                                  \
 		$(VIRTUALENV) $(VIRTUALENV_VERBOSE) $(VTENV_OPTS) $2;   \
 	else                                                            \
-		echo "  PYENV     using virtualenv from $2";            \
+		echo "PYENV     using virtualenv from $2";              \
         fi
 
 # $2 path to lint
@@ -263,7 +263,7 @@ pydebug: $(PY_ENV)
 # install / uninstall python objects into virtualenv (PYENV)
 pyenv-install: $(PY_ENV)
 	@$(PY_ENV_BIN)/pip $(PIP_VERBOSE) install -e .
-	@echo "  ACTIVATE  $(call normpath,$(PY_ENV_ACT)) "
+	@echo "ACTIVATE  $(call normpath,$(PY_ENV_ACT)) "
 
 pyenv-uninstall: $(PY_ENV)
 	@$(PY_ENV_BIN)/pip $(PIP_VERBOSE) uninstall --yes .