template/README.md
2026-07-29 15:28:20 +02:00

1 KiB

Methanium Template

A pnpm React template with Vite, Tailwind CSS, Methanium UI, MTP, TanStack Router, and a base nix flake.

Development

nix develop
pnpm install
pnpm dev

Configure MTP

  1. Define the host's communication and data types in apps/web/type-maps.yaml.
  2. Set the connection options in apps/web/src/mtp-options.ts.

The reusable provider and useMTP hook are in packages/mtp/.

Nix

Build the static frontend:

nix build

To serve it with nginx on NixOS, import the included module:

{
  inputs.methanium-template.url =
    "git+https://git.methanium.net/methanium/template";

  outputs = {nixpkgs, methanium-template, ...}: {
    nixosConfigurations.host = nixpkgs.lib.nixosSystem {
      system = "x86_64-linux";
      modules = [
        methanium-template.nixosModules.default
        {
          services.methanium-template = {
            enable = true;
            hostName = "app.example.com";
            openFirewall = true;
          };
        }
      ];
    };
  };
}