mirror of
https://github.com/hanzoai/flow.git
synced 2026-10-17 01:29:18 +00:00
docs: update LLM.md with new package architecture after flow rename
This commit is contained in:
@@ -1,40 +1,57 @@
|
||||
# LLM.md - Hanzo Flow
|
||||
|
||||
## Overview
|
||||
**Hanzo Flow** is a powerful platform for building and deploying AI-powered agents and workflows. It provides developers with both a visual authoring experience and built-in API and MCP servers that t
|
||||
**Hanzo Flow** is a powerful platform for building and deploying AI-powered agents and workflows. It provides developers with both a visual authoring experience and built-in API and MCP servers.
|
||||
|
||||
## Tech Stack
|
||||
- **Language**: TypeScript/JavaScript
|
||||
- **Backend**: Python (FastAPI, SQLModel, Alembic)
|
||||
- **Frontend**: TypeScript/React (Next.js)
|
||||
- **Package manager**: `uv` (Python), `pnpm` (Node.js)
|
||||
|
||||
## Build & Run
|
||||
```bash
|
||||
npm install && npm run build
|
||||
npm test
|
||||
uv sync --all-extras # Install Python deps
|
||||
make dev # Start dev server
|
||||
make test # Run tests
|
||||
```
|
||||
|
||||
## Structure
|
||||
```
|
||||
flow/
|
||||
AGENTS.md
|
||||
CODE_OF_CONDUCT.md
|
||||
CONTRIBUTING.md
|
||||
DEVELOPMENT.md
|
||||
Dockerfile
|
||||
GEMINI.md
|
||||
LICENSE
|
||||
LLM.md
|
||||
Makefile
|
||||
Makefile.frontend
|
||||
QWEN.md
|
||||
README.md
|
||||
RELEASE.md
|
||||
SECURITY.md
|
||||
codecov.yml
|
||||
```
|
||||
## Package Architecture (2026-03-25)
|
||||
|
||||
Three Python packages in a uv workspace:
|
||||
|
||||
| Package | PyPI name | Dir | Purpose |
|
||||
|---------|-----------|-----|---------|
|
||||
| `flow` | `langflow-base` | `src/backend/base/flow/` | Main backend package (454 files) |
|
||||
| `flow` (root) | `hanzoflow` | `src/backend/flow/` | Root package (version only) |
|
||||
| `lfx` | `lfx` | `src/lfx/src/lfx/` | Lightweight executor, standalone CLI |
|
||||
|
||||
### Internal package name: `flow`
|
||||
- All Python imports use `from flow.xxx` / `import flow.xxx`
|
||||
- Entry point: `hanzo-flow = "flow.launcher:main"` (root pyproject.toml)
|
||||
- Entry point: `langflow-base = "flow.launcher:main"` (base pyproject.toml)
|
||||
- Hatch build target: `packages = ["flow"]` (base), `packages = ["src/backend/flow"]` (root)
|
||||
- The `langflow` compat shim package has been removed (was at `src/backend/base/langflow/`)
|
||||
- The `hanzoflow` package dir has been renamed to `flow`
|
||||
|
||||
### PyPI package names (unchanged)
|
||||
- `hanzoflow` -- root package name in pyproject.toml
|
||||
- `langflow-base` -- base package name in pyproject.toml
|
||||
- `lfx` -- executor package name
|
||||
|
||||
### Environment variables (backwards compat)
|
||||
- `LANGFLOW_*` env vars are kept for backwards compatibility (e.g. `LANGFLOW_DATABASE_URL`, `LANGFLOW_LOG_LEVEL`)
|
||||
- These are defined in `lfx/src/lfx/services/settings/base.py` via pydantic-settings
|
||||
|
||||
### Key classes
|
||||
- `FlowApplication` -- Gunicorn application class (`flow.server`)
|
||||
- `FlowUvicornWorker` -- Uvicorn worker class (`flow.server`)
|
||||
|
||||
## Key Files
|
||||
- `README.md` -- Project documentation
|
||||
- `package.json` -- Dependencies and scripts
|
||||
- `pyproject.toml` -- Python project config
|
||||
- `pyproject.toml` -- Root project config (PyPI name: hanzoflow)
|
||||
- `src/backend/base/pyproject.toml` -- Base package config (PyPI name: langflow-base)
|
||||
- `src/backend/base/flow/launcher.py` -- Main entry point (was langflow_launcher.py)
|
||||
- `src/backend/base/flow/__main__.py` -- CLI commands (typer app)
|
||||
- `src/backend/base/flow/main.py` -- FastAPI app factory
|
||||
- `src/backend/base/flow/alembic/` -- Database migrations
|
||||
- `Dockerfile` -- Production container
|
||||
- `Makefile` -- Build automation
|
||||
- `Dockerfile` -- Container build
|
||||
|
||||
Reference in New Issue
Block a user