File size: 1,310 Bytes
4753515
 
 
 
 
aee77fd
a6cf941
93bd7fb
4753515
a6cf941
4753515
aee77fd
88b029f
4753515
1805600
 
f403842
1805600
a6cf941
1805600
0333a17
 
 
1805600
06f924e
efaa99d
f403842
 
 
 
 
4753515
aee77fd
4753515
100024e
0333a17
 
 
 
 
f403842
582e94d
f403842
100024e
f6427c1
 
 
 
 
 
 
f5605ad
aee77fd
4753515
a6cf941
100024e
f5605ad
 
 
100024e
 
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
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"

[project]
name = "ankigen"
version = "0.2.0"
description = "AI-powered Anki flashcard generator using OpenAI GPT models with CLI and web interface"
authors = [
    { name = "Justin", email = "9146678+brickfrog@users.noreply.github.com" },
]
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
    "openai>=2.21.0",
    "openai-agents>=0.9.3",
    "gradio>=6.7.0",
    "tenacity>=9.1.4",
    "genanki>=0.13.1",
    "pydantic>=2.12.5",
    "pandas>=2.3.2",
    "beautifulsoup4==4.13.5",
    "lxml>=6.0.2",
    "tiktoken>=0.12.0",
    "starlette>=0.49.1",
    "brotli>=1.2.0",
    "filelock>=3.20.3",
    "orjson>=3.11.5",
    "pillow>=12.1.1",
    "python-multipart>=0.0.22",
    "urllib3>=2.6.3",
]

[project.optional-dependencies]
dev = [
    "pytest>=8.4.2",
    "pytest-cov>=7.0.0",
    "pytest-mock>=3.15.1",
    "ruff>=0.13.1",
    "black>=25.9.0",
    "pre-commit>=4.5.1",
    "pytest-anyio>=0.0.0",
    "virtualenv>=20.36.1",
]
cli = [
    "click>=8.1.0",
    "rich>=13.0.0",
    "python-dotenv>=1.0.0",
]

[project.scripts]
ankigen = "ankigen.cli:main"

[tool.setuptools]
py-modules = ["app"]

[tool.setuptools.packages.find]
include = ["ankigen*"]

[tool.pytest.ini_options]
anyio_backend = "asyncio"