1{
2 lib,
3 buildPythonPackage,
4 email-validator,
5 fetchFromGitHub,
6 hatchling,
7 jinja2,
8 lxml,
9 ollama,
10 pydantic,
11 pytest-dotenv,
12 pytest-factoryboy,
13 pytest-mock,
14 pytestCheckHook,
15 pyyaml,
16}:
17
18buildPythonPackage rec {
19 pname = "beanhub-inbox";
20 version = "0.2.3";
21 pyproject = true;
22
23 src = fetchFromGitHub {
24 owner = "LaunchPlatform";
25 repo = "beanhub-inbox";
26 tag = version;
27 hash = "sha256-WWfZsJRm2rJI85vmFt/AtV++5vpSTJZpRrk3PdHMhAA=";
28 };
29
30 build-system = [ hatchling ];
31
32 dependencies = [
33 email-validator
34 jinja2
35 lxml
36 ollama
37 pydantic
38 pyyaml
39 ];
40
41 nativeCheckInputs = [
42 pytest-dotenv
43 pytest-factoryboy
44 pytest-mock
45 pytestCheckHook
46 ];
47
48 pythonImportsCheck = [ "beanhub_inbox" ];
49
50 meta = {
51 description = "Email processing engine for archiving and extracting financial data with LLM";
52 homepage = "https://github.com/LaunchPlatform/beanhub-inbox";
53 changelog = "https://github.com/LaunchPlatform/beanhub-inbox/releases/tag${src.tag}";
54 license = lib.licenses.mit;
55 maintainers = with lib.maintainers; [ fab ];
56 };
57}