File size: 2,513 Bytes
fe76e4e
3e017d0
fe76e4e
ddebfca
fe76e4e
c577568
fe76e4e
 
 
 
 
 
 
 
c577568
fe76e4e
7d647f8
be7fff5
 
145d037
3e017d0
c4e194f
145d037
 
 
4f44d99
e1a2778
 
 
 
 
 
 
 
5b693bc
e1e5b1c
d1bbedf
e1a2778
 
 
 
 
19e2687
e1a2778
 
 
 
 
 
 
 
4f44d99
e1e5b1c
 
c6f940a
e1e5b1c
 
c6f940a
e1e5b1c
 
4f44d99
 
 
 
 
 
 
 
fe76e4e
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# LynxKite 2000:MM

LynxKite 2000:MM is a GPU-accelerated data science platform and a general tool for collaboratively edited workflows.

Features include:

- A web UI for building and executing data science workflows.
- An extensive toolbox of graph analytics operations powered by NVIDIA RAPIDS (CUDA).
- An integrated collaborative code editor makes it easy to add new operations.
- An environment for visually designing neural network model architectures.
- The infrastructure for easily creating other workflow design environments. See `lynxkite-pillow-example` for a simple example.

This is the next evolution of the classical [LynxKite](https://github.com/lynxkite/lynxkite).
The two tools offer similar functionality, but are not compatible.
This version runs on GPU clusters instead of Hadoop clusters.
It targets CUDA instead of Apache Spark. It is much more extensible.

Check out our [**online demo**](https://lynx-analytics-lynxkite.hf.space/).

## Structure

- `lynxkite-core`: Core types and utilities. Depend on this lightweight package if you are writing LynxKite plugins.
- `lynxkite-app`: The LynxKite web application. Install some plugins then run this to use LynxKite.
- `lynxkite-graph-analytics`: Graph analytics plugin. The classical LynxKite experience!
- `lynxkite-pillow`: A simple example plugin.
- `docs`: User-facing documentation. It's shared between all packages.

## Development

Install everything like this:

```bash
uv venv
source .venv/bin/activate
uvx pre-commit install
# The [dev] tag is only needed if you intend on running tests
uv pip install -e lynxkite-core/[dev] -e lynxkite-app/[dev] -e lynxkite-graph-analytics/[dev] -e lynxkite-pillow-example/
```

This also builds the frontend, hopefully very quickly. To run it:

```bash
cd examples && lynxkite
```

If you also want to make changes to the frontend with hot reloading:

```bash
cd lynxkite-app/web
npm run dev
```

## Executing tests

Run all tests with a single command, or look inside to see how to run them individually:

```bash
./test.sh
```

## Documentation

To work on the documentation:

```bash
uv pip install mkdocs-material mkdocstrings[python]
mkdocs serve
```

## License

LynxKite 2000:MM is licensed under the GNU AGPLv3. See the [LICENSE](LICENSE) file for details.

[Lynx Analytics](https://www.lynxanalytics.com/) offers a commercial license of LynxKite 2000:MM
that includes additional features and support. Get in touch if you are interested in life sciences tools
and cluster deployment!