Files
bot-hub/vitest.config.ts
zeekay cacc1f4d92 rebrand clawhub → bothub + add self-hosted API backend
Migration from Convex/Vercel to self-hosted infrastructure:

API Backend (api/):
- Hono server with PostgreSQL (Drizzle ORM) + pgvector
- Skills CRUD, search (hybrid vector + lexical), auth (hanzo.id OAuth)
- Upload (MinIO S3), stars, comments, API tokens
- Rate limiting middleware, session management

Frontend Adapter (src/lib/):
- api.ts: REST API client replacing Convex SDK
- hooks.ts: React hooks replacing convex/react useQuery/useMutation
- AuthContext.tsx: Auth provider replacing ConvexAuthProvider

Deployment:
- Dockerfile (multi-stage: API build + web build + production)
- K8s manifests for hub.hanzo.bot on hanzo-k8s
- GitHub Actions CI/CD (build → GHCR → deploy)

Rebrand:
- clawhub/clawdhub/ClawHub → bothub/Bot Hub
- Domain: clawhub.ai → hub.hanzo.bot
- CLI: clawhub → bothub
- Package: @hanzo/bot-hub-api
2026-02-16 19:36:19 -08:00

49 lines
1.1 KiB
TypeScript

import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
environment: 'jsdom',
globals: true,
setupFiles: ['./vitest.setup.ts'],
exclude: [
'**/node_modules/**',
'**/dist/**',
'**/coverage/**',
'**/convex/_generated/**',
'e2e/**',
'**/*.e2e.test.ts',
],
coverage: {
provider: 'v8',
reporter: ['text', 'html', 'lcov'],
thresholds: {
lines: 70,
functions: 70,
branches: 70,
statements: 70,
},
include: [
'src/lib/**/*.{ts,tsx}',
'convex/lib/skills.ts',
'convex/lib/skillZip.ts',
'convex/lib/tokens.ts',
'convex/httpApi.ts',
'packages/bothub/src/**/*.ts',
'packages/schema/src/**/*.ts',
],
exclude: [
'node_modules/',
'dist/',
'coverage/',
'convex/_generated/',
'packages/bothub/src/cli/**',
'packages/bothub/src/cli.ts',
'packages/bothub/src/config.ts',
'packages/bothub/src/types.ts',
'packages/schema/dist/',
'e2e/**',
],
},
},
})