diff --git a/packages/py-bsb-hdf5/package.py b/packages/py-bsb-hdf5/package.py
new file mode 100644
index 0000000000000000000000000000000000000000..bd50769da23633e89ecba2c7ba4663f8d2bec3c7
--- /dev/null
+++ b/packages/py-bsb-hdf5/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2023 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 PyBsbHdf5(PythonPackage):
+    """An HDF-5 based storage engine for the BSB framework."""
+
+    homepage = "https://github.com/dbbs-lab/bsb-hdf5"
+    url = "https://pypi.org/packages/py3/b/bsb_hdf5/bsb_hdf5-0.8.3-py3-none-any.whl"
+
+    maintainers = ["helveg"]
+
+    version('0.8.3', sha256="38162bfe9470b87cb30a2bff78dce68fc1b97f2df7d7e3b288c16b671f7579e5", expand=False)
+
+    depends_on("py-setuptools", type="build")
+    # depends_on("py-bsb@4.0.0a57:")
+    depends_on("py-shortuuid")
+    depends_on("py-h5py@3.0:")
diff --git a/packages/py-bsb/package.py b/packages/py-bsb/package.py
new file mode 100644
index 0000000000000000000000000000000000000000..fad71af2ccb4cd0c653c7334fee9f33250b742c6
--- /dev/null
+++ b/packages/py-bsb/package.py
@@ -0,0 +1,51 @@
+# Copyright 2013-2023 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 PyBsb(PythonPackage):
+    """
+    The BSB is a component framework for neural modeling, which focuses on component
+    declarations to piece together a model.
+    """
+
+    homepage = "https://bsb.readthedocs.io"
+    url = "https://pypi.org/packages/py3/b/bsb/bsb-4.0.0a57-py3-none-any.whl"
+
+    maintainers = ["helveg"]
+
+    version("4.0.0a57", sha256="5da15799aa8994894ff5371561d534b43beffaa79461189c94080071359f4076", expand=False)
+
+    depends_on("python@3.8:", type=("build", "run"))
+    depends_on("py-setuptools", type="build")
+    depends_on("py-numpy@1.19:")
+    depends_on("py-scipy@1.5:")
+    depends_on("py-scikit-learn@1.0:")
+    depends_on("py-plotly")
+    depends_on("py-rtree@1.0:")
+    depends_on("py-psutil@5.8:")
+    depends_on("py-pynrrd@1.0:")
+    depends_on("py-toml")
+    depends_on("py-requests")
+    depends_on("py-appdirs@1.4:")
+    depends_on("py-neo")
+    depends_on("py-tqdm@4.50:")
+    depends_on("py-shortuuid")
+    depends_on("py-quantities")
+    depends_on("py-pyyaml@6.0:")
+    depends_on("py-morphio@3.3:")
+    depends_on("py-bsb-hdf5@0.8.3:")
+    depends_on("py-errr@1.2.0:")
+    depends_on("py-colour@0.1.5:")
+
+    def setup_build_environment(self, env):
+        env.set("SPATIALINDEX_C_LIBRARY", self.spec["libspatialindex"].libs[0])
+
+    def setup_run_environment(self, env):
+        self.setup_build_environment(env)
+
+    skip_modules = ['bsb.simulators.arbor', 'bsb.simulators.arbor.devices']
+    
diff --git a/packages/py-colour/package.py b/packages/py-colour/package.py
new file mode 100644
index 0000000000000000000000000000000000000000..5a55b8f94bf8c43b75746c9a272bb4bfd43071c9
--- /dev/null
+++ b/packages/py-colour/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2023 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 PyColour(PythonPackage):
+    """Python color representations manipulation library (RGB, HSL, web, ...)"""
+
+    homepage = "https://github.com/vaab/colour"
+    pypi = "colour/colour-0.1.5.tar.gz"
+
+    maintainers = ["vaab"]
+
+    version("0.1.5", sha256="af20120fefd2afede8b001fbef2ea9da70ad7d49fafdb6489025dae8745c3aee")
+    depends_on("py-setuptools", type="build")
diff --git a/packages/py-errr/package.py b/packages/py-errr/package.py
new file mode 100644
index 0000000000000000000000000000000000000000..1c699d0cbcce9a8c502669c85095f793af0363f5
--- /dev/null
+++ b/packages/py-errr/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2023 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 PyErrr(PythonPackage):
+    """Elegant Python exception factories"""
+
+    homepage = "https://github.com/Helveg/errr"
+    pypi = "errr/errr-1.2.0.tar.gz"
+
+    maintainers = ["helveg"]
+
+    version("1.2.0", sha256="2824b83edbd1f61d354c60e36400b2e31ab83e2094acb837b86686892b866e76")
+
+    depends_on("py-setuptools", type="build")
diff --git a/packages/py-pynrrd/package.py b/packages/py-pynrrd/package.py
new file mode 100644
index 0000000000000000000000000000000000000000..99093c34d46e6e8a116842e9db56449cfe0238fe
--- /dev/null
+++ b/packages/py-pynrrd/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2023 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 PyPynrrd(PythonPackage):
+    """Python library for reading and writing NRRD files into and from numpy arrays"""
+
+    homepage = "https://github.com/mhe/pynrrd"
+    pypi = "pynrrd/pynrrd-0.4.0.tar.gz"
+
+    version("1.0.0", sha256="4eb4caba03fbca1b832114515e748336cb67bce70c7f3ae36bfa2e135fc990d2")
+
+    depends_on("py-setuptools", type="build")
+    depends_on("py-numpy@1.11.1:", type=("build", "run"))
+    depends_on("py-nptyping", type=("build", "run"))
+    depends_on("py-typing-extensions", type=("build", "run"))
+
diff --git a/spack.yaml b/spack.yaml
index 835600464099cc3f71383d07029c4c4414fc4c4a..991097260f430a1b059c97cd9eb57c2789b8a9b6 100644
--- a/spack.yaml
+++ b/spack.yaml
@@ -19,6 +19,7 @@ spack:
     - py-bluepyefe@2.2.18
     - py-bluepymm@0.7.65
     - py-bluepyopt@1.13.86
+    - py-bsb@4.0.0a57
     - py-ebrains-drive@0.5.1
     - py-ebrains-kg-core@0.9.15
     - py-efel@4.0.4