create-skybridge 0.0.0-dev.65eaa41 → 0.0.0-dev.662bdfd

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.
Files changed (84) hide show
  1. package/dist/index.js +333 -186
  2. package/package.json +9 -8
  3. package/templates/blank/.dockerignore +4 -0
  4. package/templates/blank/AGENTS.md +1 -0
  5. package/templates/blank/Dockerfile +53 -0
  6. package/templates/blank/README.md +92 -0
  7. package/{template → templates/blank}/_gitignore +3 -1
  8. package/templates/blank/node_modules/.bin/alpic +21 -0
  9. package/templates/blank/node_modules/.bin/sb +21 -0
  10. package/templates/blank/node_modules/.bin/skybridge +21 -0
  11. package/templates/blank/node_modules/.bin/tsc +21 -0
  12. package/templates/blank/node_modules/.bin/tsserver +21 -0
  13. package/templates/blank/node_modules/.bin/tsx +21 -0
  14. package/templates/blank/node_modules/.bin/vite +21 -0
  15. package/templates/blank/package.json +29 -0
  16. package/templates/blank/src/helpers.ts +4 -0
  17. package/templates/blank/src/server.ts +16 -0
  18. package/templates/blank/tsconfig.json +5 -0
  19. package/templates/blank/vite.config.ts +6 -0
  20. package/templates/demo/.dockerignore +4 -0
  21. package/templates/demo/AGENTS.md +1 -0
  22. package/templates/demo/Dockerfile +53 -0
  23. package/templates/demo/README.md +95 -0
  24. package/templates/demo/_gitignore +7 -0
  25. package/templates/demo/alpic.json +3 -0
  26. package/templates/demo/node_modules/.bin/alpic +21 -0
  27. package/templates/demo/node_modules/.bin/sb +21 -0
  28. package/templates/demo/node_modules/.bin/skybridge +21 -0
  29. package/templates/demo/node_modules/.bin/tsc +21 -0
  30. package/templates/demo/node_modules/.bin/tsserver +21 -0
  31. package/templates/demo/node_modules/.bin/tsx +21 -0
  32. package/templates/demo/node_modules/.bin/vite +21 -0
  33. package/templates/demo/package.json +41 -0
  34. package/templates/demo/src/helpers.ts +4 -0
  35. package/templates/demo/src/index.css +59 -0
  36. package/templates/demo/src/server.ts +94 -0
  37. package/templates/demo/src/views/components/doc-link.tsx +22 -0
  38. package/templates/demo/src/views/components/doc.tsx +21 -0
  39. package/templates/demo/src/views/components/nav.tsx +31 -0
  40. package/templates/demo/src/views/components/progress.tsx +35 -0
  41. package/templates/demo/src/views/components/steps/outro.tsx +68 -0
  42. package/templates/demo/src/views/components/steps/state.tsx +47 -0
  43. package/templates/demo/src/views/components/steps/tool-call.tsx +53 -0
  44. package/templates/demo/src/views/components/steps/tool-output.tsx +40 -0
  45. package/templates/demo/src/views/images/mascot/beret.png +0 -0
  46. package/templates/demo/src/views/images/mascot/chapka.png +0 -0
  47. package/templates/demo/src/views/images/mascot/cowboy-hat.png +0 -0
  48. package/templates/demo/src/views/images/mascot/fez.png +0 -0
  49. package/templates/demo/src/views/images/mascot/jester-hat.png +0 -0
  50. package/templates/demo/src/views/images/mascot/mitre.png +0 -0
  51. package/templates/demo/src/views/images/mascot/non-la.png +0 -0
  52. package/templates/demo/src/views/images/mascot/original.png +0 -0
  53. package/templates/demo/src/views/images/mascot/propeller-beanie.png +0 -0
  54. package/templates/demo/src/views/images/mascot/ski-mask.png +0 -0
  55. package/templates/demo/src/views/images/mascot/sombrero.png +0 -0
  56. package/templates/demo/src/views/images/mascot/top-hat.png +0 -0
  57. package/templates/demo/src/views/images/mascot/viking-helmet.png +0 -0
  58. package/templates/demo/src/views/onboarding.tsx +63 -0
  59. package/templates/demo/src/views/use-mascot.ts +60 -0
  60. package/templates/demo/tsconfig.json +11 -0
  61. package/{template/web → templates/demo}/vite.config.ts +3 -4
  62. package/dist/index.test.d.ts +0 -1
  63. package/dist/index.test.js +0 -33
  64. package/template/README.md +0 -77
  65. package/template/node_modules/.bin/mcp-inspector +0 -21
  66. package/template/node_modules/.bin/nodemon +0 -21
  67. package/template/node_modules/.bin/sb +0 -21
  68. package/template/node_modules/.bin/shx +0 -21
  69. package/template/node_modules/.bin/skybridge +0 -21
  70. package/template/node_modules/.bin/tsc +0 -21
  71. package/template/node_modules/.bin/tsserver +0 -21
  72. package/template/node_modules/.bin/tsx +0 -21
  73. package/template/node_modules/.bin/vite +0 -21
  74. package/template/nodemon.json +0 -5
  75. package/template/package.json +0 -39
  76. package/template/server/src/index.ts +0 -42
  77. package/template/server/src/middleware.ts +0 -54
  78. package/template/server/src/server.ts +0 -61
  79. package/template/tsconfig.json +0 -23
  80. package/template/tsconfig.server.json +0 -11
  81. package/template/web/src/helpers.ts +0 -4
  82. package/template/web/src/index.css +0 -31
  83. package/template/web/src/widgets/magic-8-ball.tsx +0 -24
  84. /package/{template → templates/blank}/alpic.json +0 -0
