diff options
| author | Brendan Allan <[email protected]> | 2025-12-18 00:59:16 +0800 |
|---|---|---|
| committer | Brendan Allan <[email protected]> | 2025-12-18 00:59:16 +0800 |
| commit | be1a3536ae23c0abff733f71c42d2f650fabdf17 (patch) | |
| tree | fcd891d472535bdefefa4487346be917fb341d11 | |
| parent | 1e4bfbcf6f67baa0f05ef62418b229188225ac48 (diff) | |
| download | opencode-be1a3536ae23c0abff733f71c42d2f650fabdf17.tar.gz opencode-be1a3536ae23c0abff733f71c42d2f650fabdf17.zip | |
console: add /download/[platform] endpoint
| -rw-r--r-- | packages/console/app/src/routes/download/[platform].ts | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/packages/console/app/src/routes/download/[platform].ts b/packages/console/app/src/routes/download/[platform].ts new file mode 100644 index 000000000..bb0560ca0 --- /dev/null +++ b/packages/console/app/src/routes/download/[platform].ts @@ -0,0 +1,20 @@ +import { APIEvent } from "@solidjs/start"; + +const assetNames: Record<string, string> = { + "darwin-aarch64-dmg": "opencode-desktop-darwin-aarch64.dmg", + "windows-x64-nsis": "opencode-desktop-windows-x64.exe", + "linux-x64-deb": "opencode-desktop-linux-amd64.deb", + "linux-x64-rpm": "opencode-desktop-linux-x86_64.rpm" +} + +export async function GET({ params: { platform } }: APIEvent) { + const assetName = assetNames[platform]; + if(!assetName) return new Response("Not Found", { status: 404 }); + + return await fetch(`https://github.com/sst/opencode/releases/latest/download/${assetName}`, { + cf: { + cacheTtl: 60 * 60 * 24, + cacheEverything: true, + } + } as any) +} |
