diff --git a/.drone.yml b/.drone.yml
index 107cbf59ac..fd32ad829c 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -34,6 +34,20 @@ steps:
       GOSUMDB: sum.golang.org
       TAGS: bindata sqlite sqlite_unlock_notify
 
+  - name: checks-frontend
+    pull: always
+    image: node:12
+    commands:
+      - make checks-frontend
+    depends_on: [deps-frontend]
+
+  - name: checks-backend
+    pull: always
+    image: golang:1.14
+    commands:
+      - make checks-backend
+    depends_on: [lint-backend]
+
   - name: build-frontend
     pull: always
     image: node:10 # this step is kept at the lowest version of node that we support
@@ -49,7 +63,7 @@ steps:
       GOPROXY: off
     commands:
       - go build -mod=vendor -o gitea_no_gcc # test if build succeeds without the sqlite tag
-    depends_on: [lint-backend]
+    depends_on: [checks-backend]
 
   - name: build-backend-arm64
     pull: always
@@ -63,7 +77,7 @@ steps:
     commands:
       - make backend # test cross compile
       - rm ./gitea # clean
-    depends_on: [lint-backend]
+    depends_on: [checks-backend]
 
   - name: build-backend-386
     pull: always
@@ -75,7 +89,7 @@ steps:
       GOARCH: 386
     commands:
       - go build -mod=vendor -o gitea_linux_386 # test if compatible with 32 bit
-    depends_on: [lint-backend]
+    depends_on: [checks-backend]
 
 ---
 kind: pipeline
diff --git a/Makefile b/Makefile
index e395d942b6..d022f5cab2 100644
--- a/Makefile
+++ b/Makefile
@@ -154,13 +154,16 @@ help:
 	@echo " - build                            build everything"
 	@echo " - frontend                         build frontend files"
 	@echo " - backend                          build backend files"
+	@echo " - watch-frontend                   watch frontend files and continuously rebuild"
+	@echo " - watch-backend                    watch backend files and continuously rebuild"
 	@echo " - clean                            delete backend and integration files"
 	@echo " - clean-all                        delete backend, frontend and integration files"
 	@echo " - lint                             lint everything"
 	@echo " - lint-frontend                    lint frontend files"
 	@echo " - lint-backend                     lint backend files"
-	@echo " - watch-frontend                   watch frontend files and continuously rebuild"
-	@echo " - watch-backend                    watch backend files and continuously rebuild"
+	@echo " - check                            run various consistency checks"
+	@echo " - check-frontend                   check frontend files"
+	@echo " - check-backend                    check backend files"
 	@echo " - webpack                          build webpack files"
 	@echo " - svg                              build svg files"
 	@echo " - fomantic                         build fomantic files"
@@ -290,17 +293,26 @@ fmt-check:
 		exit 1; \
 	fi;
 
-.PHONY: lint
-lint: lint-backend lint-frontend
+.PHONY: checks
+checks: checks-frontend checks-backend
 
-.PHONY: lint-backend
-lint-backend: golangci-lint revive vet swagger-check swagger-validate test-vendor
+.PHONY: checks-frontend
+checks-frontend: svg-check
+
+.PHONY: checks-backend
+checks-backend: misspell-check test-vendor swagger-check swagger-validate
+
+.PHONY: lint
+lint: lint-frontend lint-backend
 
 .PHONY: lint-frontend
-lint-frontend: node_modules svg-check
+lint-frontend: node_modules
 	npx eslint web_src/js build webpack.config.js
 	npx stylelint web_src/less
 
+.PHONY: lint-backend
+lint-backend: golangci-lint revive vet
+
 .PHONY: watch-frontend
 watch-frontend: node-check $(FOMANTIC_DEST) node_modules
 	rm -rf $(WEBPACK_DEST_ENTRIES)