[env] # Set BROWSER="firefox" if not already defined. BROWSER = { condition = { env_not_set = ["BROWSER"] }, value = "firefox" } # Start a browser instance that will reload the extension when changes are made. [tasks.dev] clear = true env = { NODE_ENV = "development" } dependencies = ["build"] command = "pnpm" args = ["conc", "-c=auto", "-k", "makers watch", "makers run"] # Build the WebExtension. [tasks.build] clear = true command = "pnpm" args = ["tsx", "build.ts"] # Remove build directories. [tasks.clean] clear = true command = "pnpm" args = ["trash", "build/${BROWSER}"] # Re-build and pack the WebExtension for publishing. [tasks.pack] clear = true dependencies = ["clean", "build"] command = "pnpm" args = ["web-ext", "build", "--config=build/web-ext-${BROWSER}.json"] # Start a browser instance with the extension loaded. [tasks.run] clear = true command = "pnpm" args = ["web-ext", "run", "--config=build/web-ext-${BROWSER}.json"] # Alias for `WATCH=true makers build`. [tasks.watch] env = { WATCH="true" } extend = "build"