Files
zeekay 6c65e3e941 @hanzo/app 0.2.0: the app SDK, renamed from @hanzo/rooms
Every import, the catalog pin and the docs name @hanzo/app and
github.com/hanzoai/app. lib/rooms.ts is lib/app.ts and
components/rooms.tsx is components/app.tsx.
2026-10-22 19:07:20 -07:00

1413 lines
38 KiB
TypeScript

/**
* OSS Catalog Data Model
*
* Faceted browsing with hot/cool sorting, badges, and clear actions
*/
import { dev } from '@hanzo/app/lib/host'
import {
Bot,
Brain,
Code,
Database,
Key,
Layers,
MessageSquare,
Plug,
Route,
Search,
Shield,
Sparkles,
Terminal,
Zap,
FileCode,
Lock,
GitBranch,
type LucideIcon,
} from 'lucide-react';
// =============================================================================
// TYPES
// =============================================================================
export type RepoType = 'core' | 'sdk' | 'template' | 'tool' | 'mcp' | 'connector';
export type Maturity = 'stable' | 'active' | 'experimental';
export type DeploymentType = 'one-click' | 'docker' | 'k8s' | 'library' | 'npm' | 'pip';
export interface RepoActions {
deployUrl?: string;
docsUrl?: string;
/**
* Optional, and that is the point: not everything we publish has a public
* repo. While this was required, an entry with no repo to cite could only be
* written by inventing one — which is exactly how nine addresses that have
* never existed (hanzo-js/next, hanzoai/approvals, the zen-vl mirrors, …)
* came to be shipped as evidence that we are open source. A field nobody can
* leave blank is a field somebody will fill with a guess.
*
* The renderer shows the GitHub control only when this is set. An entry whose
* source is not on GitHub says so by omission and points at where it does
* live (learnUrl for a model card, npmUrl for a package).
*/
githubUrl?: string;
learnUrl?: string;
npmUrl?: string;
pypiUrl?: string;
}
export interface RepoSignals {
updatedAt: string;
featured: boolean;
recommended: boolean;
deployable: boolean;
hotScore: number; // 0-100, computed from signals
}
export interface OSSRepo {
id: string;
name: string;
slug: string;
description: string;
type: RepoType;
categories: string[];
languages: string[];
useCases: string[];
maturity: Maturity;
deployment: DeploymentType[];
actions: RepoActions;
signals: RepoSignals;
icon?: LucideIcon;
upstream?: {
name: string;
url: string;
};
}
export interface FeaturedCollection {
id: string;
title: string;
description: string;
repos: string[]; // repo ids
icon: LucideIcon;
}
// =============================================================================
// FILTER TAXONOMY
// =============================================================================
export const repoTypes: { value: RepoType; label: string; description: string }[] = [
{ value: 'core', label: 'Core Infrastructure', description: 'Foundational platform services' },
{ value: 'sdk', label: 'SDK / Library', description: 'Client libraries and SDKs' },
{ value: 'template', label: 'Template / Starter', description: 'Ready-to-deploy starters' },
{ value: 'tool', label: 'Tooling', description: 'CLI tools and utilities' },
{ value: 'mcp', label: 'MCP Server', description: 'Model Context Protocol tools' },
{ value: 'connector', label: 'Connector', description: 'Integrations and adapters' },
];
export const categories = [
'AI & Agents',
'Developer Tools',
'App Platform',
'Databases & Search',
'Integrations & Automation',
'Security & Governance',
'Observability & Ops',
'Infrastructure',
];
export const languages = [
'TypeScript',
'Python',
'Go',
'Rust',
'Java',
'Shell',
];
export const useCases = [
'RAG',
'Multi-agent',
'Inference Gateway',
'MCP Tooling',
'Observability',
'CI/CD',
'Vector Search',
'Authentication',
'Serverless',
'Data Pipeline',
];
export const maturityLevels: { value: Maturity; label: string; color: string }[] = [
{ value: 'stable', label: 'Stable', color: 'green' },
{ value: 'active', label: 'Active', color: 'blue' },
{ value: 'experimental', label: 'Experimental', color: 'orange' },
];
export const deploymentTypes: { value: DeploymentType; label: string }[] = [
{ value: 'one-click', label: 'One-click Deploy' },
{ value: 'docker', label: 'Docker' },
{ value: 'k8s', label: 'Kubernetes' },
{ value: 'library', label: 'Library Only' },
{ value: 'npm', label: 'npm Package' },
{ value: 'pip', label: 'pip Package' },
];
// =============================================================================
// SORT OPTIONS
// =============================================================================
export const sortOptions = [
{ value: 'name', label: 'Alphabetical', description: 'A to Z' },
{ value: 'recent', label: 'Recently Updated', description: 'Latest changes' },
{ value: 'hot', label: 'Hot', description: 'Trending and recommended' },
{ value: 'beginner', label: 'Beginner-friendly', description: 'Easy to start' },
];
// =============================================================================
// FEATURED COLLECTIONS
// =============================================================================
export const featuredCollections: FeaturedCollection[] = [
{
id: 'build-agent',
title: 'Build an Agent',
description: 'Everything you need to build AI agents',
repos: ['dev', 'mcp', 'agent', 'vector', 'functions'],
icon: Bot,
},
{
id: 'ship-rag',
title: 'Ship a RAG API',
description: 'Vector search + AI models + SQL',
repos: ['vector', 'sql', 'gateway'],
icon: Search,
},
{
id: 'deploy-mcp',
title: 'Deploy MCP Server',
description: 'Model Context Protocol tools',
repos: ['mcp', 'functions'],
icon: Plug,
},
{
id: 'automation-governance',
title: 'Automation + Governance',
description: 'Workflows with policy controls',
repos: ['auto', 'flow', 'policy', 'approvals'],
icon: Shield,
},
{
id: 'open-weight-models',
title: 'Open-Weight Models',
description: 'Zen LM open-weight AI models from 0.6B to 1T+',
repos: ['zen4-ultra', 'zen4-coder-flash', 'zen4-max', 'zen-omni', 'zen4', 'zen-nano'],
icon: Brain,
},
];
// =============================================================================
// OSS CATALOG DATA
// =============================================================================
export const ossCatalog: OSSRepo[] = [
// ===== CORE INFRASTRUCTURE =====
{
id: 'dev',
name: 'Hanzo Dev',
slug: 'hanzoai/dev',
description: 'AI coding agent for your terminal. Multi-agent orchestration, codebase understanding, and PR automation.',
type: 'tool',
categories: ['AI & Agents', 'Developer Tools'],
languages: ['TypeScript', 'Rust'],
useCases: ['Multi-agent', 'CI/CD'],
maturity: 'stable',
deployment: ['npm', 'one-click'],
actions: {
deployUrl: 'https://hanzo.sh',
docsUrl: 'https://docs.hanzo.ai/docs/dev',
githubUrl: 'https://github.com/hanzoai/dev',
learnUrl: dev(),
npmUrl: 'https://npmjs.com/package/@hanzo/dev',
},
signals: {
updatedAt: '2026-01-20',
featured: true,
recommended: true,
deployable: true,
hotScore: 98,
},
icon: Terminal,
},
{
id: 'gateway',
name: 'Hanzo AI',
slug: 'hanzoai/ai',
description: 'One API for every model. OpenAI- and Anthropic-compatible, with load balancing, caching, and observability.',
type: 'core',
categories: ['AI & Agents', 'Infrastructure'],
languages: ['Python'],
useCases: ['Inference Gateway', 'Observability'],
maturity: 'stable',
deployment: ['docker', 'k8s', 'one-click'],
actions: {
deployUrl: 'https://platform.hanzo.ai/deploy',
docsUrl: 'https://docs.hanzo.ai/docs/projects/hanzoai/gateway',
githubUrl: 'https://github.com/hanzoai/ai',
learnUrl: '/zen',
},
signals: {
updatedAt: '2026-01-19',
featured: true,
recommended: true,
deployable: true,
hotScore: 95,
},
icon: Route,
},
{
id: 'mcp',
name: 'Hanzo MCP',
slug: 'hanzoai/mcp',
description: '260+ tools for AI models via Model Context Protocol. File ops, browser, search, memory, and more.',
type: 'mcp',
categories: ['AI & Agents', 'Developer Tools'],
languages: ['TypeScript'],
useCases: ['MCP Tooling', 'Multi-agent'],
maturity: 'active',
deployment: ['npm'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/mcp',
githubUrl: 'https://github.com/hanzoai/mcp',
learnUrl: '/mcp',
npmUrl: 'https://npmjs.com/package/@hanzo/mcp',
},
signals: {
updatedAt: '2026-01-18',
featured: true,
recommended: true,
deployable: false,
hotScore: 92,
},
icon: Plug,
},
{
id: 'chat',
name: 'Hanzo Chat',
slug: 'hanzoai/chat',
description: 'Enhanced ChatGPT-style UI with multi-model support, plugins, and MCP integration.',
type: 'template',
categories: ['AI & Agents', 'App Platform'],
languages: ['TypeScript'],
useCases: ['Multi-agent', 'RAG'],
maturity: 'stable',
deployment: ['docker', 'one-click'],
actions: {
deployUrl: 'https://platform.hanzo.ai/deploy',
docsUrl: 'https://docs.hanzo.ai/docs/chat',
githubUrl: 'https://github.com/hanzoai/chat',
learnUrl: '/chat',
},
signals: {
updatedAt: '2026-01-16',
featured: false,
recommended: true,
deployable: true,
hotScore: 82,
},
icon: MessageSquare,
upstream: {
name: 'LibreChat',
url: 'https://github.com/danny-avila/LibreChat',
},
},
// ===== SDKs =====
{
id: 'python-sdk',
name: 'Python SDK',
slug: 'hanzoai/python-sdk',
description: 'Flagship Python SDK — models, agents, tools, memory, and the full Hanzo cloud. pip install hanzo.',
type: 'sdk',
categories: ['Developer Tools'],
languages: ['Python'],
useCases: ['Inference Gateway', 'Multi-agent'],
maturity: 'stable',
deployment: ['pip'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/sdks/python',
githubUrl: 'https://github.com/hanzoai/python-sdk',
pypiUrl: 'https://pypi.org/project/hanzo/',
},
signals: {
updatedAt: '2026-01-10',
featured: false,
recommended: true,
deployable: false,
hotScore: 70,
},
icon: Code,
},
{
id: 'js-sdk',
name: 'TypeScript SDK',
slug: 'hanzo-js/sdk',
description: 'Full cloud SDK for TypeScript/JavaScript. Works in Node.js, browsers, and edge runtimes.',
type: 'sdk',
categories: ['Developer Tools'],
languages: ['TypeScript'],
useCases: ['Inference Gateway', 'Multi-agent'],
maturity: 'stable',
deployment: ['npm'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/sdks/typescript',
githubUrl: 'https://github.com/hanzo-js/sdk',
npmUrl: 'https://npmjs.com/package/@hanzo/sdk',
},
signals: {
updatedAt: '2026-01-09',
featured: false,
recommended: true,
deployable: false,
hotScore: 68,
},
icon: Code,
},
{
id: 'go-sdk',
name: 'Go SDK',
slug: 'hanzo-go/sdk',
description: 'Full cloud SDK for Go. Idiomatic Go with context support and connection pooling.',
type: 'sdk',
categories: ['Developer Tools'],
languages: ['Go'],
useCases: ['Inference Gateway'],
maturity: 'stable',
deployment: ['library'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/sdks/go',
githubUrl: 'https://github.com/hanzo-go/sdk',
},
signals: {
updatedAt: '2026-01-08',
featured: false,
recommended: false,
deployable: false,
hotScore: 55,
},
icon: Code,
},
{
id: 'cpp-sdk',
name: 'C++ SDK',
slug: 'hanzo-cpp/sdk',
description: 'Full cloud SDK for C++. Header-first and idiomatic, built from source.',
type: 'sdk',
categories: ['Developer Tools'],
// Was ['Rust'] -- the one entry in this catalog whose language disagreed
// with its own name, so it answered a filter for Rust and never for C++.
languages: ['C++'],
useCases: ['Inference Gateway'],
maturity: 'active',
deployment: ['library'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/sdks/cpp',
githubUrl: 'https://github.com/hanzo-cpp/sdk',
},
signals: {
updatedAt: '2026-01-06',
featured: false,
recommended: false,
deployable: false,
hotScore: 46,
},
icon: Code,
},
{
id: 'swift-sdk',
name: 'Swift SDK',
slug: 'hanzo-swift/sdk',
description: 'Full cloud SDK for Swift. Idiomatic async/await SwiftPM package for iOS, macOS, and server-side Swift.',
type: 'sdk',
categories: ['Developer Tools'],
languages: ['Swift'],
useCases: ['Inference Gateway'],
maturity: 'active',
deployment: ['library'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/sdks/swift',
githubUrl: 'https://github.com/hanzo-swift/sdk',
},
signals: {
updatedAt: '2026-07-25',
featured: false,
recommended: false,
deployable: false,
hotScore: 44,
},
icon: Code,
},
{
id: 'kotlin-sdk',
name: 'Kotlin SDK',
slug: 'hanzo-kt/sdk',
description: 'Full cloud SDK for Kotlin. Coroutine-native client for JVM and Android, installed from JitPack.',
type: 'sdk',
categories: ['Developer Tools'],
languages: ['Kotlin'],
useCases: ['Inference Gateway'],
maturity: 'active',
deployment: ['library'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/sdks/kotlin',
githubUrl: 'https://github.com/hanzo-kt/sdk',
},
signals: {
updatedAt: '2026-07-25',
featured: false,
recommended: false,
deployable: false,
hotScore: 42,
},
icon: Code,
},
// ===== SECURITY & GOVERNANCE =====
{
id: 'iam',
name: 'IAM',
slug: 'hanzoai/iam',
description: 'Identity and access management. RBAC, API keys, OAuth, and SSO.',
type: 'core',
categories: ['Security & Governance'],
languages: ['Go', 'TypeScript'],
useCases: ['Authentication'],
maturity: 'stable',
deployment: ['docker', 'k8s'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/projects/hanzoai/iam',
githubUrl: 'https://github.com/hanzoai/iam',
learnUrl: '/iam',
},
signals: {
updatedAt: '2026-01-10',
featured: false,
recommended: true,
deployable: true,
hotScore: 60,
},
icon: Key,
},
{
id: 'policy',
name: 'Policy Engine',
slug: 'hanzoai/authz',
description: 'Policy-as-code for AI governance. Define rules for model access, data handling, and compliance.',
type: 'core',
categories: ['Security & Governance', 'AI & Agents'],
languages: ['Go'],
useCases: ['Authentication'],
maturity: 'active',
deployment: ['docker', 'library'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/projects/hanzoai/authz',
// hanzoai/authz — "access control library for Go: ACL, RBAC, ABAC policy
// enforcement", which is this entry exactly. The docs link already said
// authz; only the repo name was invented, and hanzoai/policy never existed.
githubUrl: 'https://github.com/hanzoai/authz',
learnUrl: '/guard',
},
signals: {
updatedAt: '2026-01-09',
featured: false,
recommended: false,
deployable: true,
hotScore: 45,
},
icon: Shield,
},
{
id: 'approvals',
name: 'Approvals',
slug: 'hanzoai/approvals',
description: 'Human-in-the-loop approval workflows. Review gates for sensitive AI operations.',
type: 'tool',
categories: ['Security & Governance'],
languages: ['TypeScript'],
useCases: ['CI/CD'],
maturity: 'experimental',
deployment: ['docker'],
actions: {},
signals: {
updatedAt: '2026-01-05',
featured: false,
recommended: false,
deployable: true,
hotScore: 35,
},
icon: Lock,
},
// ===== DATABASES =====
{
id: 'sql',
name: 'SQL',
slug: 'hanzoai/sql',
description: 'Managed relational database with pgvector. SQL and vector search in one store.',
type: 'core',
categories: ['Databases & Search'],
languages: ['SQL'],
useCases: ['Vector Search', 'Data Pipeline'],
maturity: 'stable',
deployment: ['one-click', 'docker'],
actions: {
deployUrl: 'https://platform.hanzo.ai/deploy',
githubUrl: 'https://github.com/hanzoai/sql',
learnUrl: '/products/memory',
},
signals: {
updatedAt: '2026-01-08',
featured: false,
recommended: true,
deployable: true,
hotScore: 62,
},
icon: Database,
},
{
id: 'kv',
name: 'KV Store',
slug: 'hanzoai/kv',
description: 'Edge-optimized key-value store. Sub-millisecond reads with global replication.',
type: 'core',
categories: ['Databases & Search'],
languages: ['Rust'],
useCases: [],
maturity: 'stable',
deployment: ['one-click'],
actions: {
deployUrl: 'https://platform.hanzo.ai/deploy',
githubUrl: 'https://github.com/hanzoai/kv',
learnUrl: '/products/memory',
},
signals: {
updatedAt: '2026-01-06',
featured: false,
recommended: false,
deployable: true,
hotScore: 48,
},
icon: Database,
},
// ===== OBSERVABILITY =====
// ===== INFRASTRUCTURE =====
// ===== CONNECTORS =====
{
id: 'github-connector',
name: 'GitHub Connector',
slug: 'hanzoai/github-connector',
description: 'Sync GitHub repos, issues, and PRs. Bi-directional integration.',
type: 'connector',
categories: ['Integrations & Automation'],
languages: ['TypeScript'],
useCases: ['CI/CD'],
maturity: 'stable',
deployment: ['npm'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/integrations',
},
signals: {
updatedAt: '2026-01-10',
featured: false,
recommended: false,
deployable: false,
hotScore: 42,
},
icon: GitBranch,
},
{
id: 'slack-connector',
name: 'Slack Connector',
slug: 'hanzoai/slack-connector',
description: 'Slack integration for AI workflows. Commands, notifications, and threads.',
type: 'connector',
categories: ['Integrations & Automation'],
languages: ['TypeScript'],
useCases: [],
maturity: 'stable',
deployment: ['npm'],
actions: {
docsUrl: 'https://docs.hanzo.ai/docs/integrations',
},
signals: {
updatedAt: '2026-01-08',
featured: false,
recommended: false,
deployable: false,
hotScore: 38,
},
icon: MessageSquare,
},
// ===== HANZOAI — ECOMMERCE & LEGACY =====
{
id: 'form-js',
name: 'form.js',
slug: 'hanzoai/form.js',
description: 'Automagic forms.',
type: 'sdk',
categories: ['App Platform', 'Developer Tools'],
languages: ['CoffeeScript'],
useCases: [],
maturity: 'stable',
deployment: ['npm'],
actions: {
githubUrl: 'https://github.com/hanzoai/form.js',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: false,
deployable: false,
hotScore: 12,
},
icon: FileCode,
},
// ===== HANZOAI — AI PLATFORM CORE =====
{
id: 'hanzo-gui',
name: 'Hanzo GUI',
slug: 'hanzoai/gui',
description: 'Drag & drop UI to build your customized LLM flow and Agents.',
type: 'core',
categories: ['AI & Agents', 'App Platform'],
languages: ['TypeScript'],
useCases: ['Multi-agent', 'Data Pipeline'],
maturity: 'active',
deployment: ['docker', 'one-click'],
actions: {
docsUrl: 'https://docs.hanzo.ai',
githubUrl: 'https://github.com/hanzoai/gui',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: true,
hotScore: 70,
},
icon: Layers,
},
{
id: 'hanzo-iam',
name: 'Hanzo IAM',
slug: 'hanzoai/iam',
description: 'Identity and access management.',
type: 'core',
categories: ['Security & Governance'],
languages: ['Go'],
useCases: ['Authentication'],
maturity: 'stable',
deployment: ['docker', 'k8s'],
actions: {
docsUrl: 'https://docs.hanzo.ai',
githubUrl: 'https://github.com/hanzoai/iam',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: true,
hotScore: 60,
},
icon: Key,
},
{
id: 'hanzo-chat',
name: 'Hanzo Chat',
slug: 'hanzoai/chat',
description: 'AI chat with MCP integration and multi-provider support.',
type: 'tool',
categories: ['AI & Agents', 'App Platform'],
languages: ['HTML'],
useCases: ['Multi-agent'],
maturity: 'active',
deployment: ['docker'],
actions: {
docsUrl: 'https://docs.hanzo.ai',
githubUrl: 'https://github.com/hanzoai/chat',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: true,
hotScore: 68,
},
icon: MessageSquare,
},
// ===== HANZOAI — AI MODELS & INFERENCE =====
// ===== HANZOAI — PLATFORM & DEVOPS =====
{
id: 'hanzo-bot',
name: 'Hanzo Bot',
slug: 'hanzoai/bot',
description: 'Autonomous AI team in a box. Every role, every channel, every platform.',
type: 'core',
categories: ['AI & Agents', 'Integrations & Automation'],
languages: ['TypeScript'],
useCases: ['Multi-agent'],
maturity: 'active',
deployment: ['docker', 'npm'],
actions: {
docsUrl: 'https://docs.hanzo.ai',
githubUrl: 'https://github.com/hanzoai/bot',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: true,
hotScore: 66,
},
icon: Bot,
},
{
id: 'hanzo-base',
name: 'Hanzo Base',
slug: 'hanzoai/base',
description: 'Hanzo Base — Backend-as-a-Service with realtime and auth.',
type: 'core',
categories: ['App Platform', 'Infrastructure'],
languages: ['Go'],
useCases: ['Authentication'],
maturity: 'stable',
deployment: ['docker', 'k8s'],
actions: {
docsUrl: 'https://docs.hanzo.ai',
githubUrl: 'https://github.com/hanzoai/base',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: true,
hotScore: 65,
},
icon: Database,
},
{
id: 'hanzo-ui',
name: 'Hanzo UI',
slug: 'hanzoai/ui',
description: 'React component library for AI applications.',
type: 'sdk',
categories: ['App Platform', 'Developer Tools'],
languages: ['TypeScript'],
useCases: [],
maturity: 'stable',
deployment: ['npm'],
actions: {
docsUrl: 'https://docs.hanzo.ai',
githubUrl: 'https://github.com/hanzoai/ui',
npmUrl: 'https://npmjs.com/package/@hanzo/ui',
},
signals: {
updatedAt: '2026-02-28',
featured: true,
recommended: true,
deployable: false,
hotScore: 78,
},
icon: Layers,
},
// ===== HANZOAI — CRYPTO & SECURITY =====
// ===== HANZOAI — DOCS & GOVERNANCE =====
{
id: 'hanzo-hips',
name: 'HIPs',
slug: 'hanzoai/hips',
description: 'Hanzo Improvement Proposals.',
type: 'tool',
categories: ['Developer Tools'],
languages: ['HTML'],
useCases: [],
maturity: 'stable',
deployment: ['library'],
actions: {
githubUrl: 'https://github.com/hanzoai/hips',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: false,
deployable: false,
hotScore: 18,
},
icon: FileCode,
},
// ===== ZEN LM — OPEN-WEIGHT MODELS =====
{
id: 'zen-nano',
name: 'Zen Nano',
slug: 'zenlm/zen-nano',
description: '0.6B edge model — 40K context, optimized for on-device deployment.',
type: 'core',
categories: ['AI & Agents'],
languages: ['Python'],
useCases: ['Inference Gateway'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
githubUrl: 'https://github.com/zenlm/zen-nano',
learnUrl: 'https://huggingface.co/zenlm/zen-nano',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: false,
hotScore: 62,
},
icon: Sparkles,
},
{
id: 'zen4-mini',
name: 'Zen4 Mini',
slug: 'zenlm/zen4-mini',
description: '4B unbiased AI model — abliterated, edge deployment.',
type: 'core',
categories: ['AI & Agents'],
languages: ['Python'],
useCases: ['Inference Gateway'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
githubUrl: 'https://github.com/zenlm/zen4-mini',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: false,
hotScore: 60,
},
icon: Sparkles,
},
{
id: 'zen4',
name: 'Zen4',
slug: 'zenlm/zen4',
description: '8B dense model — abliterated open weights, refusal bias removed.',
type: 'core',
categories: ['AI & Agents'],
languages: ['Python'],
useCases: ['Inference Gateway'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
githubUrl: 'https://github.com/zenlm/zen4',
},
signals: {
updatedAt: '2026-02-28',
featured: true,
recommended: true,
deployable: false,
hotScore: 72,
},
icon: Sparkles,
},
{
id: 'zen4-pro',
name: 'Zen4 Pro',
slug: 'zenlm/zen4-pro',
description: '14B unbiased AI model.',
type: 'core',
categories: ['AI & Agents'],
languages: ['Python'],
useCases: ['Inference Gateway'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
githubUrl: 'https://github.com/zenlm/zen4-pro',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: false,
hotScore: 68,
},
icon: Sparkles,
},
{
id: 'zen4-max',
name: 'Zen4 Max',
slug: 'zenlm/zen4-max',
description: '30B MoE unbiased AI model — 3B active parameters, efficient inference.',
type: 'core',
categories: ['AI & Agents'],
languages: ['Python'],
useCases: ['Inference Gateway', 'Multi-agent'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
githubUrl: 'https://github.com/zenlm/zen4-max',
},
signals: {
updatedAt: '2026-02-28',
featured: true,
recommended: true,
deployable: false,
hotScore: 80,
},
icon: Brain,
},
{
id: 'zen4-ultra',
name: 'Zen4 Ultra',
slug: 'zenlm/zen4-ultra',
description: '1.04T MoE frontier model — 32B active parameters, 256K context.',
type: 'core',
categories: ['AI & Agents'],
languages: ['Python'],
useCases: ['Inference Gateway', 'Multi-agent', 'RAG'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
githubUrl: 'https://github.com/zenlm/zen4-ultra',
},
signals: {
updatedAt: '2026-02-28',
featured: true,
recommended: true,
deployable: false,
hotScore: 95,
},
icon: Brain,
},
{
id: 'zen4-coder',
name: 'Zen4 Coder',
slug: 'zenlm/zen4-coder',
description: '80B MoE code model — abliterated open weights for generation, review and debugging.',
type: 'core',
categories: ['AI & Agents', 'Developer Tools'],
languages: ['Python'],
useCases: ['Inference Gateway'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
githubUrl: 'https://github.com/zenlm/zen4-coder',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: false,
hotScore: 78,
},
icon: Code,
},
{
id: 'zen4-coder-flash',
name: 'Zen4 Coder Flash',
slug: 'zenlm/zen4-coder-flash',
description: '31B MoE fast code model — 131K context, 59.2% SWE-bench, tool calling.',
type: 'core',
categories: ['AI & Agents', 'Developer Tools'],
languages: ['Python'],
useCases: ['Inference Gateway', 'Multi-agent'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
githubUrl: 'https://github.com/zenlm/zen4-coder-flash',
},
signals: {
updatedAt: '2026-02-28',
featured: true,
recommended: true,
deployable: false,
hotScore: 88,
},
icon: Code,
},
{
id: 'zen-coder',
name: 'Zen Coder',
slug: 'zenlm/zen-coder',
description: '4B code model — edge deployment.',
type: 'core',
categories: ['AI & Agents', 'Developer Tools'],
languages: ['Python'],
useCases: ['Inference Gateway'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
githubUrl: 'https://github.com/zenlm/zen-coder',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: false,
hotScore: 65,
},
icon: Code,
},
{
id: 'zen-vl-4b',
name: 'Zen VL 4B',
slug: 'zenlm/zen-vl-4b-instruct',
description: '4B vision-language model — image analysis, OCR, multimodal reasoning.',
type: 'core',
categories: ['AI & Agents'],
languages: ['Python'],
useCases: ['Inference Gateway', 'RAG'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
learnUrl: 'https://huggingface.co/zenlm/zen-vl-4b-instruct',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: false,
hotScore: 58,
},
icon: Sparkles,
},
{
id: 'zen-vl-8b',
name: 'Zen VL 8B',
slug: 'zenlm/zen-vl-8b-instruct',
description: '8B vision-language model — 256K context, OCR across 32 languages.',
type: 'core',
categories: ['AI & Agents'],
languages: ['Python'],
useCases: ['Inference Gateway', 'RAG'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
learnUrl: 'https://huggingface.co/zenlm/zen-vl-8b-instruct',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: false,
hotScore: 62,
},
icon: Sparkles,
},
{
id: 'zen-vl-30b',
name: 'Zen VL 30B',
slug: 'zenlm/zen-vl-30b-instruct',
description: '30B MoE vision-language model — STEM/code multimodal reasoning.',
type: 'core',
categories: ['AI & Agents'],
languages: ['Python'],
useCases: ['Inference Gateway', 'RAG', 'Multi-agent'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
learnUrl: 'https://huggingface.co/zenlm/zen-vl-30b-instruct',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: false,
hotScore: 70,
},
icon: Brain,
},
{
id: 'zen-omni',
name: 'Zen Omni',
slug: 'zenlm/zen-omni',
description: 'Multimodal text + vision + audio model — cross-modal reasoning.',
type: 'core',
categories: ['AI & Agents'],
languages: ['Python'],
useCases: ['Inference Gateway', 'Multi-agent'],
maturity: 'stable',
deployment: ['pip', 'library'],
actions: {
githubUrl: 'https://github.com/zenlm/zen-omni',
learnUrl: 'https://huggingface.co/zenlm/zen-omni',
},
signals: {
updatedAt: '2026-02-28',
featured: true,
recommended: true,
deployable: false,
hotScore: 82,
},
icon: Brain,
},
{
id: 'zen4-ultra-trainer',
name: 'Zen4 Ultra Trainer',
slug: 'zenlm/zen4-ultra-trainer',
description: 'GT-QLoRA training for 1T MoE models — Gate-Targeted QLoRA for MoE uncensoring.',
type: 'tool',
categories: ['AI & Agents', 'Developer Tools'],
languages: ['Python'],
useCases: [],
maturity: 'experimental',
deployment: ['pip'],
actions: {
githubUrl: 'https://github.com/zenlm/zen4-ultra-trainer',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: false,
deployable: false,
hotScore: 45,
},
icon: Brain,
},
// ===== COMMUNITY ORGS =====
{
id: 'ellipsis',
name: 'Ellipsis',
slug: 'ellipsis/ellipsis',
description: 'Shell-based dotfiles package manager with extensions ecosystem.',
type: 'tool',
categories: ['Developer Tools'],
languages: ['Shell'],
useCases: [],
maturity: 'stable',
deployment: ['library'],
actions: {
githubUrl: 'https://github.com/ellipsis/ellipsis',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: false,
hotScore: 68,
},
icon: Terminal,
},
{
id: 'shop-js',
name: 'shop.js',
slug: 'shopjs/shop.js',
description: 'Full ecommerce UI framework.',
type: 'core',
categories: ['App Platform'],
languages: ['TypeScript'],
useCases: [],
maturity: 'stable',
deployment: ['npm'],
actions: {
githubUrl: 'https://github.com/shopjs/shop.js',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: true,
deployable: false,
hotScore: 75,
},
icon: Zap,
},
{
id: 'sake-cli',
name: 'Sake CLI',
slug: 'sakejs/sake-cli',
description: 'CoffeeScript/JS build tool, make-like task runner.',
type: 'tool',
categories: ['Developer Tools'],
languages: ['CoffeeScript'],
useCases: ['CI/CD'],
maturity: 'stable',
deployment: ['npm'],
actions: {
githubUrl: 'https://github.com/sakejs/sake-cli',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: false,
deployable: false,
hotScore: 42,
},
icon: Terminal,
},
{
id: 'sake-core',
name: 'Sake Core',
slug: 'sakejs/sake-core',
description: 'Sake build system core.',
type: 'tool',
categories: ['Developer Tools'],
languages: ['CoffeeScript'],
useCases: ['CI/CD'],
maturity: 'stable',
deployment: ['npm'],
actions: {
githubUrl: 'https://github.com/sakejs/sake-core',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: false,
deployable: false,
hotScore: 38,
},
icon: Terminal,
},
{
id: 'ethereum-reader',
name: 'Ethereum Reader',
slug: 'hanzo-labs/ethereum-reader',
description: 'Ethereum blockchain reader.',
type: 'core',
categories: ['Infrastructure', 'Databases & Search'],
languages: ['Go'],
useCases: ['Data Pipeline'],
maturity: 'stable',
deployment: ['library'],
actions: {
githubUrl: 'https://github.com/hanzo-labs/ethereum-reader',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: false,
deployable: false,
hotScore: 32,
},
icon: Database,
},
{
id: 'hanzo-react',
name: 'Hanzo React',
slug: '@hanzo/react',
description: 'React primitives for Hanzo.',
type: 'sdk',
categories: ['App Platform', 'Developer Tools'],
languages: ['TypeScript'],
useCases: [],
maturity: 'stable',
deployment: ['npm'],
actions: {
npmUrl: 'https://npmjs.com/package/@hanzo/react',
},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: false,
deployable: false,
hotScore: 35,
},
icon: Layers,
},
{
id: 'hanzo-next',
name: 'Hanzo Next',
slug: 'hanzo-js/next',
description: 'Next.js integration for Hanzo.',
type: 'sdk',
categories: ['App Platform', 'Developer Tools'],
languages: ['TypeScript'],
useCases: [],
maturity: 'stable',
deployment: ['npm'],
actions: {},
signals: {
updatedAt: '2026-02-28',
featured: false,
recommended: false,
deployable: false,
hotScore: 35,
},
icon: Layers,
},
];
// =============================================================================
// HELPER FUNCTIONS
// =============================================================================
export function getRepoById(id: string): OSSRepo | undefined {
return ossCatalog.find(repo => repo.id === id);
}
export function getReposByType(type: RepoType): OSSRepo[] {
return ossCatalog.filter(repo => repo.type === type);
}
export function getReposByCategory(category: string): OSSRepo[] {
return ossCatalog.filter(repo => repo.categories.includes(category));
}
export function getFeaturedRepos(): OSSRepo[] {
return ossCatalog.filter(repo => repo.signals.featured);
}
export function getRecommendedRepos(): OSSRepo[] {
return ossCatalog.filter(repo => repo.signals.recommended);
}
export function sortByHot(repos: OSSRepo[]): OSSRepo[] {
return [...repos].sort((a, b) => b.signals.hotScore - a.signals.hotScore);
}
export function sortByRecent(repos: OSSRepo[]): OSSRepo[] {
return [...repos].sort((a, b) =>
new Date(b.signals.updatedAt).getTime() - new Date(a.signals.updatedAt).getTime()
);
}
export function filterRepos(
repos: OSSRepo[],
filters: {
types?: RepoType[];
categories?: string[];
languages?: string[];
useCases?: string[];
maturity?: Maturity[];
deployment?: DeploymentType[];
search?: string;
}
): OSSRepo[] {
return repos.filter(repo => {
if (filters.types?.length && !filters.types.includes(repo.type)) return false;
if (filters.categories?.length && !filters.categories.some(c => repo.categories.includes(c))) return false;
if (filters.languages?.length && !filters.languages.some(l => repo.languages.includes(l))) return false;
if (filters.useCases?.length && !filters.useCases.some(u => repo.useCases.includes(u))) return false;
if (filters.maturity?.length && !filters.maturity.includes(repo.maturity)) return false;
if (filters.deployment?.length && !filters.deployment.some(d => repo.deployment.includes(d))) return false;
if (filters.search) {
const search = filters.search.toLowerCase();
return (
repo.name.toLowerCase().includes(search) ||
repo.description.toLowerCase().includes(search) ||
repo.slug.toLowerCase().includes(search)
);
}
return true;
});
}