···11name = "webbed_site"
22version = "1.0.0"
3344+target= "javascript"
55+66+[javascript]
77+runtime = "deno"
88+99+[javascript.deno]
1010+allow_env = true
1111+allow_read = true
1212+allow_write = true
1313+allow_run = true
1414+415# Fill out these fields if you intend to generate HTML documentation or publish
516# your project to the Hex package manager.
617#
···2233shellout = ">= 1.7.0 and < 2.0.0"
2334jot = ">= 8.0.0 and < 9.0.0"
2435tom = ">= 2.0.0 and < 3.0.0"
3636+gleam_javascript = ">= 1.0.0 and < 2.0.0"
+2
manifest.toml
···77 { name = "filepath", version = "1.1.2", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "filepath", source = "hex", outer_checksum = "B06A9AF0BF10E51401D64B98E4B627F1D2E48C154967DA7AF4D0914780A6D40A" },
88 { name = "gleam_crypto", version = "1.5.1", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_crypto", source = "hex", outer_checksum = "50774BAFFF1144E7872814C566C5D653D83A3EBF23ACC3156B757A1B6819086E" },
99 { name = "gleam_erlang", version = "1.3.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_erlang", source = "hex", outer_checksum = "1124AD3AA21143E5AF0FC5CF3D9529F6DB8CA03E43A55711B60B6B7B3874375C" },
1010+ { name = "gleam_javascript", version = "1.0.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_javascript", source = "hex", outer_checksum = "EF6C77A506F026C6FB37941889477CD5E4234FCD4337FF0E9384E297CB8F97EB" },
1011 { name = "gleam_json", version = "3.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_json", source = "hex", outer_checksum = "44FDAA8847BE8FC48CA7A1C089706BD54BADCC4C45B237A992EDDF9F2CDB2836" },
1112 { name = "gleam_otp", version = "1.2.0", build_tools = ["gleam"], requirements = ["gleam_erlang", "gleam_stdlib"], otp_app = "gleam_otp", source = "hex", outer_checksum = "BA6A294E295E428EC1562DC1C11EA7530DCB981E8359134BEABC8493B7B2258E" },
1213 { name = "gleam_regexp", version = "1.1.1", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_regexp", source = "hex", outer_checksum = "9C215C6CA84A5B35BB934A9B61A9A306EC743153BE2B0425A0D032E477B062A9" },
···2425]
25262627[requirements]
2828+gleam_javascript = { version = ">= 1.0.0 and < 2.0.0" }
2729gleam_stdlib = { version = ">= 0.44.0 and < 2.0.0" }
2830gleam_time = { version = ">= 1.6.0 and < 2.0.0" }
2931jot = { version = ">= 8.0.0 and < 9.0.0" }
+6
posts/2026-01-03-initial-commit.djot
···55# initial commit
6677This post is gonna detail how I made this site, but for now it's just a placeholder.
88+99+```css
1010+main {
1111+ font-family: Myna;
1212+}
1313+```
···11import blog
22import gleam/dict
33+import gleam/javascript/promise
34import gleam/list
45import lustre/ssg
56import meta
67import page
7889pub fn main() {
99- let assert Ok(meta) = meta.fetch() as "Failed to fetch site meta"
1010+ use meta <- promise.map(meta.fetch())
1111+ let assert Ok(meta) = meta as "Failed to fetch site meta"
1012 let posts = blog.posts()
1113 let info = page.SiteInfo(posts:, meta:)
1214