1import * as Alchemy from "alchemy";
2import * as Cloudflare from "alchemy/Cloudflare";
3import * as Effect from "effect/Effect";
4
5export default Alchemy.Stack(
6 "CloudflareStatic",
7 {
8 providers: Cloudflare.providers(),
9 state: Cloudflare.state(),
10 },
11 Effect.gen(function* () {
12 //fix url when no dev command present
13 const worker = yield* Cloudflare.Website.StaticSite("Website", {
14 command: "zola build",
15 dev: {
16 command: "zola serve",
17 // url: "http://localhost:1111",
18 },
19 outdir: "public",
20 assets: {
21 notFoundHandling: "404-page",
22 },
23 });
24
25 return {
26 url: worker.url,
27 };
28 }),
29);