@@ -1,61 +0,0 @@
1
- import { McpServer } from "skybridge/server";
2
- import { z } from "zod";
3
-
4
- const Answers = [
5
- "As I see it, yes",
6
- "Don't count on it",
7
- "It is certain",
8
- "It is decidedly so",
9
- "Most likely",
10
- "My reply is no",
11
- "My sources say no",
12
- "Outlook good",
13
- "Outlook not so good",
14
- "Signs point to yes",
15
- "Very doubtful",
16
- "Without a doubt",
17
- "Yes definitely",
18
- "Yes",
19
- "You may rely on it",
20
- ];
21
-
22
- const server = new McpServer(
23
- {
24
- name: "alpic-openai-app",
25
- version: "0.0.1",
26
- },
27
- { capabilities: {} },
28
- ).registerWidget(
29
- "magic-8-ball",
30
- {
31
- description: "Magic 8 Ball",
32
- },
33
- {
34
- description: "For fortune-telling or seeking advice.",
35
- inputSchema: {
36
- question: z.string().describe("The user question."),
37
- },
38
- },
39
- async ({ question }) => {
40
- try {
41
- // deterministic answer
42
- const hash = question
43
- .split("")
44
- .reduce((acc, char) => acc + char.charCodeAt(0), 0);
45
- const answer = Answers[hash % Answers.length];
46
- return {
47
- structuredContent: { answer },
48
- content: [],
49
- isError: false,
50
- };
51
- } catch (error) {
52
- return {
53
- content: [{ type: "text", text: `Error: ${error}` }],
54
- isError: true,
55
- };
56
- }
57
- },
58
- );
59
-
60
- export default server;
61
- export type AppType = typeof server;
@@ -1,23 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2022",
4
- "module": "ESNext",
5
- "moduleResolution": "bundler",
6
- "lib": ["ES2022", "DOM", "DOM.Iterable"],
7
- "jsx": "react-jsx",
8
-
9
- "strict": true,
10
- "skipLibCheck": true,
11
- "esModuleInterop": true,
12
- "forceConsistentCasingInFileNames": true,
13
- "verbatimModuleSyntax": true,
14
-
15
- "noUnusedLocals": true,
16
- "noUnusedParameters": true,
17
- "noFallthroughCasesInSwitch": true,
18
-
19
- "noEmit": true
20
- },
21
- "include": ["server/src", "web/src", "web/vite.config.ts"],
22
- "exclude": ["dist", "node_modules"]
23
- }
@@ -1,11 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "compilerOptions": {
4
- "noEmit": false,
5
- "outDir": "dist",
6
- "sourceMap": true,
7
- "declaration": true
8
- },
9
- "include": ["server/src"],
10
- "exclude": ["dist", "node_modules"]
11
- }
@@ -1,4 +0,0 @@
1
- import { generateHelpers } from "skybridge/web";
2
- import type { AppType } from "../../server/src/server";
3
-
4
- export const { useToolInfo } = generateHelpers<AppType>();
@@ -1,31 +0,0 @@
1
- .container {
2
- display: flex;
3
- justify-content: center;
4
- align-items: center;
5
- height: 100%;
6
- }
7
-
8
- .ball {
9
- background-color: black;
10
- border-radius: 50%;
11
- width: 12rem;
12
- height: 12rem;
13
- display: flex;
14
- flex-direction: column;
15
- align-items: center;
16
- justify-content: center;
17
- font-family: monospace;
18
- text-align: center;
19
- }
20
-
21
- .question {
22
- font-size: 0.75rem;
23
- color: lightgrey;
24
- }
25
-
26
- .answer {
27
- font-size: 1.125rem;
28
- font-weight: bold;
29
- margin-top: 0.5rem;
30
- color: aqua;
31
- }
@@ -1,24 +0,0 @@
1
- import "@/index.css";
2
-
3
- import { mountWidget } from "skybridge/web";
4
- import { useToolInfo } from "../helpers";
5
-
6
- function Magic8Ball() {
7
- const { input, output } = useToolInfo<"magic-8-ball">();
8
- if (!output) {
9
- return <div>Shaking...</div>;
10
- }
11
-
12
- return (
13
- <div className="container">
14
- <div className="ball">
15
- <div className="question">{input.question}</div>
16
- <div className="answer">{output.answer}</div>
17
- </div>
18
- </div>
19
- );
20
- }
21
-
22
- export default Magic8Ball;
23
-
24
- mountWidget(<Magic8Ball />);
File without changes