diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..6a41a69 --- /dev/null +++ b/flake.lock @@ -0,0 +1,27 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1711163522, + "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..111712d --- /dev/null +++ b/flake.nix @@ -0,0 +1,27 @@ +{ + description = "Cool people homepage"; + + inputs = { + nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; + }; + + outputs = { self, nixpkgs }: + let + system = "aarch64-darwin"; + pkgs = nixpkgs.legacyPackages.${system}; + in { + devShells.${system}.default = + pkgs.mkShell { + buildInputs = with pkgs; [ + yarn + nodePackages.svelte-language-server + nodePackages.typescript-language-server + nodePackages.vscode-css-languageserver-bin + tree + ]; + shellHook = '' + exec zsh + ''; + }; + }; +} diff --git a/package.json b/package.json index c78f1b9..cf3e69c 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ }, "type": "module", "dependencies": { + "metaphone-ts": "^1.0.1", "pokedex-api": "^1.1.2" } } diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 2728fa9..87b32f0 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -6,6 +6,7 @@ "liv", "nis", "gremlin", + "ethan" ]; diff --git a/src/routes/b/ethan/+page.svelte b/src/routes/b/ethan/+page.svelte new file mode 100644 index 0000000..7262af3 --- /dev/null +++ b/src/routes/b/ethan/+page.svelte @@ -0,0 +1,158 @@ + + +
+
+
+ {#each sounds as sound} + + {/each} +
+ +
+

Hi Ethan!

+ +

+ Do you remember that one time I was working on a procedural voices + algorithm for a game project? Well, the game isn't finished and neither + is the voice algorithm but ¯\_(ツ)_/¯. +

+

+ Anyways, you helped me create a voice using your samples, so I thought + it would be fun to steal those and make you read your birthday message + to yourself! +

+
+ +
+ + +

+ {#each message.split(" ") as word, i} + {#if played_words.length >= i + 1 && playing_message == message} + + {word + " "} + + {:else} + {word + " "} + {/if} + {/each} +

+
+ +

Write your own message if you want!

+ +
+
{ + playAudio(custom_message); + }} + > + + + +
+

+ {#each custom_message.split(" ") as word, i} + {#if played_words.length >= i + 1 && playing_message == custom_message} + + {word + " "} + + {:else} + {word + " "} + {/if} + {/each} +

+
+ +
+
+ + diff --git a/static/ethan/0.mp3 b/static/ethan/0.mp3 new file mode 100644 index 0000000..b2822ed Binary files /dev/null and b/static/ethan/0.mp3 differ diff --git a/static/ethan/A.mp3 b/static/ethan/A.mp3 new file mode 100644 index 0000000..2cd5b86 Binary files /dev/null and b/static/ethan/A.mp3 differ diff --git a/static/ethan/B.mp3 b/static/ethan/B.mp3 new file mode 100644 index 0000000..89acb02 Binary files /dev/null and b/static/ethan/B.mp3 differ diff --git a/static/ethan/E.mp3 b/static/ethan/E.mp3 new file mode 100644 index 0000000..ff26915 Binary files /dev/null and b/static/ethan/E.mp3 differ diff --git a/static/ethan/F.mp3 b/static/ethan/F.mp3 new file mode 100644 index 0000000..6b9284b Binary files /dev/null and b/static/ethan/F.mp3 differ diff --git a/static/ethan/H.mp3 b/static/ethan/H.mp3 new file mode 100644 index 0000000..5e96e56 Binary files /dev/null and b/static/ethan/H.mp3 differ diff --git a/static/ethan/I.mp3 b/static/ethan/I.mp3 new file mode 100644 index 0000000..9c8020b Binary files /dev/null and b/static/ethan/I.mp3 differ diff --git a/static/ethan/J.mp3 b/static/ethan/J.mp3 new file mode 100644 index 0000000..92a2d46 Binary files /dev/null and b/static/ethan/J.mp3 differ diff --git a/static/ethan/K.mp3 b/static/ethan/K.mp3 new file mode 100644 index 0000000..df80539 Binary files /dev/null and b/static/ethan/K.mp3 differ diff --git a/static/ethan/L.mp3 b/static/ethan/L.mp3 new file mode 100644 index 0000000..91485af Binary files /dev/null and b/static/ethan/L.mp3 differ diff --git a/static/ethan/M.mp3 b/static/ethan/M.mp3 new file mode 100644 index 0000000..56e97c4 Binary files /dev/null and b/static/ethan/M.mp3 differ diff --git a/static/ethan/N.mp3 b/static/ethan/N.mp3 new file mode 100644 index 0000000..bd6e35f Binary files /dev/null and b/static/ethan/N.mp3 differ diff --git a/static/ethan/O.mp3 b/static/ethan/O.mp3 new file mode 100644 index 0000000..353edd6 Binary files /dev/null and b/static/ethan/O.mp3 differ diff --git a/static/ethan/P.mp3 b/static/ethan/P.mp3 new file mode 100644 index 0000000..0da60e0 Binary files /dev/null and b/static/ethan/P.mp3 differ diff --git a/static/ethan/R.mp3 b/static/ethan/R.mp3 new file mode 100644 index 0000000..f5210b8 Binary files /dev/null and b/static/ethan/R.mp3 differ diff --git a/static/ethan/S.mp3 b/static/ethan/S.mp3 new file mode 100644 index 0000000..1fad18b Binary files /dev/null and b/static/ethan/S.mp3 differ diff --git a/static/ethan/T.mp3 b/static/ethan/T.mp3 new file mode 100644 index 0000000..aa78723 Binary files /dev/null and b/static/ethan/T.mp3 differ diff --git a/static/ethan/U.mp3 b/static/ethan/U.mp3 new file mode 100644 index 0000000..badfffc Binary files /dev/null and b/static/ethan/U.mp3 differ diff --git a/static/ethan/W.mp3 b/static/ethan/W.mp3 new file mode 100644 index 0000000..cbd6877 Binary files /dev/null and b/static/ethan/W.mp3 differ diff --git a/static/ethan/X.mp3 b/static/ethan/X.mp3 new file mode 100644 index 0000000..ece0572 Binary files /dev/null and b/static/ethan/X.mp3 differ diff --git a/static/ethan/Y.mp3 b/static/ethan/Y.mp3 new file mode 100644 index 0000000..d606183 Binary files /dev/null and b/static/ethan/Y.mp3 differ diff --git a/yarn.lock b/yarn.lock index dc40653..2428d62 100644 --- a/yarn.lock +++ b/yarn.lock @@ -639,6 +639,11 @@ merge2@^1.3.0: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== +metaphone-ts@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/metaphone-ts/-/metaphone-ts-1.0.1.tgz#d3a9abbbbdb363bf82dcc755de7467352a8889f2" + integrity sha512-98u3uoBxvsvRdxo4jE50evb0w4qDDU56pQHJnx8pT6UMwQdYlsekTUtbcJTppk38Nbe+I53eQsELIEbV9VRgXg== + micromatch@^4.0.4: version "4.0.5" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"