{
  description = "Website scraping to help with stuff";

  inputs = {
    flake-utils.url = "github:numtide/flake-utils";
  };

  outputs = {
    self,
    nixpkgs,
    flake-utils,
  }:
    flake-utils.lib.eachDefaultSystem (
      system: let
        pkgs = import nixpkgs {inherit system;};
      in {
        devShell = pkgs.mkShell {
          shellHook = ''
            export PYTHONPATH="$(pwd)"
          '';

          nativeBuildInputs = with pkgs; [
            zip
            unzip

            nodePackages.typescript-language-server

            (python39.withPackages (pypkgs:
              with pypkgs; [
                beautifulsoup4
                requests

                python-lsp-server
                python-lsp-black
                pylsp-mypy
                pyls-isort
              ]))
          ];
        };
      }
    );
}
