๐Ÿ’ฏ A collection of Gleam libraries, projects, and resources

Check README is up to date on CI

+2 -1
.github/workflows/test.yml
··· 15 15 - uses: erlef/setup-beam@v1 16 16 with: 17 17 otp-version: "26.0.2" 18 - gleam-version: "0.34.1" 18 + gleam-version: "1.1.0" 19 19 rebar3-version: "3" 20 20 # elixir-version: "1.15.4" 21 21 - run: gleam deps download 22 22 - run: gleam test 23 23 - run: gleam format --check src test 24 + - run: gleam run check
+1
README.md
··· 227 227 228 228 ### Numbers 229 229 230 + - [bigi](https://gitlab.com/Nicd/bigi) - [๐Ÿ“š](https://hexdocs.pm/bigi/) - Arbitrary precision integer arithmetic for Gleam 230 231 - [gleam_community_maths](https://github.com/gleam-community/maths) - [๐Ÿ“š](https://hexdocs.pm/gleam_community_maths/) - A basic maths library 231 232 232 233 ### Parsing
+1
gleam.toml
··· 19 19 tom = "~> 0.3" 20 20 sqlight = "~> 0.9" 21 21 gleam_http = "~> 3.5" 22 + argv = ">= 1.0.2 and < 2.0.0" 22 23 23 24 [dev-dependencies] 24 25 gleeunit = "~> 1.0"
+3 -1
manifest.toml
··· 2 2 # You typically do not need to edit this file 3 3 4 4 packages = [ 5 + { name = "argv", version = "1.0.2", build_tools = ["gleam"], requirements = [], otp_app = "argv", source = "hex", outer_checksum = "BA1FF0929525DEBA1CE67256E5ADF77A7CDDFE729E3E3F57A5BDCAA031DED09D" }, 5 6 { name = "esqlite", version = "0.8.6", build_tools = ["rebar3"], requirements = [], otp_app = "esqlite", source = "hex", outer_checksum = "607E45F4DA42601D8F530979417F57A4CD629AB49085891849302057E68EA188" }, 6 7 { name = "gleam_http", version = "3.5.3", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_http", source = "hex", outer_checksum = "C2FC3322203B16F897C1818D9810F5DEFCE347F0751F3B44421E1261277A7373" }, 7 8 { name = "gleam_httpc", version = "2.1.2", build_tools = ["gleam"], requirements = ["gleam_http", "gleam_stdlib"], otp_app = "gleam_httpc", source = "hex", outer_checksum = "ACD05CA3BAC7780DF5FFAE334621FD199D1B490FAF6ECDFF74316CAA61CE88E6" }, ··· 13 14 ] 14 15 15 16 [requirements] 16 - gleam_http = { version = "~> 3.5"} 17 + argv = { version = ">= 1.0.2 and < 2.0.0"} 18 + gleam_http = { version = "~> 3.5" } 17 19 gleam_httpc = { version = "~> 2.1" } 18 20 gleam_stdlib = { version = "~> 0.34 or ~> 1.0" } 19 21 gleeunit = { version = "~> 1.0" }
+1 -1
packages/bigi.toml
··· 2 2 description = "Arbitrary precision integer arithmetic for Gleam" 3 3 docs_url = "https://hexdocs.pm/bigi/" 4 4 repo_url = "https://gitlab.com/Nicd/bigi" 5 - category = "" 5 + category = "Numbers"
+5
packages/cake.toml
··· 1 + name = "cake" 2 + description = "An SQL query builder for Gleam targeting Postgres and SQLite - a preview" 3 + docs_url = "https://hexdocs.pm/cake/" 4 + repo_url = "https://github.com/inoas/gleam-cake" 5 + category = ""
+5
packages/event_hub.toml
··· 1 + name = "event_hub" 2 + description = "Event-Hub is a Gleam library that provides simple hubs with publishers and subscribers for event-driven observers. It supports asynchronous message handling and event notifications, decoupling components efficiently. It works on Erlang and JavaScript." 3 + docs_url = "https://hexdocs.pm/event_hub/" 4 + repo_url = "https://github.com/yerTools/event_hub" 5 + category = ""
+5
packages/geny.toml
··· 1 + name = "geny" 2 + description = "Error handling library for gleam language" 3 + docs_url = "https://hexdocs.pm/geny/" 4 + repo_url = "https://github.com/jedsek/geny" 5 + category = ""
+5
packages/hardcache.toml
··· 1 + name = "hardcache" 2 + description = "Gleam module that provides primitives for caching key-value pairs in files and using files as caches." 3 + docs_url = "https://hexdocs.pm/hardcache/" 4 + repo_url = "https://github.com/katekyy/hardcache" 5 + category = ""
+5
packages/html_lustre_converter.toml
··· 1 + name = "html_lustre_converter" 2 + description = "Convert regular HTML markup into Lustre syntax" 3 + docs_url = "https://hexdocs.pm/html_lustre_converter/" 4 + repo_url = "https://github.com/lpil/html_lustre_converter" 5 + category = ""
+5
packages/palindrome.toml
··· 1 + name = "palindrome" 2 + description = "A simple Gleam project that checks if a string is a palindrome." 3 + docs_url = "https://hexdocs.pm/palindrome/" 4 + repo_url = "https://github.com/nkpgardose/palindrome" 5 + category = ""
+5
packages/ygleam.toml
··· 1 + name = "ygleam" 2 + description = "Yjs Gleam Bindings" 3 + docs_url = "https://hexdocs.pm/ygleam/" 4 + repo_url = "https://github.com/weedonandscott/gleam_yjs" 5 + category = ""
+17 -2
src/awesome.gleam
··· 1 + import argv 1 2 import gleam/bool 2 3 import gleam/dict 3 4 import gleam/dynamic.{type Dynamic} ··· 146 147 * [r/gleamlang](https://reddit.com/r/gleamlang/) 147 148 " 148 149 149 - io.println("Writing REAME") 150 - let assert Ok(_) = simplifile.write("README.md", markdown) 150 + case argv.load().arguments == ["check"] { 151 + True -> { 152 + io.println("Checking README") 153 + let assert Ok(current) = simplifile.read("README.md") 154 + case current == markdown { 155 + True -> Nil 156 + False -> 157 + panic as "README is out of sync with packages/*.toml config files" 158 + } 159 + } 160 + False -> { 161 + io.println("Writing README") 162 + let assert Ok(_) = simplifile.write("README.md", markdown) 163 + Nil 164 + } 165 + } 151 166 152 167 io.println("Done! โœจ") 153 168 }