# https://taskfile.dev version: '3' tasks: build:runtime:debug: dir: internal/runtime internal: true cmds: - npx esbuild desktop/main.js --bundle --sourcemap=inline --outfile=runtime_debug_desktop_{{.PLATFORM}}.js --define:DEBUG=true --define:WINDOWS={{.WINDOWS}} --define:DARWIN={{.DARWIN}} --define:LINUX={{.LINUX}} --define:PLATFORM={{.PLATFORM}} build:runtime:debug:windows: cmds: - task: build:runtime:debug vars: WINDOWS: true DARWIN: false LINUX: false PLATFORM: windows build:runtime:debug:linux: cmds: - task: build:runtime:debug vars: WINDOWS: false DARWIN: false LINUX: true PLATFORM: linux build:runtime:debug:darwin: cmds: - task: build:runtime:debug vars: WINDOWS: false DARWIN: true LINUX: false PLATFORM: darwin build:runtime:production: dir: internal/runtime internal: true cmds: - npx esbuild desktop/main.js --bundle --minify --outfile=runtime_production_desktop_{{.PLATFORM}}.js --define:DEBUG=true --define:WINDOWS={{.WINDOWS}} --define:DARWIN={{.DARWIN}} --define:LINUX={{.LINUX}} --define:PLATFORM={{.PLATFORM}} build:runtime:production:windows: cmds: - task: build:runtime:production vars: WINDOWS: true DARWIN: false LINUX: false PLATFORM: windows build:runtime:production:linux: cmds: - task: build:runtime:production vars: WINDOWS: false DARWIN: false LINUX: true PLATFORM: linux build:runtime:production:darwin: cmds: - task: build:runtime:production vars: WINDOWS: false DARWIN: true LINUX: false PLATFORM: darwin install:runtime-dev-deps: dir: internal/runtime/dev internal: true sources: - package.json cmds: - npm install install:runtime-deps: dir: internal/runtime internal: true sources: - package.json cmds: - npm install test:runtime: dir: internal/runtime cmds: - npx vitest run update:runtime: dir: internal/runtime cmds: - npx npm-check-updates -u build:runtime-all: dir: internal/runtime deps: - build:runtime:production:darwin - build:runtime:production:windows - build:runtime:production:linux - build:runtime:debug:darwin - build:runtime:debug:windows - build:runtime:debug:linux cmds: - cmd: echo "build complete" build:runtime: dir: internal/runtime deps: - install:runtime-deps cmds: - task: build:runtime-all recreate-template-dir: dir: internal/templates internal: true silent: true cmds: - rm -rf {{.TEMPLATE_DIR}} - mkdir -p {{.TEMPLATE_DIR}} generate:template: dir: internal/templates/{{.TEMPLATE}} deps: - task: recreate-template-dir vars: TEMPLATE_DIR: "{{.TEMPLATE}}" silent: true cmds: - cmd: pnpm create vite frontend --template {{.TEMPLATE}} - cmd: cp -rf ../_base/{{.TEMPLATE}}/* . ignore_error: true - cmd: cp -rf ../_base/default/* . ignore_error: true - cmd: rm frontend/public/vite.svg - cmd: go run ../../../tasks/sed/sed.go replace -dir frontend -old Vite -new Wails -ext .ts,.js,.html -ignore vite.config.js,vite.config.ts,vite-env.d.ts - cmd: go run ../../../tasks/sed/sed.go replace -dir frontend -old vite -new wails -ext .ts,.js,.html -ignore vite.config.js,vite.config.ts,vite-env.d.ts - cmd: go run ../../../tasks/sed/sed.go replace -dir frontend -old wails.svg -new wails.png -ext .ts,.js,.html -ignore vite.config.js,vite.config.ts,vite-env.d.ts - cmd: go run ../../../tasks/sed/sed.go replace -dir frontend -old wailsjs.dev -new wails.io -ext .ts,.js,.html -ignore vite.config.js,vite.config.ts,vite-env.d.ts - cmd: go run ../../../tasks/sed/sed.go replace -dir frontend -old "framework powered by Wails" -new "framework powered by Vite" -ext .ts,.js,.html,.svelte -ignore vite.config.js,vite.config.ts,vite-env.d.ts reinstall-cli: dir: cmd/wails internal: true cmds: - go install - echo "Reinstalled wails CLI" generate:events: dir: tasks/events cmds: - go run generate.go generate:templates: dir: internal/templates/ deps: - task: generate:template vars: TEMPLATE: svelte - task: generate:template vars: TEMPLATE: svelte-ts - task: generate:template vars: TEMPLATE: vue - task: generate:template vars: TEMPLATE: vue-ts - task: generate:template vars: TEMPLATE: react - task: generate:template vars: TEMPLATE: react-ts - task: generate:template vars: TEMPLATE: preact - task: generate:template vars: TEMPLATE: preact-ts - task: generate:template vars: TEMPLATE: lit - task: generate:template vars: TEMPLATE: lit-ts - task: generate:template vars: TEMPLATE: vanilla - task: generate:template vars: TEMPLATE: vanilla-ts - task: generate:template vars: TEMPLATE: react-swc - task: generate:template vars: TEMPLATE: react-swc-ts cmds: - task: reinstall-cli - echo "Generated templates"