diff --git a/.eslintrc.json b/.eslintrc.json
index 34232f64f5623a56bb067ec6d1f047450ecc109d..699bfc35ac819762c0a7360b3bdbdde48838ddf6 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -18,7 +18,7 @@
         ],
         "brace-style": "off",
         "comma-spacing": "off",
-        "space-infix-ops": "error",
+        "space-infix-ops": "off",
         "comma-dangle": "off",
         "eqeqeq": [
             "error",
@@ -107,6 +107,7 @@
                     "1tbs", { "allowSingleLine": true }
                 ],
                 "@typescript-eslint/comma-spacing": "error",
+                "@typescript-eslint/space-infix-ops": "error",
                 "@typescript-eslint/space-before-function-paren": ["error", {
                     "anonymous": "always",
                     "named": "never",
diff --git a/src/cli/cifschema/util/cif-dic.ts b/src/cli/cifschema/util/cif-dic.ts
index 2f5f75efc7d4f66a04d1f81711699587c0bcd914..06b99799e3dd77f8243e71b73e926a2a2790ed07 100644
--- a/src/cli/cifschema/util/cif-dic.ts
+++ b/src/cli/cifschema/util/cif-dic.ts
@@ -152,7 +152,7 @@ function getImportFrames(d: Data.CifFrame, imports: Imports) {
 }
 
 /** get field from given or linked category */
-function getField(category: string, field: string, d: Data.CifFrame, imports: Imports, ctx: FrameData): Data.CifField|undefined {
+function getField(category: string, field: string, d: Data.CifFrame, imports: Imports, ctx: FrameData): Data.CifField | undefined {
     const { categories, links } = ctx;
     const cat = d.categories[category];
     if (cat) {
diff --git a/src/cli/structure-info/helpers.ts b/src/cli/structure-info/helpers.ts
index 7cb437e5c9a902d4165de06d7d3850a49d7421c6..b0a513badc3c97e1f9a604c4a0331695e273def4 100644
--- a/src/cli/structure-info/helpers.ts
+++ b/src/cli/structure-info/helpers.ts
@@ -25,7 +25,7 @@ async function readFile(path: string) {
     }
 }
 
-async function parseCif(data: string|Uint8Array) {
+async function parseCif(data: string | Uint8Array) {
     const comp = CIF.parse(data);
     const parsed = await comp.run(p => console.log(Progress.format(p)), 250);
     if (parsed.isError) throw parsed;
diff --git a/src/extensions/cellpack/model.ts b/src/extensions/cellpack/model.ts
index 6293d8a729b7eea644f1cda9ca58f684e9c9ff34..cf932b8dd2fe6b7e96d521b6faea044494e1b630 100644
--- a/src/extensions/cellpack/model.ts
+++ b/src/extensions/cellpack/model.ts
@@ -236,7 +236,7 @@ async function getIngredientStructure(plugin: PluginContext, ingredient: Ingredi
         structure = await getCurve(name, getCurveTransforms(ingredient), model);
     } else {
         if ((!results || results.length === 0)) return;
-        let bu: string|undefined = source.bu ? source.bu : undefined;
+        let bu: string | undefined = source.bu ? source.bu : undefined;
         if (bu) {
             if (bu === 'AU') {
                 bu = undefined;
diff --git a/src/extensions/pdbe/structure-quality-report/prop.ts b/src/extensions/pdbe/structure-quality-report/prop.ts
index 5795b8b03e8c7780981e5d4360f0cc85c49e65b5..a8dbbe92e477e0337176b5a611c005a873df1a5c 100644
--- a/src/extensions/pdbe/structure-quality-report/prop.ts
+++ b/src/extensions/pdbe/structure-quality-report/prop.ts
@@ -29,7 +29,7 @@ export { StructureQualityReport };
 type StructureQualityReport = PropertyWrapper<{
     issues: IndexedCustomProperty.Residue<string[]>,
     issueTypes: string[]
-}| undefined>
+} | undefined>
 
 namespace StructureQualityReport {
     export const DefaultServerUrl = 'https://www.ebi.ac.uk/pdbe/api/validation/residuewise_outlier_summary/entry/';
diff --git a/src/mol-io/reader/cif.ts b/src/mol-io/reader/cif.ts
index 161a2b270edff855d8d46beb68bda5bee987aa6c..4ce8f09b0f3bb3ff1ffeb05288aafeb3053023f3 100644
--- a/src/mol-io/reader/cif.ts
+++ b/src/mol-io/reader/cif.ts
@@ -18,7 +18,7 @@ import { CifCore_Database, CifCore_Schema, CifCore_Aliases } from './cif/schema/
 import { Segmentation_Data_Database, Segmentation_Data_Schema } from './cif/schema/segmentation';
 
 export const CIF = {
-    parse: (data: string|Uint8Array) => typeof data === 'string' ? parseCifText(data) : parseCifBinary(data),
+    parse: (data: string | Uint8Array) => typeof data === 'string' ? parseCifText(data) : parseCifBinary(data),
     parseText: parseCifText,
     parseBinary: parseCifBinary,
     toDatabaseCollection,
diff --git a/src/servers/model/server/structure-wrapper.ts b/src/servers/model/server/structure-wrapper.ts
index e1eb1fe848d91b41e2b9a100b296f8198d4f53b4..1c7f1f7e86b9d674b5f283cf237978aa6f98df3f 100644
--- a/src/servers/model/server/structure-wrapper.ts
+++ b/src/servers/model/server/structure-wrapper.ts
@@ -85,7 +85,7 @@ async function readFile(filename: string) {
     }
 }
 
-async function parseCif(data: string|Uint8Array) {
+async function parseCif(data: string | Uint8Array) {
     const comp = CIF.parse(data);
     const parsed = await comp.run();
     if (parsed.isError) throw parsed;
diff --git a/src/tests/browser/render-structure.ts b/src/tests/browser/render-structure.ts
index 634ccd8adeb7366d499ef77d0afffc6444961317..fcd7ede73bf279bad2b0f26ad203e74edca2e9bd 100644
--- a/src/tests/browser/render-structure.ts
+++ b/src/tests/browser/render-structure.ts
@@ -70,7 +70,7 @@ canvas3d.input.move.pipe(throttleTime(100)).subscribe(({ x, y }) => {
     info.innerHTML = label;
 });
 
-async function parseCif(data: string|Uint8Array) {
+async function parseCif(data: string | Uint8Array) {
     const comp = CIF.parse(data);
     const parsed = await comp.run();
     if (parsed.isError) throw parsed;