PlanOpticon

planopticon / pyproject.toml
Blame History Raw 143 lines
1
[build-system]
2
requires = ["setuptools>=69.0", "wheel"]
3
build-backend = "setuptools.build_meta"
4
5
[project]
6
name = "planopticon"
7
version = "0.5.0"
8
description = "AI-powered video analysis and knowledge extraction tool"
9
readme = "README.md"
10
license = "MIT"
11
requires-python = ">=3.10"
12
authors = [
13
{ name = "CONFLICT LLC" },
14
]
15
keywords = ["video", "analysis", "ai", "knowledge-extraction", "transcription", "diagrams"]
16
classifiers = [
17
"Development Status :: 4 - Beta",
18
"Intended Audience :: Developers",
19
"Intended Audience :: Science/Research",
20
"Operating System :: OS Independent",
21
"Programming Language :: Python :: 3",
22
"Programming Language :: Python :: 3.10",
23
"Programming Language :: Python :: 3.11",
24
"Programming Language :: Python :: 3.12",
25
"Programming Language :: Python :: 3.13",
26
"Topic :: Multimedia :: Video",
27
"Topic :: Scientific/Engineering :: Artificial Intelligence",
28
]
29
30
dependencies = [
31
"numpy>=1.24.0",
32
"opencv-python>=4.8.0",
33
"scipy>=1.10.0",
34
"pillow>=10.0.0",
35
"matplotlib>=3.7.0",
36
"pydantic>=2.0.0",
37
"tqdm>=4.66.0",
38
"colorlog>=6.7.0",
39
"click>=8.1.0",
40
"librosa>=0.10.0",
41
"soundfile>=0.12.0",
42
"openai>=1.0.0",
43
"anthropic>=0.5.0",
44
"google-genai>=1.0.0",
45
"markdown>=3.4.0",
46
"mermaid-py>=0.5.0",
47
"plotly>=5.18.0",
48
"kaleido>=0.2.1",
49
"python-dotenv>=1.0.0",
50
"requests>=2.31.0",
51
"tenacity>=8.2.0",
52
]
53
54
[project.optional-dependencies]
55
pdf = ["pymupdf>=1.24.0"]
56
exports = ["reportlab>=4.0", "python-pptx>=1.0"]
57
gpu = ["torch>=2.0.0", "torchvision>=0.15.0"]
58
gdrive = ["google-auth>=2.0.0", "google-auth-oauthlib>=1.0.0", "google-api-python-client>=2.0.0"]
59
dropbox = ["dropbox>=12.0.0"]
60
azure = ["openai>=1.0.0"]
61
together = ["openai>=1.0.0"]
62
fireworks = ["openai>=1.0.0"]
63
cerebras = ["openai>=1.0.0"]
64
xai = ["openai>=1.0.0"]
65
bedrock = ["boto3>=1.28"]
66
vertex = ["google-cloud-aiplatform>=1.38"]
67
mistral = ["mistralai>=1.0"]
68
cohere = ["cohere>=5.0"]
69
ai21 = ["ai21>=3.0"]
70
huggingface = ["huggingface_hub>=0.20"]
71
qianfan = ["qianfan>=0.4"]
72
litellm = ["litellm>=1.0"]
73
youtube = ["yt-dlp>=2023.0"]
74
s3 = ["boto3>=1.28"]
75
web = ["beautifulsoup4>=4.12"]
76
rss = ["feedparser>=6.0"]
77
graph = []
78
cloud = [
79
"planopticon[gdrive]",
80
"planopticon[dropbox]",
81
"planopticon[s3]",
82
]
83
sources = [
84
"planopticon[youtube]",
85
"planopticon[web]",
86
"planopticon[rss]",
87
]
88
dev = [
89
"pytest>=7.3.0",
90
"pytest-cov>=4.1.0",
91
"black>=23.3.0",
92
"isort>=5.12.0",
93
"mypy>=1.3.0",
94
"ruff>=0.1.0",
95
]
96
all = [
97
"planopticon[pdf]",
98
"planopticon[cloud]",
99
"planopticon[graph]",
100
"planopticon[dev]",
101
]
102
103
[project.urls]
104
Homepage = "https://planopticon.dev"
105
Documentation = "https://planopticon.dev"
106
Repository = "https://github.com/ConflictHQ/PlanOpticon"
107
Issues = "https://github.com/ConflictHQ/PlanOpticon/issues"
108
109
[project.scripts]
110
planopticon = "video_processor.cli.commands:main"
111
112
[tool.setuptools.packages.find]
113
include = ["video_processor*"]
114
115
[tool.black]
116
line-length = 100
117
target-version = ["py310"]
118
119
[tool.isort]
120
profile = "black"
121
line_length = 100
122
123
[tool.ruff]
124
line-length = 100
125
target-version = "py310"
126
127
[tool.ruff.lint]
128
select = ["E", "F", "W", "I"]
129
130
[tool.ruff.lint.per-file-ignores]
131
"video_processor/utils/prompt_templates.py" = ["E501"]
132
"video_processor/api/openapi_spec.py" = ["E501"]
133
134
[tool.mypy]
135
python_version = "3.10"
136
warn_return_any = true
137
warn_unused_configs = true
138
139
[tool.pytest.ini_options]
140
testpaths = ["tests"]
141
python_files = "test_*.py"
142
addopts = "--cov=video_processor"
143

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button