[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/devhttps/frontend/master/makefile [Back]  [Original]

# Targets marked '# PRIVATE' will be hidden when running `make help`.
# They're helper targets that you probably only need to know about
# if you've got as far as reading the makefile.

# Lists common tasks.
# Also the default task (`make` === `make help`).
help:
	@node tools/messages.js describeMakefile

# Lists *all* targets.
list: # PRIVATE
	@node tools/messages.js describeMakefile --all


# *********************** SETUP ***********************

# Install all 3rd party dependencies.
install: check-node-env
	@yarn -s install

# Remove all 3rd party dependencies.
uninstall: # PRIVATE
	@rm -rf node_modules
	@rm -rf ui/node_modules
	@rm -rf dev/eslint-plugin-guardian-frontend/node_modules
	@rm -rf tools/amp-validation/node_modules
	@echo 'All 3rd party dependencies have been uninstalled.'

# Reinstall all 3rd party dependencies from scratch.
# The nuclear option if `make install` hasn't worked.
reinstall: uninstall install

# Make sure the local node env is up to scratch.
check-node-env: # PRIVATE
	@./tools/check-node-env.js

# *********************** DEVELOPMENT ***********************

# Watch and automatically compile/reload all JS/SCSS.
# Uses port 3000 insead of 9000.
watch: compile-watch
	@./dev/watch.js

# *********************** ASSETS ***********************

# Compile all assets in production.
compile: install
	@NODE_ENV=production ./tools/task-runner/runner compile

# Compile all assets in development.
compile-dev: install
	@./tools/task-runner/runner compile --dev

# Compile atom-specific JS
compile-atoms: install
	@./tools/task-runner/runner compile/javascript/index.atoms

# Compile all assets for watch.
compile-watch: install # PRIVATE
	@./tools/task-runner/runner compile/index.watch

compile-javascript: install # PRIVATE
	@./tools/task-runner/runner compile/javascript

compile-javascript-dev: install # PRIVATE
	@./tools/task-runner/runner compile/javascript --dev

compile-css: install # PRIVATE
	@./tools/task-runner/runner compile/css

compile-images: install # PRIVATE
	@./tools/task-runner/runner compile/images

compile-svgs: install # PRIVATE
	@./tools/task-runner/runner compile/inline-svgs

compile-fonts: install # PRIVATE
	@./tools/task-runner/runner compile/fonts

# *********************** CHECKS ***********************

# Run the JS test suite.
test: install
	@./tools/task-runner/runner test/javascript --verbose

# Run the modern JS test suite in watch mode.
test-watch: install
	@yarn test -- --watch --coverage

# Check the JS test suite coverage.
coverage: install
	@./tools/task-runner/runner test/javascript/coverage --stdout

# Validate all assets.
validate: install
	@./tools/task-runner/runner validate --verbose

# Validate all SCSS.
validate-sass: install # PRIVATE
	@./tools/task-runner/runner validate/sass --verbose

# Validate all JS.
validate-javascript: install # PRIVATE
	@./tools/task-runner/runner validate/javascript

# Fix JS linting errors.
fix: install
	@./tools/task-runner/runner validate/javascript-fix

# Fix committed JS linting errors.
fix-commits: install
	@./tools/task-runner/runner validate-head/javascript-fix


validate-amp: install # PRIVATE
	@cd tools/amp-validation && npm install && NODE_ENV=dev node index.js

validate-a11y: install # PRIVATE
	@./tools/task-runner/runner validate/a11y

# Take screenshots for a visual check.
screenshots: install
	@./tools/task-runner/runner screenshot

Web Proxy Viewer  |  New URL  |  Original Page