Mirror for https://github.com/STBoyden/go-portfolio
1install_deps:
2 pnpm install
3 mkdir -p static/js
4 mkdir -p static/css/vendor
5 cp node_modules/@highlightjs/cdn-assets/highlight.min.js static/js
6 cp node_modules/@highlightjs/cdn-assets/styles/github.min.css static/css/vendor
7 cp node_modules/@highlightjs/cdn-assets/styles/github-dark.min.css static/css/vendor
8 cp node_modules/htmx.org/dist/htmx.min.js static/js
9 cp node_modules/htmx-ext-preload/dist/preload.min.js static/js/htmx-preload.min.js
10 cp node_modules/alpinejs/dist/cdn.min.js static/js/alpinejs.min.js
11 go mod download
12
13generate: install_deps
14 go generate ./internal/pkg/routes/site
15 node_modules/.bin/tailwindcss -i ./static/css/_styles.css -o ./static/css/styles.css
16
17run_migrations:
18 go run ./cmd/migrations
19
20generate_db_types:
21 go tool github.com/sqlc-dev/sqlc/cmd/sqlc generate
22
23ci_prepare:
24 go generate ./internal/pkg/routes/site
25 go tool github.com/sqlc-dev/sqlc/cmd/sqlc generate
26
27cd_prepare: ci_prepare
28 node_modules/.bin/tailwindcss -i ./static/css/_styles.css -o ./static/css/styles.css
29
30build_docs: generate generate_db_types
31
32_docs: build_docs
33 go tool golang.org/x/pkgsite/cmd/pkgsite -http=:6060
34
35docs:
36 go tool github.com/air-verse/air -c .air.docs.toml
37
38build: generate generate_db_types
39 mkdir -p build
40 go build -o build/portfolio ./cmd/main
41
42cd_build: cd_prepare
43 go build -tags=ci -o build/portfolio ./cmd/main
44
45lint: generate
46 go tool -modfile=golangci-lint.mod github.com/golangci/golangci-lint/cmd/golangci-lint run
47
48lint_fix: generate
49 go tool -modfile=golangci-lint.mod github.com/golangci/golangci-lint/cmd/golangci-lint run --fix
50
51dev:
52 go tool github.com/air-verse/air
53
54clean:
55 rm -rf build
56 rm -rf node_modules
57
58run: build
59 ./build/portfolio
60
61[confirm("Are you sure you want to manually deploy?")]
62deploy: lint
63 fly deploy