Metadata-Version: 2.4
Name: lynxkite-app
Version: 0.2.1
Summary: The LynxKite application, with web server and UI
Project-URL: Homepage, https://github.com/lynxkite/lynxkite-2000/
Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: fastapi[standard]>=0.115.6
Requires-Dist: griffe>=1.7.3
Requires-Dist: joblib>=1.5.1
Requires-Dist: lynxkite-core
Requires-Dist: pycrdt-websocket>=0.16
Requires-Dist: pycrdt>=0.12.26
Requires-Dist: pydantic>=2.11.7
Requires-Dist: sse-starlette>=2.2.1
Requires-Dist: uvicorn>=0.35.0

# LynxKite MM

This is an experimental rewrite of [LynxKite](https://github.com/lynxkite/lynxkite). It is not compatible with the
original LynxKite. The primary goals of this rewrite are:

- Target GPU clusters instead of Hadoop clusters. We use Python instead of Scala, RAPIDS instead of Apache Spark.
- More extensible backend. Make it easy to add new LynxKite boxes. Make it easy to use our frontend for other purposes,
  configuring and executing other pipelines.

## Development

To run the backend:

```bash
uv pip install -e .
cd ../examples && LYNXKITE_RELOAD=1 lynxkite
```

To run the frontend:

```bash
cd web
npm i
npm run dev
```

To update the frontend types with the backend types:

```bash
$ uv run pydantic2ts --module lynxkite_app.main --output ./web/src/apiTypes.ts --json2ts-cmd "npx json-schema-to-typescript"
```
