(rule (alias demo) (deps server/server.exe (alias_rec client)) (action (progn ; we want dune to write the file but not attach any fsevents listeners to it, ; so that watchexec can read from it without issues. ; this means no (target), no (with-stdout-to), just a bash command with stdout ; redirect inside a string (bash "date > %{project_root}/.running/built_at.txt")))) (alias (name default) (deps (alias demo))) (install (section bin) (files ("./js/node_modules/@tailwindcss/cli/dist/index.mjs" as tailwind))) (rule (target output.css) (alias client) (deps (source_tree ./) (source_tree ./server) (:config js/tailwind.config.js) (:input js/styles.css)) (action (progn (run tailwind --config=%{config} --input=%{input} --output=%{target}))))