summaryrefslogtreecommitdiffhomepage
path: root/packages/server/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/server/src')
-rw-r--r--packages/server/src/api/index.ts1
-rw-r--r--packages/server/src/definition/api.ts6
-rw-r--r--packages/server/src/definition/index.ts1
-rw-r--r--packages/server/src/index.ts3
-rw-r--r--packages/server/src/openapi.ts14
-rw-r--r--packages/server/src/types.ts14
6 files changed, 39 insertions, 0 deletions
diff --git a/packages/server/src/api/index.ts b/packages/server/src/api/index.ts
new file mode 100644
index 000000000..336ce12bb
--- /dev/null
+++ b/packages/server/src/api/index.ts
@@ -0,0 +1 @@
+export {}
diff --git a/packages/server/src/definition/api.ts b/packages/server/src/definition/api.ts
new file mode 100644
index 000000000..6eda4090e
--- /dev/null
+++ b/packages/server/src/definition/api.ts
@@ -0,0 +1,6 @@
+import type { ServerApi } from "../types.js"
+
+export const api: ServerApi = {
+ name: "opencode",
+ groups: [],
+}
diff --git a/packages/server/src/definition/index.ts b/packages/server/src/definition/index.ts
new file mode 100644
index 000000000..39cab2446
--- /dev/null
+++ b/packages/server/src/definition/index.ts
@@ -0,0 +1 @@
+export { api } from "./api.js"
diff --git a/packages/server/src/index.ts b/packages/server/src/index.ts
new file mode 100644
index 000000000..2fbe31a0d
--- /dev/null
+++ b/packages/server/src/index.ts
@@ -0,0 +1,3 @@
+export { openapi } from "./openapi.js"
+export { api } from "./definition/api.js"
+export type { OpenApiSpec, ServerApi } from "./types.js"
diff --git a/packages/server/src/openapi.ts b/packages/server/src/openapi.ts
new file mode 100644
index 000000000..c4ac95300
--- /dev/null
+++ b/packages/server/src/openapi.ts
@@ -0,0 +1,14 @@
+import { api } from "./definition/api.js"
+import type { OpenApiSpec } from "./types.js"
+
+export function openapi(): OpenApiSpec {
+ return {
+ openapi: "3.1.1",
+ info: {
+ title: api.name,
+ version: "0.0.0",
+ description: "Contract-first server package scaffold.",
+ },
+ paths: {},
+ }
+}
diff --git a/packages/server/src/types.ts b/packages/server/src/types.ts
new file mode 100644
index 000000000..8d337be42
--- /dev/null
+++ b/packages/server/src/types.ts
@@ -0,0 +1,14 @@
+export interface ServerApi {
+ readonly name: string
+ readonly groups: readonly string[]
+}
+
+export interface OpenApiSpec {
+ readonly openapi: string
+ readonly info: {
+ readonly title: string
+ readonly version: string
+ readonly description: string
+ }
+ readonly paths: Record<string, never>
+}