From aeb9ecadf80fd50290571071311877b39c80e962 Mon Sep 17 00:00:00 2001 From: Ruben Beltran del Rio Date: Tue, 23 Dec 2025 22:14:44 +0100 Subject: Initial implementation --- Makefile | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 Makefile (limited to 'Makefile') diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..041e705 --- /dev/null +++ b/Makefile @@ -0,0 +1,53 @@ +WIKIDIR ?= ../../vendor/wiki +default: wiki + +prepare: + @pnpm install + @cd $(WIKIDIR) && pnpm install + +# Code Quality + +test: + node --test + +coverage: + node --test --experimental-test-coverage + +lint: prepare + @pnpm exec eslint ./src --fix + +format: lint + @pnpm exec prettier ./src --write + +# Development + +build: prepare + @pnpx esbuild src/client.js --bundle --outfile=client/security.js + +watch: + @nodemon -e js,html,css -i client/security.js --exec make build + +wiki: build + @cd $(WIKIDIR) && node index.js --data ./data --config ./config.json + +link: + @pnpm link + @cd $(WIKIDIR) && pnpm link wiki-security-oidc + +# Deployment + +release: + @pnpm publish + +# Auditing + +sbom: + @trivy fs -q --format cyclonedx --scanners vuln,license --output sbom.json . + +vulnerabilities: sbom + @sbom-utility vulnerability list -q --input-file sbom.json + +licenses: sbom + @sbom-utility license list -q --input-file sbom.json + +.PHONY: default prepare test coverage format lint release ci link wiki build watch -- cgit