shipthis 0.0.25 → 0.0.27

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/README.md CHANGED
@@ -2,11 +2,57 @@
2
2
 
3
3
  ## Introduction
4
4
 
5
- ShipThis is a platform that helps you manage shipping your [Godot](https://godotengine.org/) games on iOS to the App Store.
5
+ ShipThis is a tool which helps you manage releasing your [Godot](https://godotengine.org/) games to the iOS App Store.
6
6
 
7
- This is all done with an easy to use command line tool called `shipthis`.
7
+ :::tip Info
8
+ You don't need an Apple computer to use ShipThis.
9
+ :::
8
10
 
9
- You can discover **ShipThis in less than 5 minutes** via our [Quick Start Guide](https://shipthis.cc/docs/quickstart).
11
+ ## Quickstart
12
+
13
+ Let's discover **ShipThis in less than 5 minutes**.
14
+
15
+ ### What you'll need
16
+
17
+ - A Godot game
18
+ - [Node.js](https://nodejs.org/en/download/) version 18.0 or above:
19
+ - When installing Node.js, you are recommended to check all checkboxes related to dependencies.
20
+ - An [Apple Developer](https://developer.apple.com) account
21
+
22
+ ### 1. Install ShipThis
23
+
24
+ ShipThis can be installed as a package via the [NPM package manager](https://www.npmjs.com/). Run the following at the command line:
25
+
26
+ ```bash
27
+ npm install -g shipthis
28
+ ```
29
+
30
+ ### 2. Create an account
31
+
32
+ Set up an account with ShipThis by logging in for the first time using the [`shipthis login`](https://shipthis.cc/docs/reference/login) command.
33
+
34
+ ```bash
35
+ shipthis login
36
+ ```
37
+
38
+ ### 3. Configure your game
39
+
40
+ Set up your ShipThis configuration using the built in [wizard](https://shipthis.cc/docs/wizard):
41
+
42
+ ```bash
43
+ shipthis game wizard
44
+ ```
45
+
46
+ ### 4. Ship
47
+
48
+ Now you can publish your game to TestFlight with the [`shipthis game ship`](https://shipthis.cc/docs/reference/game/ship) command:
49
+
50
+ ```bash
51
+ shipthis game ship
52
+ ```
53
+
54
+ Once you are happy with the build you can submit it to Apple using [App Store
55
+ Connect](https://appstoreconnect.apple.com/).
10
56
 
11
57
  ## Topics
12
58
 
@@ -69,7 +69,7 @@ const UserCredentialsTable = ({ credentialTypeName, queryProps, ...boxProps }) =
69
69
  /* @__PURE__ */ jsx(Title, { children: `${credentialTypeName}s in your ShipThis account` }),
70
70
  /* @__PURE__ */ jsx(Box, { marginLeft: 2, marginBottom: 1, flexDirection: "column", children: /* @__PURE__ */ jsx(Text, { children: hasActive ? `You have an active ${credentialTypeName} in your ShipThis account.` : `You DO NOT have an active ${credentialTypeName} which ShipThis can use.` }) }),
71
71
  isLoading && /* @__PURE__ */ jsx(Spinner, { type: "dots" }),
72
- data && /* @__PURE__ */ jsx(Table, { data: data.data.map(getUserCredentialSummary) })
72
+ data && data.data.length > 0 && /* @__PURE__ */ jsx(Table, { data: data.data.map(getUserCredentialSummary) })
73
73
  ] });
74
74
  };
75
75
 
@@ -16,7 +16,7 @@ import 'socket.io-client';
16
16
  import 'isomorphic-git';
17
17
  import { A as App } from '../../../App-BfoOFeZ-.js';
18
18
  import Spinner from 'ink-spinner';
19
- import { u as useUserCredentials, U as UserCredentialsTable } from '../../../UserCredentialsTable-D2Nm0QP_.js';
19
+ import { u as useUserCredentials, U as UserCredentialsTable } from '../../../UserCredentialsTable-A_YlFeJX.js';
20
20
  import { T as Title } from '../../../Title-BCQtayg6.js';
21
21
  import { T as Table } from '../../../Table-CvM6pccN.js';
22
22
  import 'string-length';
@@ -65,7 +65,7 @@ const AppleApiKeysTable = ({ ctx, ...boxProps }) => {
65
65
  /* @__PURE__ */ jsx(Text, { children: `You have ${keys.length} App Store Connect API Keys in your Apple account` }),
66
66
  /* @__PURE__ */ jsx(Text, { children: `${hasUsable ? "One" : "None"} of these can be used by ShipThis` })
67
67
  ] }),
68
- /* @__PURE__ */ jsx(Table, { data: keys.map((key) => getAppleApiKeySummary(key, userCredentialsResponse.data)) }),
68
+ keys.length > 0 && /* @__PURE__ */ jsx(Table, { data: keys.map((key) => getAppleApiKeySummary(key, userCredentialsResponse.data)) }),
69
69
  !hasUsable && /* @__PURE__ */ jsx(Box, { marginTop: 1, children: /* @__PURE__ */ jsx(Text, { bold: true, children: "You do not have a usable App Store Connect API Key. To ship an iOS game, you will need a usable App Store Connect API Key." }) })
70
70
  ] })
71
71
  ] });
