diff --git a/AUTHORS.rst b/AUTHORS.rst
index 33bb038c8f86aba6651edd7a42119aefb9fc3206..d1d5dd3fae36b330daeda673713950a914c0cb2c 100644
--- a/AUTHORS.rst
+++ b/AUTHORS.rst
@@ -5,4 +5,4 @@ Credits
 Development Lead
 ----------------
 
-* IRIS PASSCAL <software-support@passcal.nmt.edu>
+* Maeva Pourpoint - IRIS PASSCAL <software-support@passcal.nmt.edu>
diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst
index 84ded9f1ecce2d01ebc5a64ce5853ad7e46f412b..47674b75732d609262b2f5e78f26a6041bb8072c 100644
--- a/CONTRIBUTING.rst
+++ b/CONTRIBUTING.rst
@@ -15,7 +15,7 @@ Types of Contributions
 Report Bugs
 ~~~~~~~~~~~
 
-Report bugs at https://git.passcal.nmt.edu/maeva/lemi2seed/issues.
+Report bugs at https://git.passcal.nmt.edu/MT/lemi2seed/issues.
 
 If you are reporting a bug, please include:
 
@@ -46,7 +46,7 @@ Submit Feedback
 ~~~~~~~~~~~~~~~
 
 The best way to send feedback is to file an issue at
-https://git.passcal.nmt.edu/maeva/lemi2seed/issues.
+https://git.passcal.nmt.edu/MT/lemi2seed/issues.
 
 If you are proposing a feature:
 
@@ -62,7 +62,7 @@ Ready to contribute? Here's how to set up `lemi2seed` for local development.
 
 1. Clone the `lemi2seed` repo:
 
- * $ git clone https://git.passcal.nmt.edu/maeva/lemi2seed.git
+ * $ git clone https://git.passcal.nmt.edu/MT/lemi2seed.git
 
 2. Install your local copy:
 
diff --git a/conda.recipe/meta.yaml b/conda.recipe/meta.yaml
index 8148b88e350abe4e1ca7f56fdc14b56dcab01026..de1ddb3d0a7a487095d1ab98e12efe321d8c1e72 100644
--- a/conda.recipe/meta.yaml
+++ b/conda.recipe/meta.yaml
@@ -1,6 +1,6 @@
 package:
   name: lemi2seed
-  version: 2021.239
+  version: 2022.025
 
 source:
   path: ../
@@ -17,9 +17,9 @@ requirements:
   run:
     - python >=3.7
     - configobj
+    - numpy=1.21
     - obspy
     - openpyxl
-    - PySide2
 
 test:
   source_files:
diff --git a/lemi2seed/__init__.py b/lemi2seed/__init__.py
index ecd3cbd56d1bc2833627451fac05626cb52efccc..e1bda8bd5b490603e6e1a00c58fb3ee76259432e 100644
--- a/lemi2seed/__init__.py
+++ b/lemi2seed/__init__.py
@@ -4,4 +4,4 @@
 
 __author__ = """IRIS PASSCAL"""
 __email__ = 'software-support@passcal.nmt.edu'
-__version__ = '2021.239'
+__version__ = '2022.025'
diff --git a/lemi2seed/lemi_metadata.py b/lemi2seed/lemi_metadata.py
index 9cb031e2d16024da79f5d7dd88c694b5db6bba45..de0d1166847c1df34f35e8372efd560ec79bbf60 100644
--- a/lemi2seed/lemi_metadata.py
+++ b/lemi2seed/lemi_metadata.py
@@ -33,6 +33,7 @@ from lemi2seed.utils import (check_email_formatting, check_instrument_specs,
 
 if TYPE_CHECKING:
     import numpy
+    from openpyxl.worksheet.worksheet import Worksheet
     from lemi2seed.lemi_data import LemiData
 
 # Read lemi2seed config file
@@ -743,7 +744,6 @@ DCS_SUB_REMA = Union[Run, Electric, Magnetic, Auxiliary]
 DCS_SUB_EMA = Union[Electric, Magnetic, Auxiliary]
 DCS_SUB_MA = Union[Magnetic, Auxiliary]
 WORKBOOK = openpyxl.Workbook
-WORKSHEET = openpyxl.worksheet.worksheet.Worksheet
 # -- Type aliases --
 
 
@@ -788,7 +788,7 @@ class LemiMetadata():
             self.filenames = filenames
 
     @staticmethod
-    def get_metadata_field(sheet: WORKSHEET, cell: str) -> Optional[MD_VAL]:
+    def get_metadata_field(sheet: Worksheet, cell: str) -> Optional[MD_VAL]:
         """Get metadata field at a given cell in a given field sheet."""
         try:
             field_value = sheet[cell].value
@@ -798,7 +798,7 @@ class LemiMetadata():
             return None
         return field_value
 
-    def identify_field_sheet(self, sheet: WORKSHEET, filename: Path) -> Optional[str]:
+    def identify_field_sheet(self, sheet: Worksheet, filename: Path) -> Optional[str]:
         """
         Check whether a field sheet is an install, removal or credential sheet.
         Layout between provided spread sheet templates varies and cell numbers
@@ -888,7 +888,7 @@ class LemiMetadata():
                 output[category] = LemiMetadata.dataclass2dict(mproperty)
         return output
 
-    def parse_field_sheet(self, sheet: WORKSHEET, sheet_type: str, metadata_fields: Dict) -> Dict:
+    def parse_field_sheet(self, sheet: Worksheet, sheet_type: str, metadata_fields: Dict) -> Dict:
         """
         Parse field sheet using the cell numbers listed in the config file and
         return a nested dictionary of metadata entries organized based on the
diff --git a/setup.cfg b/setup.cfg
index 413492cdf7958e0400083b0fda309e08a8cf2d68..49d11f2aeab81dc4971e847b794a6188642c9f70 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -2,7 +2,13 @@
 exclude = docs, *_rc.py
 max-line-length = 120
 
-[mypy-*.lemi_gui]
+[mypy-*.gui_model]
+ignore_errors = True
+
+[mypy-*.gui_widgets]
+ignore_errors = True
+
+[mypy-*.gui_view]
 ignore_errors = True
 
 [mypy-configobj]
@@ -14,5 +20,5 @@ ignore_missing_imports = True
 [mypy-obspy.*]
 ignore_missing_imports = True
 
-[mypy-openpyxl]
+[mypy-openpyxl.*]
 ignore_missing_imports = True
diff --git a/setup.py b/setup.py
index 15eaca582bd8e0c0df0c4a372a6e6ff0ae92a0ef..e95f685b0f3c9a12fb356920fff44195f6ac8fad 100644
--- a/setup.py
+++ b/setup.py
@@ -32,9 +32,9 @@ setup(
         ],
     },
     install_requires=['configobj',
+                      'numpy==1.21',
                       'obspy',
                       'openpyxl',
-                      'openpyxl-stubs',
                       'PySide2'],
     setup_requires=[],
     extras_require={
@@ -51,6 +51,6 @@ setup(
     name='lemi2seed',
     packages=find_packages(include=['lemi2seed']),
     url='https://git.passcal.nmt.edu/MT/lemi2seed',
-    version='2021.007',
+    version='2022.025',
     zip_safe=False,
 )