mirror of
https://github.com/hanzoai/python-sdk.git
synced 2026-10-23 20:23:00 +00:00
Add FastAPI registry server that pre-fetches all component data from hanzoai/ui on GitHub, caches in memory, refreshes every 15min. Serves instant cached responses. Deploy at ui.hanzo.ai. - registry/cache.py: eager full-cache with concurrent GitHub fetching - registry/server.py: FastAPI endpoints for components, blocks, search - registry/client.py: RegistryClient matching GitHubAPIClient interface - Dockerfile for containerized deployment - UiTool now uses 3-tier fallback: local disk → registry → GitHub API - Bump hanzo-tools-ui to 0.2.0, server deps optional (fastapi, uvicorn)
74 lines
1.5 KiB
TOML
74 lines
1.5 KiB
TOML
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "hanzo-tools-ui"
|
|
version = "0.2.0"
|
|
description = "UI component registry tools and server for Hanzo AI (HIP-0300)"
|
|
readme = "README.md"
|
|
license = "MIT"
|
|
requires-python = ">=3.12"
|
|
authors = [
|
|
{ name = "Hanzo AI Team", email = "[email protected]" },
|
|
]
|
|
keywords = [
|
|
"hanzo",
|
|
"mcp",
|
|
"tools",
|
|
"ui",
|
|
"components",
|
|
"shadcn",
|
|
"registry",
|
|
]
|
|
classifiers = [
|
|
"Development Status :: 4 - Beta",
|
|
"Intended Audience :: Developers",
|
|
"License :: OSI Approved :: MIT License",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.12",
|
|
]
|
|
dependencies = [
|
|
"hanzo-tools-core>=0.1.0",
|
|
"mcp>=1.0.0",
|
|
"httpx>=0.25.0",
|
|
"aiofiles>=24.0.0",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
server = [
|
|
"fastapi>=0.115.0",
|
|
"uvicorn[standard]>=0.34.0",
|
|
]
|
|
dev = [
|
|
"pytest>=8.0.0",
|
|
"pytest-asyncio>=0.23.0",
|
|
"ruff>=0.1.0",
|
|
]
|
|
|
|
[project.scripts]
|
|
hanzo-ui-registry = "hanzo_tools.ui.registry.__main__:main"
|
|
|
|
[project.entry-points."hanzo.tools"]
|
|
ui = "hanzo_tools.ui:TOOLS"
|
|
|
|
[project.urls]
|
|
Homepage = "https://github.com/hanzoai/python-sdk"
|
|
Documentation = "https://docs.hanzo.ai"
|
|
Repository = "https://github.com/hanzoai/python-sdk"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["hanzo_tools"]
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
target-version = "py312"
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "I", "UP"]
|
|
ignore = ["E501"]
|
|
|
|
[tool.pytest.ini_options]
|
|
asyncio_mode = "auto"
|
|
testpaths = ["tests"]
|