mygo-cli 0.1.1
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.
- package/LICENSE +21 -0
- package/README.md +56 -0
- package/bin/mygo.js +37 -0
- package/index.d.ts +179 -0
- package/index.js +89 -0
- package/package.json +50 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 MyGo contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# mygo-cli
|
|
2
|
+
|
|
3
|
+
The `mygo` command line tool of [MyGo](https://github.com/egoist/mygo), the
|
|
4
|
+
desktop app framework for Go on the system webview, as prebuilt binaries for
|
|
5
|
+
macOS, Linux and Windows (arm64 and x64).
|
|
6
|
+
|
|
7
|
+
Create a project, which depends on mygo-cli and runs it from its scripts:
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
bunx mygo-cli init my-app # or: npx mygo-cli init my-app
|
|
11
|
+
cd my-app
|
|
12
|
+
bun run dev # mygo dev: the app with live reload
|
|
13
|
+
bun run build # mygo build: the packaged app
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
In a project that depends on mygo-cli, `bunx mygo <command>` runs its
|
|
17
|
+
`mygo`. Or install it globally with `npm install -g mygo-cli`. The commands
|
|
18
|
+
are those of the CLI installed with Go
|
|
19
|
+
(`go install github.com/egoist/mygo/cmd/mygo@latest`): `init`, `dev`,
|
|
20
|
+
`build`, `generate`, `keygen` and `doctor`. Building apps still needs
|
|
21
|
+
[Go](https://go.dev/dl/), which compiles them.
|
|
22
|
+
|
|
23
|
+
Outside such a project, run `bunx mygo-cli` or `npx mygo-cli` rather than
|
|
24
|
+
`bunx mygo`: npm has an unrelated package named mygo.
|
|
25
|
+
|
|
26
|
+
## How it works
|
|
27
|
+
|
|
28
|
+
Each platform's binary is in a package of its own, such as
|
|
29
|
+
`@egoist/mygo-cli-darwin-arm64`, which mygo-cli lists as an optional dependency:
|
|
30
|
+
package managers install only the one that matches the machine. The `mygo`
|
|
31
|
+
command then runs that binary. Set `MYGO_CLI_BINARY` to the path of another
|
|
32
|
+
build of the CLI to use it instead.
|
|
33
|
+
|
|
34
|
+
## mygo.config.ts
|
|
35
|
+
|
|
36
|
+
`defineConfig` types the configuration of a project, `mygo.config.ts`:
|
|
37
|
+
|
|
38
|
+
```ts
|
|
39
|
+
import { defineConfig } from "mygo-cli";
|
|
40
|
+
|
|
41
|
+
export default defineConfig({
|
|
42
|
+
name: "My App",
|
|
43
|
+
identifier: "com.example.myapp",
|
|
44
|
+
devUrl: "http://localhost:5173",
|
|
45
|
+
});
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## The binary
|
|
49
|
+
|
|
50
|
+
From JavaScript, `binaryPath()` returns the path of the binary:
|
|
51
|
+
|
|
52
|
+
```ts
|
|
53
|
+
import { binaryPath } from "mygo-cli";
|
|
54
|
+
|
|
55
|
+
Bun.spawnSync([binaryPath(), "generate"]);
|
|
56
|
+
```
|
package/bin/mygo.js
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// Runs the mygo binary of this platform with the arguments of this script.
|
|
3
|
+
import { spawn } from "node:child_process";
|
|
4
|
+
import { binaryPath } from "../index.js";
|
|
5
|
+
|
|
6
|
+
let bin;
|
|
7
|
+
try {
|
|
8
|
+
bin = binaryPath();
|
|
9
|
+
} catch (err) {
|
|
10
|
+
console.error(err instanceof Error ? err.message : String(err));
|
|
11
|
+
process.exit(1);
|
|
12
|
+
}
|
|
13
|
+
const args = process.argv.slice(2);
|
|
14
|
+
|
|
15
|
+
if (process.platform !== "win32" && typeof process.execve === "function") {
|
|
16
|
+
// Become the binary (Node.js 23.11 and later, Bun), so that signals and
|
|
17
|
+
// the exit status are its own.
|
|
18
|
+
process.execve(bin, [bin, ...args]);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
const child = spawn(bin, args, { stdio: "inherit" });
|
|
22
|
+
// Ctrl+C reaches the binary from the terminal too: let it decide when to
|
|
23
|
+
// exit, which mygo dev takes a moment for.
|
|
24
|
+
process.on("SIGINT", () => {});
|
|
25
|
+
process.on("SIGTERM", () => child.kill("SIGTERM"));
|
|
26
|
+
child.on("error", (err) => {
|
|
27
|
+
console.error(`mygo-cli: cannot run ${bin}: ${err.message}`);
|
|
28
|
+
process.exit(1);
|
|
29
|
+
});
|
|
30
|
+
child.on("exit", (code, signal) => {
|
|
31
|
+
if (signal) {
|
|
32
|
+
process.removeAllListeners(signal);
|
|
33
|
+
process.kill(process.pid, signal);
|
|
34
|
+
} else {
|
|
35
|
+
process.exit(code ?? 1);
|
|
36
|
+
}
|
|
37
|
+
});
|
package/index.d.ts
ADDED
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
/** The platforms with a prebuilt binary, as `${process.platform}-${process.arch}`. */
|
|
2
|
+
export declare const platforms: readonly string[];
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Returns the name of the package holding the mygo binary of a platform,
|
|
6
|
+
* by default this one. Throws for platforms without a prebuilt binary.
|
|
7
|
+
*/
|
|
8
|
+
export declare function platformPackage(platform?: string, arch?: string): string;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Returns the path of the mygo binary to run: $MYGO_CLI_BINARY when set,
|
|
12
|
+
* else the binary of this platform's package. Throws when that package is
|
|
13
|
+
* not installed.
|
|
14
|
+
*/
|
|
15
|
+
export declare function binaryPath(): string;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Types the configuration of mygo.config.ts, which takes the place of
|
|
19
|
+
* mygo.json:
|
|
20
|
+
*
|
|
21
|
+
* ```ts
|
|
22
|
+
* import { defineConfig } from "mygo-cli";
|
|
23
|
+
*
|
|
24
|
+
* export default defineConfig({
|
|
25
|
+
* name: "My App",
|
|
26
|
+
* identifier: "com.example.myapp",
|
|
27
|
+
* devUrl: "http://localhost:5173",
|
|
28
|
+
* });
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
* A function gets the command running and returns the configuration, or a
|
|
32
|
+
* promise of it.
|
|
33
|
+
*/
|
|
34
|
+
export declare function defineConfig(config: Config): Config;
|
|
35
|
+
export declare function defineConfig(config: Promise<Config>): Promise<Config>;
|
|
36
|
+
export declare function defineConfig(config: ConfigFn): ConfigFn;
|
|
37
|
+
|
|
38
|
+
/** A configuration computed for the command running. */
|
|
39
|
+
export type ConfigFn = (env: ConfigEnv) => Config | Promise<Config>;
|
|
40
|
+
|
|
41
|
+
/** What a configuration function gets. */
|
|
42
|
+
export interface ConfigEnv {
|
|
43
|
+
/** The mygo command running. */
|
|
44
|
+
command: "dev" | "build" | "generate" | "init";
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/** The configuration of a MyGo project. Every field is optional. */
|
|
48
|
+
export interface Config {
|
|
49
|
+
/** The name users see: the app, its executable, menus and installers (default: the directory's name). */
|
|
50
|
+
name?: string;
|
|
51
|
+
/**
|
|
52
|
+
* A reverse DNS name unique to the app, such as `com.example.myapp`, on
|
|
53
|
+
* which systems key preferences, permissions and registrations (default:
|
|
54
|
+
* `com.mygo.` and the name's letters and digits).
|
|
55
|
+
*/
|
|
56
|
+
identifier?: string;
|
|
57
|
+
/** The version of the app, which updates compare (default: `0.1.0`). */
|
|
58
|
+
version?: string;
|
|
59
|
+
/** The copyright notice of the app. */
|
|
60
|
+
copyright?: string;
|
|
61
|
+
/** A square PNG, ideally 1024×1024 (default: `resources/icon.png` when it exists). */
|
|
62
|
+
icon?: string;
|
|
63
|
+
/** The Go package of the app, relative to the project (default: `.`). */
|
|
64
|
+
main?: string;
|
|
65
|
+
/** Where `mygo build` writes the builds, one directory per platform (default: `dist`). */
|
|
66
|
+
out?: string;
|
|
67
|
+
/**
|
|
68
|
+
* Where `mygo generate` writes the TypeScript client (default:
|
|
69
|
+
* `src/mygo.ts` when package.json is at the project root).
|
|
70
|
+
*/
|
|
71
|
+
bindings?: string;
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* The dev server `mygo dev` points the app at, such as
|
|
75
|
+
* `http://localhost:5173`: windows load it for URLs without a scheme.
|
|
76
|
+
*/
|
|
77
|
+
devUrl?: string;
|
|
78
|
+
/** Runs in the project while `mygo dev` runs, e.g. the dev server; the app starts once `devUrl` answers. */
|
|
79
|
+
devCommand?: string;
|
|
80
|
+
/** Builds the frontend before `mygo build` compiles the app. */
|
|
81
|
+
buildCommand?: string;
|
|
82
|
+
/**
|
|
83
|
+
* The directory of the built frontend, which `mygo build` embeds into the
|
|
84
|
+
* app; `mygo dev` serves it from disk without `devUrl`.
|
|
85
|
+
*/
|
|
86
|
+
frontendDist?: string;
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Files and directories copied into the app under their base names, next
|
|
90
|
+
* to the contents of the project's resources directory.
|
|
91
|
+
*/
|
|
92
|
+
resources?: string[];
|
|
93
|
+
/** The URL schemes the app opens, such as `myapp` for `myapp://…`, which reach `App.OnOpenURL`. */
|
|
94
|
+
urlSchemes?: string[];
|
|
95
|
+
/** The types of files the app opens, which reach `App.OnOpenFile`. */
|
|
96
|
+
fileAssociations?: FileAssociation[];
|
|
97
|
+
/** Signed updates, which `mygo.Updater` installs. */
|
|
98
|
+
updates?: UpdatesConfig;
|
|
99
|
+
/** macOS packaging. */
|
|
100
|
+
macos?: MacOSConfig;
|
|
101
|
+
/** Windows packaging. */
|
|
102
|
+
windows?: WindowsConfig;
|
|
103
|
+
/** Linux packaging. */
|
|
104
|
+
linux?: LinuxConfig;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/** A type of file the app opens. */
|
|
108
|
+
export interface FileAssociation {
|
|
109
|
+
/** The file name extensions, without dots, e.g. `["md"]`. */
|
|
110
|
+
ext: string[];
|
|
111
|
+
/** What the files are, e.g. `"Markdown Document"`. */
|
|
112
|
+
name?: string;
|
|
113
|
+
/** The MIME type of the files, by which Linux identifies them (default: `application/x-<app>-<ext>`). */
|
|
114
|
+
mimeType?: string;
|
|
115
|
+
/** The app's role for the files on macOS (default: `"Editor"`). */
|
|
116
|
+
role?: "Editor" | "Viewer";
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/** Signed updates: `publicKey` and one of `github` and `url` are required. */
|
|
120
|
+
export interface UpdatesConfig {
|
|
121
|
+
/** The contents of mygo-update.pub, from `mygo keygen`. */
|
|
122
|
+
publicKey: string;
|
|
123
|
+
/** A public GitHub repository, `owner/name`, whose releases hold the updates. */
|
|
124
|
+
github?: string;
|
|
125
|
+
/** What precedes the version in release tags (default: `v`). */
|
|
126
|
+
tagPrefix?: string;
|
|
127
|
+
/** Instead of `github`, the HTTPS URL of a directory holding the updates. */
|
|
128
|
+
url?: string;
|
|
129
|
+
/** The path of mygo-update.key; `MYGO_UPDATER_PRIVATE_KEY`, holding the key, takes precedence. */
|
|
130
|
+
privateKey?: string;
|
|
131
|
+
/** A Markdown file whose `## <version>` section becomes the release notes (default: `CHANGELOG.md` when it exists). */
|
|
132
|
+
changelog?: string;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/** macOS packaging. */
|
|
136
|
+
export interface MacOSConfig {
|
|
137
|
+
/** The oldest macOS the app runs on (default: `12.0`). */
|
|
138
|
+
minimumSystemVersion?: string;
|
|
139
|
+
/** The identity that signs the app and its disk image, e.g. `Developer ID Application: Jane Doe (TEAMID)` (default: `-`, ad hoc). */
|
|
140
|
+
signingIdentity?: string;
|
|
141
|
+
/** A property list of entitlements to sign the app with. */
|
|
142
|
+
entitlements?: string;
|
|
143
|
+
/** Keys added to the app's Info.plist, replacing MyGo's, e.g. `NSCameraUsageDescription`. */
|
|
144
|
+
infoPlist?: Record<string, unknown>;
|
|
145
|
+
/** The volume name of the disk image (default: the name). */
|
|
146
|
+
dmgTitle?: string;
|
|
147
|
+
/** Notarizes production disk images. */
|
|
148
|
+
notarize?: NotarizeConfig;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/** Credentials of `xcrun notarytool store-credentials <profile>`. */
|
|
152
|
+
export interface NotarizeConfig {
|
|
153
|
+
/** The profile holding the credentials. */
|
|
154
|
+
keychainProfile: string;
|
|
155
|
+
/** The keychain holding the profile (default: the login keychain). */
|
|
156
|
+
keychain?: string;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
/** Windows packaging. */
|
|
160
|
+
export interface WindowsConfig {
|
|
161
|
+
/** A code signing certificate (.pfx); its password comes from `MYGO_WINDOWS_CERTIFICATE_PASSWORD`. */
|
|
162
|
+
certificate?: string;
|
|
163
|
+
/** Instead of `certificate`, a command that signs a file, with `%1` for its path. */
|
|
164
|
+
signCommand?: string;
|
|
165
|
+
/** The time stamping server of `certificate` (default: `http://timestamp.digicert.com`). */
|
|
166
|
+
timestampUrl?: string;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
/** Linux packaging. */
|
|
170
|
+
export interface LinuxConfig {
|
|
171
|
+
/** `Name <email>`: makes `mygo build` create a Debian package. */
|
|
172
|
+
maintainer?: string;
|
|
173
|
+
/** A short description, for the desktop entry and the package. */
|
|
174
|
+
comment?: string;
|
|
175
|
+
/** The categories of the desktop entry (default: `["Utility"]`). */
|
|
176
|
+
categories?: string[];
|
|
177
|
+
/** Debian packages the app needs besides GTK and WebKitGTK. */
|
|
178
|
+
depends?: string[];
|
|
179
|
+
}
|
package/index.js
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
// mygo-cli ships the mygo command line tool of MyGo as a prebuilt binary
|
|
2
|
+
// per platform. Each binary is in a package of its own,
|
|
3
|
+
// @egoist/mygo-cli-<os>-<cpu>,
|
|
4
|
+
// which mygo-cli lists as optional dependencies: package managers install
|
|
5
|
+
// the one matching the machine's os and cpu fields.
|
|
6
|
+
import { execFileSync } from "node:child_process";
|
|
7
|
+
import { accessSync, chmodSync, constants, existsSync, readFileSync } from "node:fs";
|
|
8
|
+
import { createRequire } from "node:module";
|
|
9
|
+
import { dirname, join } from "node:path";
|
|
10
|
+
import { fileURLToPath } from "node:url";
|
|
11
|
+
|
|
12
|
+
const require = createRequire(import.meta.url);
|
|
13
|
+
const here = dirname(fileURLToPath(import.meta.url));
|
|
14
|
+
const { version } = require("./package.json");
|
|
15
|
+
|
|
16
|
+
/** The platforms with a prebuilt binary, as `${process.platform}-${process.arch}`. */
|
|
17
|
+
export const platforms = ["darwin-arm64", "darwin-x64", "linux-arm64", "linux-x64", "win32-arm64", "win32-x64"];
|
|
18
|
+
|
|
19
|
+
const goInstall = `go install github.com/egoist/mygo/cmd/mygo@v${version}`;
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Returns the name of the package holding the mygo binary of a platform,
|
|
23
|
+
* by default this one.
|
|
24
|
+
*/
|
|
25
|
+
export function platformPackage(platform = process.platform, arch = process.arch) {
|
|
26
|
+
const target = `${platform}-${arch}`;
|
|
27
|
+
if (!platforms.includes(target)) {
|
|
28
|
+
throw new Error(`mygo-cli: there is no prebuilt mygo binary for ${target}; install the CLI with Go instead: ${goInstall}`);
|
|
29
|
+
}
|
|
30
|
+
return `@egoist/mygo-cli-${target}`;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Returns the path of the mygo binary to run: $MYGO_CLI_BINARY when set,
|
|
35
|
+
* else the binary of this platform's package. In a checkout of the MyGo
|
|
36
|
+
* repository it builds the CLI from its source first.
|
|
37
|
+
*/
|
|
38
|
+
export function binaryPath() {
|
|
39
|
+
if (process.env.MYGO_CLI_BINARY) return process.env.MYGO_CLI_BINARY;
|
|
40
|
+
const exe = process.platform === "win32" ? "mygo.exe" : "mygo";
|
|
41
|
+
const pkg = platformPackage();
|
|
42
|
+
const checkout = join(here, "..", "..");
|
|
43
|
+
if (isCheckout(checkout)) {
|
|
44
|
+
// The platform packages hold no binary until they are released: build
|
|
45
|
+
// the CLI from source, which Go's build cache makes quick.
|
|
46
|
+
const bin = join(here, "npm", `${process.platform}-${process.arch}`, "bin", exe);
|
|
47
|
+
execFileSync("go", ["build", "-o", bin, "./cmd/mygo"], { cwd: checkout, stdio: "inherit" });
|
|
48
|
+
return bin;
|
|
49
|
+
}
|
|
50
|
+
let dir;
|
|
51
|
+
try {
|
|
52
|
+
dir = dirname(require.resolve(`${pkg}/package.json`));
|
|
53
|
+
} catch {
|
|
54
|
+
throw new Error(
|
|
55
|
+
`mygo-cli: ${pkg}, the package with the mygo binary of this platform, is not installed. ` +
|
|
56
|
+
`Reinstall mygo-cli without omitting optional dependencies, or install the CLI with Go: ${goInstall}`,
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
const bin = join(dir, "bin", exe);
|
|
60
|
+
if (process.platform !== "win32") {
|
|
61
|
+
try {
|
|
62
|
+
accessSync(bin, constants.X_OK);
|
|
63
|
+
} catch {
|
|
64
|
+
// Some package managers drop the executable bit.
|
|
65
|
+
chmodSync(bin, 0o755);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return bin;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Types the configuration of mygo.config.ts: an object, or a function of the
|
|
73
|
+
* command running that returns one.
|
|
74
|
+
*/
|
|
75
|
+
export function defineConfig(config) {
|
|
76
|
+
return config;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/** Reports whether dir is a checkout of the MyGo repository. */
|
|
80
|
+
function isCheckout(dir) {
|
|
81
|
+
try {
|
|
82
|
+
return (
|
|
83
|
+
readFileSync(join(dir, "go.mod"), "utf8").startsWith("module github.com/egoist/mygo\n") &&
|
|
84
|
+
existsSync(join(dir, "cmd", "mygo", "main.go"))
|
|
85
|
+
);
|
|
86
|
+
} catch {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "mygo-cli",
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"description": "The mygo command line tool: create, develop and package MyGo desktop apps",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"mygo",
|
|
7
|
+
"desktop",
|
|
8
|
+
"webview",
|
|
9
|
+
"go",
|
|
10
|
+
"cli"
|
|
11
|
+
],
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "git+https://github.com/egoist/mygo.git",
|
|
15
|
+
"directory": "packages/cli"
|
|
16
|
+
},
|
|
17
|
+
"license": "MIT",
|
|
18
|
+
"type": "module",
|
|
19
|
+
"bin": {
|
|
20
|
+
"mygo": "bin/mygo.js"
|
|
21
|
+
},
|
|
22
|
+
"exports": {
|
|
23
|
+
".": {
|
|
24
|
+
"types": "./index.d.ts",
|
|
25
|
+
"default": "./index.js"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"types": "./index.d.ts",
|
|
29
|
+
"files": [
|
|
30
|
+
"bin",
|
|
31
|
+
"index.js",
|
|
32
|
+
"index.d.ts",
|
|
33
|
+
"README.md"
|
|
34
|
+
],
|
|
35
|
+
"engines": {
|
|
36
|
+
"node": ">=18"
|
|
37
|
+
},
|
|
38
|
+
"scripts": {
|
|
39
|
+
"binaries": "bun run build.ts",
|
|
40
|
+
"test": "bun test"
|
|
41
|
+
},
|
|
42
|
+
"optionalDependencies": {
|
|
43
|
+
"@egoist/mygo-cli-darwin-arm64": "0.1.1",
|
|
44
|
+
"@egoist/mygo-cli-darwin-x64": "0.1.1",
|
|
45
|
+
"@egoist/mygo-cli-linux-arm64": "0.1.1",
|
|
46
|
+
"@egoist/mygo-cli-linux-x64": "0.1.1",
|
|
47
|
+
"@egoist/mygo-cli-win32-arm64": "0.1.1",
|
|
48
|
+
"@egoist/mygo-cli-win32-x64": "0.1.1"
|
|
49
|
+
}
|
|
50
|
+
}
|