diff --git a/packages/py-cobrawap/package.py b/packages/py-cobrawap/package.py
new file mode 100644
index 0000000000000000000000000000000000000000..f1f0b00dc8f275f205cf1b31cc4adc8c07ae9a04
--- /dev/null
+++ b/packages/py-cobrawap/package.py
@@ -0,0 +1,58 @@
+# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack.package import *
+
+
+class PyCobrawap(PythonPackage):
+    """
+    Collaborative Brain Wave Analysis Pipeline (Cobrawap)
+    """
+
+    homepage = "https://cobrawap.readthedocs.io"
+    pypi = "cobrawap/cobrawap-0.1.0.tar.gz"
+    git = "https://github.com/NeuralEnsemble/cobrawap.git"
+
+    maintainers = ["lupoc"]
+
+    #license("UNKNOWN", checked_by="github_user1")
+
+    version("0.1.0", sha256="23bbbd3e25c06e179d88388250578e51e54632c2af409157a396a2e29271d3f9")
+    version("0.1.1", sha256="73d0c2c7053948d377030b29ff7839c5a346d4e65bb91d50173993e70e75d204")
+    version("0.2.0", sha256="5ee0dc064d60b95dde75f693817b2b59c1de3601ba19b7d70dae240da14d71d2")
+    version("0.2.1", sha256="1dffdcfb8b82eae2a4d67b0c2b97842f21a30333803df05c57a12392a905c2f2")
+
+    depends_on("python@3.8:", type=("build", "run"), when="@0.1:")
+
+    depends_on("py-setuptools", type="build")
+    depends_on("py-flit-core@3.2:3", type="build", when="@0.1:")
+
+    depends_on("py-ruamel-yaml@0.17.32:", type=("build", "run"), when="@0.1:")
+    depends_on("py-jinja2@2.10.3:", type=("build", "run"), when="@0.1:")
+    depends_on("py-scipy@1.7.3:", type=("build", "run"), when="@0.1:")
+    depends_on("py-pygments@2.4.2:", type=("build", "run"), when="@0.1:")
+    depends_on("snakemake@7.10:", type=("build", "run"), when="@0.1.0")
+    depends_on("snakemake@7.10:7", type=("build", "run"), when="@0.1.1:")
+    depends_on("py-h5py", type=("build", "run"), when="@0.1:")
+    depends_on("py-shapely", type=("build", "run"), when="@0.1:")
+    depends_on("py-elephant@1:", type=("build", "run"), when="@0.1:")
+    depends_on("py-neo@0.10.2:", type=("build", "run"), when="@0.1:")
+    depends_on("py-nixio@1.5.3:", type=("build", "run"), when="@0.1:")
+    depends_on("py-pillow@7:", type=("build", "run"), when="@0.1:")
+    depends_on("py-pandas@1.2:", type=("build", "run"), when="@0.1:")
+    depends_on("py-scikit-learn@1.1:", type=("build", "run"), when="@0.1:")
+    depends_on("py-scikit-image@0.19:", type=("build", "run"), when="@0.1:")
+    depends_on("py-matplotlib@3.5.1:", type=("build", "run"), when="@0.1:")
+    depends_on("py-seaborn", type=("build", "run"), when="@0.1:")
+    depends_on("py-networkx", type=("build", "run"), when="@0.1:")
+
+    @run_after("install")
+    @on_package_attributes(run_tests=True)
+    def init_test(self):
+        # run test here
+        cobrawap = Executable(self.prefix.bin + "/cobrawap")
+        cobrawap("init", "--output_path", "/tmp/output_path", "--config_path", "/tmp/config_path")
+        cobrawap("settings")
+        # test_dataset_url = "https://object.cscs.ch/v1/AUTH_63ea6845b1d34ad7a43c8158d9572867/hbp-d000036_m-SWA-WF-wide-regions-v2_pub/m-SWA-WF-wide-regions/GCaMP6f_Ketamine%20I/t3.rar"
diff --git a/spack.yaml b/spack.yaml
index beaf68f9b2a859e7365f33ae0941e3f597a548a7..3b51b04df2f1d3f1ccd03e86b1a03273449e3a3b 100644
--- a/spack.yaml
+++ b/spack.yaml
@@ -25,6 +25,7 @@ spack:
     - py-bsb-json@4.2.2
     - py-bsb-nest@4.3.2
     - py-bsb-neuron@4.2.2
+    - py-cobrawap@0.2.1
     - py-ebrains-drive@0.6.0
     - py-ebrains-kg-core@0.9.15
     - py-ebrains-validation-client@0.9.1