1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 # build-system
7 setuptools,
8
9 # dependencies
10 jinja2,
11 numpy,
12 scikit-learn,
13 scipy,
14
15 # tests
16 anywidget,
17 igraph,
18 ipywidgets,
19 matplotlib,
20 networkx,
21 plotly,
22 pytestCheckHook,
23}:
24
25buildPythonPackage rec {
26 pname = "kmapper";
27 version = "2.1.0";
28 pyproject = true;
29
30 src = fetchFromGitHub {
31 owner = "scikit-tda";
32 repo = "kepler-mapper";
33 tag = "v${version}";
34 hash = "sha256-i909J0yI8v8BqGbCkcjBAdA02Io+qpILdDkojZj0wv4=";
35 };
36
37 build-system = [ setuptools ];
38
39 dependencies = [
40 jinja2
41 numpy
42 scikit-learn
43 scipy
44 ];
45
46 pythonImportsCheck = [ "kmapper" ];
47
48 nativeCheckInputs = [
49 anywidget
50 igraph
51 ipywidgets
52 matplotlib
53 networkx
54 plotly
55 pytestCheckHook
56 ];
57
58 meta = {
59 description = "Python implementation of Mapper algorithm for Topological Data Analysis";
60 homepage = "https://kepler-mapper.scikit-tda.org/";
61 changelog = "https://github.com/scikit-tda/kepler-mapper/releases/tag/v${version}";
62 license = lib.licenses.mit;
63 maintainers = [ ];
64 };
65}