{
  lib,
  buildNpmPackage,
  fetchFromGitHub,
}:
buildNpmPackage rec {
  pname = "phanpy";
  version = "2024.04.19.5145730";

  src = fetchFromGitHub {
    owner = "cheeaun";
    repo = pname;
    rev = "${version}";
    hash = "sha256-+/VtvDYBRy5Y6ZmqNH3id4hph1p3323G2zeE1bqfT1Y=";
  };

  npmDepsHash = "sha256-9tcZ3jQg+mHeI2K/dNFs0C1k7CfHwxbx+/+I8pdO/wQ=";

  # The prepack script runs the build script, which we'd rather do in the build phase.
  npmPackFlags = ["--ignore-scripts"];

  installPhase = ''
    export PHANPY_CLIENT_NAME="Phanpy on gladtherescake.eu"
    export PHANPY_WEBSITE="phanpy.gladtherescake.eu"
    mkdir $out
    npm run build
    cp -r dist/* $out
  '';

  meta = with lib; {
    description = "Minimalistic opinionated Mastodon web client.";
    homepage = "https://phanpy.social/";
    license = licenses.mit;
    maintainers = with maintainers; [Lillian-Violet];
  };
}