diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..af0559a
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,16 @@
+image: elixir:1.14.1
+
+pages:
+ script:
+ - mix local.hex --force
+ - mix local.rebar --force
+ - mix deps.get
+ - mix esbuild.install --if-missing
+ - mix tailwind.install --if-missing
+ - mix tree_sitter.install --if-missing
+ - mix assets.build
+ - mix pre_dot_hn.build
+ - cp -r priv/static/ public
+ artifacts:
+ paths:
+ - public
diff --git a/assets/css/app.css b/assets/css/app.css
index bf44772..342628f 100644
--- a/assets/css/app.css
+++ b/assets/css/app.css
@@ -34,6 +34,7 @@ nav a {
}
p {
+ @apply font-sans;
margin-bottom: var(--vspace);
}
@@ -42,12 +43,14 @@ a:hover {
}
ul li {
+ @apply font-sans;
list-style-type: "* ";
margin-left: 3ch;
margin-bottom: var(--vspace);
}
ol li {
+ @apply font-sans;
list-style-type: decimal;
margin-left: 3ch;
margin-bottom: var(--vspace);
@@ -93,7 +96,7 @@ code.inline {
/* Web Fonts */
-@font-face {
+/* @font-face {
font-family: "JetBrainsMono";
src: url("/fonts/JetBrainsMono-VariableFont_wght.ttf");
font-style: normal;
@@ -104,3 +107,39 @@ code.inline {
src: url("/fonts/JetBrainsMono-Italic-VariableFont_wght.ttf");
font-style: italic;
}
+
+@font-face {
+ font-family: "InclusiveSans";
+ src: url("/fonts/InclusiveSans-Regular.ttf");
+ font-style: normal;
+}
+
+@font-face {
+ font-family: "InclusiveSans";
+ src: url("/fonts/InclusiveSans-Italic.ttf");
+ font-style: italic;
+} */
+
+@font-face {
+ font-family: "iAWriterDuo";
+ src: url("/fonts/iAWriterDuoV.ttf");
+ font-style: normal;
+}
+
+@font-face {
+ font-family: "iAWriterDuo";
+ src: url("/fonts/iAWriterDuoV-Italic.ttf");
+ font-style: italic;
+}
+
+@font-face {
+ font-family: "iAWriterMono";
+ src: url("/fonts/iAWriterMonoV.ttf");
+ font-style: normal;
+}
+
+@font-face {
+ font-family: "iAWriterMono";
+ src: url("/fonts/iAWriterMonoV-Italic.ttf");
+ font-style: italic;
+}
diff --git a/assets/tailwind.config.js b/assets/tailwind.config.js
index 633faeb..0b9e510 100644
--- a/assets/tailwind.config.js
+++ b/assets/tailwind.config.js
@@ -40,7 +40,7 @@ module.exports = {
extend: {
fontFamily: {
mono: [
- 'JetBrainsMono',
+ 'iAWriterMono',
'ui-monospace',
'SFMono-Regular',
'Menlo',
@@ -50,6 +50,16 @@ module.exports = {
'"Courier New"',
'monospace',
],
+ sans: [
+ 'iAWriterDuo',
+ 'ui-sans-serif',
+ 'system-ui',
+ 'sans-serif',
+ '"Apple Color Emoji"',
+ '"Segoe UI Emoji"',
+ '"Segoe UI Symbol"',
+ '"Noto Color Emoji"',
+ ]
}
}
},
diff --git a/lib/pre_dot_hn.ex b/lib/pre_dot_hn.ex
index 9eb581d..46bacf2 100644
--- a/lib/pre_dot_hn.ex
+++ b/lib/pre_dot_hn.ex
@@ -173,6 +173,7 @@ defmodule PreDotHn do
<% end %>
+
diff --git a/mix.exs b/mix.exs
index 107fee3..e6c92d1 100644
--- a/mix.exs
+++ b/mix.exs
@@ -27,7 +27,7 @@ defmodule PreDotHn.MixProject do
{:tailwind, "~> 0.2.1"},
{:phoenix_live_view, "~> 0.19.5"},
{:rustler, "~> 0.29.1"},
- {:tree_sitter, path: "../tree_sitter"},
+ {:tree_sitter, "~> 0.0.1"},
{:earmark_parser, "~> 1.4"},
{:earmark, "~> 1.4"},
{:floki, "~> 0.34.3"},
@@ -40,6 +40,7 @@ defmodule PreDotHn.MixProject do
def aliases() do
[
+ "assets.build": ["esbuild default --minify", "tailwind default --minify"],
serve: ["do esbuild default --serve + tailwind default --watch"]
]
end
diff --git a/mix.lock b/mix.lock
index 937435c..29e773a 100644
--- a/mix.lock
+++ b/mix.lock
@@ -19,6 +19,7 @@
"tailwind": {:hex, :tailwind, "0.2.1", "83d8eadbe71a8e8f67861fe7f8d51658ecfb258387123afe4d9dc194eddc36b0", [:mix], [{:castore, ">= 0.0.0", [hex: :castore, repo: "hexpm", optional: false]}], "hexpm", "e8a13f6107c95f73e58ed1b4221744e1eb5a093cd1da244432067e19c8c9a277"},
"telemetry": {:hex, :telemetry, "1.2.1", "68fdfe8d8f05a8428483a97d7aab2f268aaff24b49e0f599faa091f1d4e7f61c", [:rebar3], [], "hexpm", "dad9ce9d8effc621708f99eac538ef1cbe05d6a874dd741de2e689c47feafed5"},
"toml": {:hex, :toml, "0.7.0", "fbcd773caa937d0c7a02c301a1feea25612720ac3fa1ccb8bfd9d30d822911de", [:mix], [], "hexpm", "0690246a2478c1defd100b0c9b89b4ea280a22be9a7b313a8a058a2408a2fa70"},
+ "tree_sitter": {:hex, :tree_sitter, "0.0.1", "bab055ff4bdf8cf54400ed5613a8ec5149719604be00fb277d564feb2ade3113", [:mix], [{:castore, ">= 0.0.0", [hex: :castore, repo: "hexpm", optional: false]}, {:yaml_elixir, "~> 2.9", [hex: :yaml_elixir, repo: "hexpm", optional: false]}], "hexpm", "2e455faabc07d75c874ba79f44a62c96c71364bade067ed9aa2704efaa1ff9e6"},
"websock": {:hex, :websock, "0.5.3", "2f69a6ebe810328555b6fe5c831a851f485e303a7c8ce6c5f675abeb20ebdadc", [:mix], [], "hexpm", "6105453d7fac22c712ad66fab1d45abdf049868f253cf719b625151460b8b453"},
"websock_adapter": {:hex, :websock_adapter, "0.5.4", "7af8408e7ed9d56578539594d1ee7d8461e2dd5c3f57b0f2a5352d610ddde757", [:mix], [{:bandit, ">= 0.6.0", [hex: :bandit, repo: "hexpm", optional: true]}, {:plug, "~> 1.14", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 2.6", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:websock, "~> 0.5", [hex: :websock, repo: "hexpm", optional: false]}], "hexpm", "d2c238c79c52cbe223fcdae22ca0bb5007a735b9e933870e241fce66afb4f4ab"},
"yamerl": {:hex, :yamerl, "0.10.0", "4ff81fee2f1f6a46f1700c0d880b24d193ddb74bd14ef42cb0bcf46e81ef2f8e", [:rebar3], [], "hexpm", "346adb2963f1051dc837a2364e4acf6eb7d80097c0f53cbdc3046ec8ec4b4e6e"},