mirror of
https://github.com/ruvnet/RuVector.git
synced 2026-05-25 15:03:46 +00:00
Major additions: - Complete Next.js studio application with 1600+ components - Docker support (Dockerfile.combined, docker-compose.yml) - GCP deployment documentation and benchmarks - SQL benchmark scripts for performance testing - Sentry integration for monitoring - Comprehensive test suite and mocks Studio features: - Dashboard and admin interfaces - Data visualization components - Authentication and user management - API integration with RuVector backend - Static data and public assets 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
33 lines
978 B
TypeScript
33 lines
978 B
TypeScript
import { NextApiRequest, NextApiResponse } from 'next'
|
|
|
|
type GitHubRepositoryRelease = {
|
|
id: number
|
|
url: string
|
|
name: string
|
|
tag_name: string
|
|
published_at: string
|
|
}
|
|
|
|
const current = process.env.CURRENT_CLI_VERSION ? `v${process.env.CURRENT_CLI_VERSION}` : undefined
|
|
|
|
const handler = async (req: NextApiRequest, res: NextApiResponse) => {
|
|
try {
|
|
const { tag_name: latest, published_at }: GitHubRepositoryRelease = await fetch(
|
|
'https://api.github.com/repos/supabase/cli/releases/latest'
|
|
).then((res) => res.json())
|
|
|
|
const data: GitHubRepositoryRelease[] = await fetch(
|
|
'https://api.github.com/repos/supabase/cli/releases?per_page=1'
|
|
)
|
|
.then((res) => res.json())
|
|
// Ignore errors fetching beta release version
|
|
.catch(() => [])
|
|
const beta = data[0]?.tag_name
|
|
|
|
return res.status(200).json({ current, latest, beta, published_at })
|
|
} catch {
|
|
return res.status(200).json({ current })
|
|
}
|
|
}
|
|
|
|
export default handler
|