diff --git a/manifest.dhall b/manifest.dhall
index 31bbe62c895bf86d43cd500541496a132b544484..800939329c2897a1d5de9699025c92418c5e6d3e 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -279,6 +279,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "lsp-types" "1.6.0.0"
     , callHackage "lsp" "1.6.0.0"
     , callHackage "lucid-alpine" "0.1.0.7"
+    , callHackage "lucid-aria" "0.1.0.1"
     , callHackage "lucid-svg" "0.7.1"
     , callHackage "lucid" "2.11.1"
     , callHackage "net-mqtt" "0.8.2.2"
diff --git a/overlay.nix b/overlay.nix
index 63acedb3119686988c8f956dbdb361a2693b2899..6df84c42ece180b6005db67810a9905c6a8808e4 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -323,6 +323,8 @@ final: prev: with pkgs.haskell.lib; {
 
     lucid-alpine = prev.callPackage (./pkgs/lucid-alpine.nix) { };
 
+    lucid-aria = prev.callPackage (./pkgs/lucid-aria.nix) { };
+
     lucid-svg = prev.callPackage (./pkgs/lucid-svg.nix) { };
 
     memory = prev.callPackage (./pkgs/memory.nix) { };
diff --git a/pkgs/lucid-aria.nix b/pkgs/lucid-aria.nix
new file mode 100644
index 0000000000000000000000000000000000000000..b5033e09c254d1eeab21b2f7c40498e45fca8719
--- /dev/null
+++ b/pkgs/lucid-aria.nix
@@ -0,0 +1,15 @@
+{ mkDerivation, base, hspec, HUnit, lib, lucid, text }:
+mkDerivation {
+  pname = "lucid-aria";
+  version = "0.1.0.1";
+  sha256 = "ff30430e76e1224eee79667a0d28a513fb88f223036debdd06dd1e33f650b088";
+  libraryHaskellDepends = [ base lucid text ];
+  testHaskellDepends = [ base hspec HUnit lucid ];
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  hyperlinkSource = false;
+  homepage = "https://git.sr.ht/~rycee/lucid-aria";
+  description = "Provides ARIA attributes for Lucid templates";
+  license = lib.licenses.asl20;
+}
\ No newline at end of file