@@ -17,7 +17,7 @@ import 'isomorphic-git';
17
17
  import { A as App } from '../../../App-BfoOFeZ-.js';
18
18
  import Spinner from 'ink-spinner';
19
19
  import { g as getShortUUID } from '../../../index-ZHJdUrwJ.js';
20
- import { u as useUserCredentials, U as UserCredentialsTable } from '../../../UserCredentialsTable-D2Nm0QP_.js';
20
+ import { u as useUserCredentials, U as UserCredentialsTable } from '../../../UserCredentialsTable-A_YlFeJX.js';
21
21
  import { T as Title } from '../../../Title-BCQtayg6.js';
22
22
  import { T as Table } from '../../../Table-CvM6pccN.js';
23
23
  import 'string-length';
package/docs/README.md CHANGED
@@ -1,20 +1,18 @@
1
- # ShipThis CLI Reference
1
+ # ShipThis CLI
2
2
 
3
3
  ## Introduction
4
4
 
5
- ShipThis is a platform that helps you manage shipping your [Godot](https://godotengine.org/) games on iOS to the App Store.
5
+ ShipThis is a tool which helps you manage releasing your [Godot](https://godotengine.org/) games to the iOS App Store.
6
6
 
7
- This is all done with an easy to use command line tool called `shipthis`.
7
+ :::tip Info
8
+ You don't need an Apple computer to use ShipThis.
9
+ :::
8
10
 
9
11
  ## Quickstart
10
12
 
11
13
  Let's discover **ShipThis in less than 5 minutes**.
12
14
 
13
- ### Getting Started
14
-
15
- ShipThis is a platform that helps you manage shipping your [Godot](https://godotengine.org/) games to the App Store.
16
-
17
- #### What you'll need
15
+ ### What you'll need
18
16
 
19
17
  - A Godot game
20
18
  - [Node.js](https://nodejs.org/en/download/) version 18.0 or above:
@@ -23,9 +21,9 @@ ShipThis is a platform that helps you manage shipping your [Godot](https://godot
23
21
 
24
22
  ### 1. Install ShipThis
25
23
 
26
- ShipThis can be installed as a package via the [NPM package manager](https://www.npmjs.com/). Run the following at the command line:
24
+ ShipThis can be installed as a package via the [NPM package manager](https://www.npmjs.com/). Run the following at the command line:
27
25
 
28
- ```
26
+ ```bash
29
27
  npm install -g shipthis
30
28
  ```
31
29
 
@@ -33,7 +31,7 @@ npm install -g shipthis
33
31
 
34
32
  Set up an account with ShipThis by logging in for the first time using the [`shipthis login`](https://shipthis.cc/docs/reference/login) command.
35
33
 
36
- ```
34
+ ```bash
37
35
  shipthis login
38
36
  ```
39
37
 
@@ -41,7 +39,7 @@ shipthis login
41
39
 
42
40
  Set up your ShipThis configuration using the built in [wizard](https://shipthis.cc/docs/wizard):
43
41
 
44
- ```
42
+ ```bash
45
43
  shipthis game wizard
46
44
  ```
47
45
 
@@ -49,7 +47,7 @@ shipthis game wizard
49
47
 
50
48
  Now you can publish your game to TestFlight with the [`shipthis game ship`](https://shipthis.cc/docs/reference/game/ship) command:
51
49
 
52
- ```
50
+ ```bash
53
51
  shipthis game ship
54
52
  ```
55
53
 
@@ -68,4 +66,3 @@ Connect](https://appstoreconnect.apple.com/).
68
66
  - [login](https://shipthis.cc/docs/reference/login) - Signin or create a new account
69
67
  - [status](https://shipthis.cc/docs/reference/status) - Display your overall ShipThis account status
70
68
  - [help](https://shipthis.cc/docs/reference/help) - Display help for a specific topic or command
71
-
@@ -1,6 +1,21 @@
1
1
  # Topic: `apple apiKey`
2
2
 
3
- Commands related to App Store Connect API Keys
3
+ Commands in the apple apiKey topic are prefixed `shipthis apple apiKey`. These commands relate to App Store Connect API Keys.
4
+
5
+ - You can view the App Store Connect API Keys in the [Apple Developer Portal](https://appstoreconnect.apple.com/access/integrations/api).
6
+ - You can view the keys which ShipThis can use in the [ShipThis Dashboard](https://shipthis.cc/credentials)
7
+
8
+ :::tip
9
+ You will need to be authenticated against ShipThis and Apple before you can use
10
+ these commands. To do that please run the following commands first:
11
+
12
+ - [`shipthis login`](/docs/reference/login)
13
+ - [`shipthis apple login`](/docs/reference/apple/login)
14
+ :::
15
+
16
+ ## Example
17
+
18
+
4
19
 
5
20
 
6
21
  ## Commands
@@ -2,6 +2,11 @@
2
2
 
3
3
  ## Description
4
4
 
5
+ :::tip
6
+ We recommend configuring your game using the [`shipthis game wizard`](/docs/reference/game/wizard).
7
+ The `shipthis game create` command is the first step run by the wizard
8
+ :::
9
+
5
10
  Creates a new game in your [ShipThis account](https://shipthis.cc/games).
6
11
 
7
12
  It will read the name of your game from your `project.godot` file. You will be
@@ -514,155 +514,6 @@
514
514
  "wizard.js"
515
515
  ]
516
516
  },
517
- "apple:certificate:create": {
518
- "aliases": [],
519
- "args": {},
520
- "description": "Creates an iOS Distribution Certificate in your Apple Developer account.\nSaves the certificate with the private key to your ShipThis account",
521
- "examples": [
522
- "<%= config.bin %> <%= command.id %>",
523
- "<%= config.bin %> <%= command.id %> --force"
524
- ],
525
- "flags": {
526
- "force": {
527
- "char": "f",
528
- "name": "force",
529
- "allowNo": false,
530
- "type": "boolean"
531
- },
532
- "quiet": {
533
- "char": "q",
534
- "description": "Avoid output except for interactions and errors",
535
- "name": "quiet",
536
- "allowNo": false,
537
- "type": "boolean"
538
- }
539
- },
540
- "hasDynamicHelp": false,
541
- "hiddenAliases": [],
542
- "id": "apple:certificate:create",
543
- "pluginAlias": "shipthis",
544
- "pluginName": "shipthis",
545
- "pluginType": "core",
546
- "strict": true,
547
- "isESM": true,
548
- "relativePath": [
549
- "dist",
550
- "commands",
551
- "apple",
552
- "certificate",
553
- "create.js"
554
- ]
555
- },
556
- "apple:certificate:export": {
557
- "aliases": [],
558
- "args": {
559
- "file": {
560
- "description": "Name of the ZIP file to create",
561
- "name": "file",
562
- "required": true
563
- }
564
- },
565
- "description": "Saves the current Apple Distribution Certificate to a ZIP file.",
566
- "examples": [
567
- "<%= config.bin %> <%= command.id %> userCert.zip"
568
- ],
569
- "flags": {
570
- "force": {
571
- "char": "f",
572
- "description": "Overwrite the file if it already exists",
573
- "name": "force",
574
- "allowNo": false,
575
- "type": "boolean"
576
- }
577
- },
578
- "hasDynamicHelp": false,
579
- "hiddenAliases": [],
580
- "id": "apple:certificate:export",
581
- "pluginAlias": "shipthis",
582
- "pluginName": "shipthis",
583
- "pluginType": "core",
584
- "strict": true,
585
- "enableJsonFlag": false,
586
- "isESM": true,
587
- "relativePath": [
588
- "dist",
589
- "commands",
590
- "apple",
591
- "certificate",
592
- "export.js"
593
- ]
594
- },
595
- "apple:certificate:import": {
596
- "aliases": [],
597
- "args": {
598
- "file": {
599
- "description": "Name of the ZIP file to import (must be in the same format as the export)",
600
- "name": "file",
601
- "required": true
602
- }
603
- },
604
- "description": "Imports an iOS Distribution Certificate to your ShipThis account",
605
- "examples": [
606
- "<%= config.bin %> <%= command.id %> userCert.zip"
607
- ],
608
- "flags": {
609
- "force": {
610
- "char": "f",
611
- "name": "force",
612
- "allowNo": false,
613
- "type": "boolean"
614
- }
615
- },
616
- "hasDynamicHelp": false,
617
- "hiddenAliases": [],
618
- "id": "apple:certificate:import",
619
- "pluginAlias": "shipthis",
620
- "pluginName": "shipthis",
621
- "pluginType": "core",
622
- "strict": true,
623
- "enableJsonFlag": false,
624
- "isESM": true,
625
- "relativePath": [
626
- "dist",
627
- "commands",
628
- "apple",
629
- "certificate",
630
- "import.js"
631
- ]
632
- },
633
- "apple:certificate:status": {
634
- "aliases": [],
635
- "args": {},
636
- "description": "Displays the status of the iOS Distribution certificates in your Apple and ShipThis accounts.\nThese are used to sign all of your iOS apps.",
637
- "examples": [
638
- "<%= config.bin %> <%= command.id %>",
639
- "<%= config.bin %> <%= command.id %> --noAppleAuth"
640
- ],
641
- "flags": {
642
- "noAppleAuth": {
643
- "char": "f",
644
- "name": "noAppleAuth",
645
- "allowNo": false,
646
- "type": "boolean"
647
- }
648
- },
649
- "hasDynamicHelp": false,
650
- "hiddenAliases": [],
651
- "id": "apple:certificate:status",
652
- "pluginAlias": "shipthis",
653
- "pluginName": "shipthis",
654
- "pluginType": "core",
655
- "strict": true,
656
- "enableJsonFlag": false,
657
- "isESM": true,
658
- "relativePath": [
659
- "dist",
660
- "commands",
661
- "apple",
662
- "certificate",
663
- "status.js"
664
- ]
665
- },
666
517
  "apple:apiKey:create": {
667
518
  "aliases": [],
668
519
  "args": {},
@@ -945,6 +796,155 @@
945
796
  "list.js"
946
797
  ]
947
798
  },
799
+ "apple:certificate:create": {
800
+ "aliases": [],
801
+ "args": {},
802
+ "description": "Creates an iOS Distribution Certificate in your Apple Developer account.\nSaves the certificate with the private key to your ShipThis account",
803
+ "examples": [
804
+ "<%= config.bin %> <%= command.id %>",
805
+ "<%= config.bin %> <%= command.id %> --force"
806
+ ],
807
+ "flags": {
808
+ "force": {
809
+ "char": "f",
810
+ "name": "force",
811
+ "allowNo": false,
812
+ "type": "boolean"
813
+ },
814
+ "quiet": {
815
+ "char": "q",
816
+ "description": "Avoid output except for interactions and errors",
817
+ "name": "quiet",
818
+ "allowNo": false,
819
+ "type": "boolean"
820
+ }
821
+ },
822
+ "hasDynamicHelp": false,
823
+ "hiddenAliases": [],
824
+ "id": "apple:certificate:create",
825
+ "pluginAlias": "shipthis",
826
+ "pluginName": "shipthis",
827
+ "pluginType": "core",
828
+ "strict": true,
829
+ "isESM": true,
830
+ "relativePath": [
831
+ "dist",
832
+ "commands",
833
+ "apple",
834
+ "certificate",
835
+ "create.js"
836
+ ]
837
+ },
838
+ "apple:certificate:export": {
839
+ "aliases": [],
840
+ "args": {
841
+ "file": {
842
+ "description": "Name of the ZIP file to create",
843
+ "name": "file",
844
+ "required": true
845
+ }
846
+ },
847
+ "description": "Saves the current Apple Distribution Certificate to a ZIP file.",
848
+ "examples": [
849
+ "<%= config.bin %> <%= command.id %> userCert.zip"
850
+ ],
851
+ "flags": {
852
+ "force": {
853
+ "char": "f",
854
+ "description": "Overwrite the file if it already exists",
855
+ "name": "force",
856
+ "allowNo": false,
857
+ "type": "boolean"
858
+ }
859
+ },
860
+ "hasDynamicHelp": false,
861
+ "hiddenAliases": [],
862
+ "id": "apple:certificate:export",
863
+ "pluginAlias": "shipthis",
864
+ "pluginName": "shipthis",
865
+ "pluginType": "core",
866
+ "strict": true,
867
+ "enableJsonFlag": false,
868
+ "isESM": true,
869
+ "relativePath": [
870
+ "dist",
871
+ "commands",
872
+ "apple",
873
+ "certificate",
874
+ "export.js"
875
+ ]
876
+ },
877
+ "apple:certificate:import": {
878
+ "aliases": [],
879
+ "args": {
880
+ "file": {
881
+ "description": "Name of the ZIP file to import (must be in the same format as the export)",
882
+ "name": "file",
883
+ "required": true
884
+ }
885
+ },
886
+ "description": "Imports an iOS Distribution Certificate to your ShipThis account",
887
+ "examples": [
888
+ "<%= config.bin %> <%= command.id %> userCert.zip"
889
+ ],
890
+ "flags": {
891
+ "force": {
892
+ "char": "f",
893
+ "name": "force",
894
+ "allowNo": false,
895
+ "type": "boolean"
896
+ }
897
+ },
898
+ "hasDynamicHelp": false,
899
+ "hiddenAliases": [],
900
+ "id": "apple:certificate:import",
901
+ "pluginAlias": "shipthis",
902
+ "pluginName": "shipthis",
903
+ "pluginType": "core",
904
+ "strict": true,
905
+ "enableJsonFlag": false,
906
+ "isESM": true,
907
+ "relativePath": [
908
+ "dist",
909
+ "commands",
910
+ "apple",
911
+ "certificate",
912
+ "import.js"
913
+ ]
914
+ },
915
+ "apple:certificate:status": {
916
+ "aliases": [],
917
+ "args": {},
918
+ "description": "Displays the status of the iOS Distribution certificates in your Apple and ShipThis accounts.\nThese are used to sign all of your iOS apps.",
919
+ "examples": [
920
+ "<%= config.bin %> <%= command.id %>",
921
+ "<%= config.bin %> <%= command.id %> --noAppleAuth"
922
+ ],
923
+ "flags": {
924
+ "noAppleAuth": {
925
+ "char": "f",
926
+ "name": "noAppleAuth",
927
+ "allowNo": false,
928
+ "type": "boolean"
929
+ }
930
+ },
931
+ "hasDynamicHelp": false,
932
+ "hiddenAliases": [],
933
+ "id": "apple:certificate:status",
934
+ "pluginAlias": "shipthis",
935
+ "pluginName": "shipthis",
936
+ "pluginType": "core",
937
+ "strict": true,
938
+ "enableJsonFlag": false,
939
+ "isESM": true,
940
+ "relativePath": [
941
+ "dist",
942
+ "commands",
943
+ "apple",
944
+ "certificate",
945
+ "status.js"
946
+ ]
947
+ },
948
948
  "game:ios:status": {
949
949
  "aliases": [],
950
950
  "args": {},
@@ -1508,5 +1508,5 @@
1508
1508
  ]
1509
1509
  }
1510
1510
  },
1511
- "version": "0.0.25"
1511
+ "version": "0.0.27"
1512
1512
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "shipthis",
3
3
  "description": "Game Shipping Tool",
4
- "version": "0.0.25",
4
+ "version": "0.0.27",
5
5
  "author": "Hello Invent Ltd",
6
6
  "bin": {
7
7
  "shipthis": "./bin/run.js"