{ buildGoModule, buildNpmPackage, fetchFromGitHub, lib, }: let version = "2.1.0"; src = fetchFromGitHub { owner = "openpredictionmarkets"; repo = "socialpredict"; tag = "v${version}"; hash = "sha256-aV6Z7vsqV8zxyB+v7hSyOm/jzGqR8YnhG+xLKSC9Qoo="; }; meta = { description = "Easy to Deploy Prediction Market Platform "; homepage = "https://github.com/openpredictionmarkets/socialpredict"; license = lib.licenses.mit; maintainers = with lib.maintainers; []; # [ _3442 ]; }; in { backend = buildGoModule { pname = "socialpredict-backend"; inherit src version; patches = [ ./0001-Support-POSTGRES_URL-for-overriding-the-PG-DSN.patch ]; sourceRoot = "source/backend"; vendorHash = "sha256-ah2d+gHe7HULEsqMSUwGOL4D00aY0QtZvcD3pTQp/Q0="; meta = meta // {mainProgram = "socialpredict";}; }; frontend = buildNpmPackage { pname = "socialpredict-frontend"; inherit src meta version; sourceRoot = "source/frontend"; npmDepsHash = "sha256-zn1yPtvi8DaKESMGAtqnh/66xET+QaCa1TUlpbatI70="; patches = [ ./0002-Fix-API_URL-api-v0-.-API_URL-v0.patch ]; buildPhase = '' runHook preBuild node --max_old_space_size=1024000 ./node_modules/vite/bin/vite.js build runHook postBuild ''; installPhase = '' runHook preInstall mkdir -p $out cp -r build/* $out rm $out/env-config.js.template runHook postInstall ''; }; }