# ===== Project info [project] dynamic = ["version"] name = "fastplotlib" description = "Next-gen fast plotting library running on WGPU using the Pygfx rendering engine " readme = "README.md" license = { file = "LICENSE" } authors = [{ name = "Kushal Kolar" }, { name = "Caitlin Lewis" }] keywords = [ "visualization", "science", "interactive", "pygfx", "webgpu", "wgpu", "vulkan", "gpu", ] requires-python = ">= 3.10" dependencies = [ "numpy>=1.23.0", "pygfx==0.16.0", "wgpu", # Let pygfx constrain the wgpu version "cmap>=0.1.3", # (this comment keeps this list multiline in VSCode) ] [project.optional-dependencies] docs = [ "sphinx", "sphinx-gallery", "pydata-sphinx-theme", "glfw", "ipywidgets>=8.0.0,<9", "sphinx-copybutton", "sphinx-design", "pandoc", "imageio[ffmpeg]", "matplotlib", "scikit-learn", "ome-zarr", ] notebook = [ "jupyterlab", "jupyter-rfb>=0.5.1", "ipywidgets>=8.0.0,<9", "sidecar", "simplejpeg", ] tests = [ "pytest", "nbmake", "black", "scipy", "imageio[ffmpeg]", "scikit-learn", "tqdm", "ome-zarr", ] imgui = ["wgpu[imgui]"] dev = ["fastplotlib[docs,notebook,tests,imgui]"] [project.urls] Homepage = "https://www.fastplotlib.org/" Documentation = "https://www.fastplotlib.org/" Repository = "https://github.com/fastplotlib/fastplotlib" # ===== Building [build-system] requires = ["flit_core >=3.2,<4"] build-backend = "flit_core.buildapi" # ===== Tooling # [tool.ruff] # line-length = 88 # [tool.ruff.lint] # select = ["F", "E", "W", "N", "B", "RUF", "TC"] # ignore = [ # "E501", # Line too long # "E731", # Do not assign a `lambda` expression, use a `def` # "B019", # Use of `functools.lru_cache` or `functools.cache` on methods can lead to memory leaks # "RUF012", # Mutable class attributes should be annotated with `typing.ClassVar`" # ]