symphony-orchestrator 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,13 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <title>Personal Symphony</title>
7
+ <script type="module" crossorigin src="/assets/index-CI3z9Z5d.js"></script>
8
+ <link rel="stylesheet" crossorigin href="/assets/index-ByxrBxkB.css">
9
+ </head>
10
+ <body class="bg-zinc-950 text-zinc-100">
11
+ <main id="root"></main>
12
+ </body>
13
+ </html>
@@ -0,0 +1,46 @@
1
+ #!/usr/bin/env node
2
+
3
+ const { spawn } = require("node:child_process");
4
+ const fs = require("node:fs");
5
+ const path = require("node:path");
6
+
7
+ const packageRoot = path.resolve(__dirname, "..");
8
+ const platformKey = `${process.platform}-${process.arch}`;
9
+ const extension = process.platform === "win32" ? ".exe" : "";
10
+ const packagedCandidates = [
11
+ path.join(packageRoot, "vendor", `symphony-${platformKey}${extension}`),
12
+ path.join(__dirname, `symphony-${platformKey}${extension}`),
13
+ path.join(packageRoot, "_build", "install", "default", "bin", `symphony${extension}`)
14
+ ];
15
+
16
+ function executableCandidate() {
17
+ return packagedCandidates.find((candidate) => fs.existsSync(candidate));
18
+ }
19
+
20
+ function run(command, args, options = {}) {
21
+ const child = spawn(command, args, { stdio: "inherit", ...options });
22
+ child.on("exit", (code, signal) => {
23
+ if (signal) {
24
+ process.kill(process.pid, signal);
25
+ } else {
26
+ process.exit(code ?? 1);
27
+ }
28
+ });
29
+ child.on("error", (error) => {
30
+ console.error(`symphony: ${error.message}`);
31
+ process.exit(1);
32
+ });
33
+ }
34
+
35
+ const binary = executableCandidate();
36
+
37
+ if (binary) {
38
+ run(binary, process.argv.slice(2));
39
+ } else if (fs.existsSync(path.join(packageRoot, "dune-project"))) {
40
+ run("opam", ["exec", "--", "dune", "exec", "--root", packageRoot, "symphony", "--", ...process.argv.slice(2)]);
41
+ } else {
42
+ console.error(
43
+ `symphony: no packaged binary for ${platformKey}; reinstall a package that includes vendor/symphony-${platformKey}${extension}`
44
+ );
45
+ process.exit(1);
46
+ }
package/package.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "symphony-orchestrator",
3
+ "version": "0.1.0",
4
+ "private": false,
5
+ "bin": {
6
+ "symphony": "bin/symphony.js"
7
+ },
8
+ "files": [
9
+ "bin/",
10
+ "apps/frontend/dist/",
11
+ "vendor/",
12
+ "README.md"
13
+ ],
14
+ "packageManager": "pnpm@10.33.0",
15
+ "scripts": {
16
+ "build": "pnpm -r build && opam exec -- dune build @all",
17
+ "test": "opam exec -- dune runtest",
18
+ "prepack": "pnpm frontend:build && pnpm backend:build && node scripts/package-binary.js",
19
+ "npm:validate": "node scripts/validate-npm-export.js",
20
+ "npm:validate:release": "node scripts/validate-npm-export.js --require-all-platforms",
21
+ "backend:build": "opam exec -- dune build @all",
22
+ "backend:test": "opam exec -- dune runtest",
23
+ "backend:dev": "opam exec -- dune exec symphony -- --port 8080 --web WORKFLOW.example.md",
24
+ "frontend:dev": "pnpm --filter @personal-symphony/frontend dev",
25
+ "frontend:build": "pnpm --filter @personal-symphony/frontend build",
26
+ "frontend:test": "pnpm --filter @personal-symphony/frontend test:live"
27
+ }
28
+ }
Binary file
Binary file
Binary file
Binary file