diff --git a/.github/workflows/.pypi-publish.yaml b/.github/workflows/.pypi-publish.yaml
new file mode 100644
index 0000000..258239e
--- /dev/null
+++ b/.github/workflows/.pypi-publish.yaml
@@ -0,0 +1,28 @@
+name: Publish
+
+on:
+  push:
+    tags:
+      - v*
+
+jobs:
+  build-n-publish:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v2
+      - name: Set up Python 3.9
+        uses: actions/setup-python@v2
+        with:
+          python-version: 3.9
+      - name: Install dependencies
+        run: |
+          python -m pip install --upgrade pip
+          pip install setuptools wheel
+      - name: Build package
+        run: |
+          python setup.py sdist bdist_wheel
+      - name: Publish
+        uses: pypa/gh-action-pypi-publish@v1.3.1
+        with:
+          user: __token__
+          password: ${{ secrets.pypi_token }}
diff --git a/codemeta.json b/codemeta.json
index 71bb967..b220768 100644
--- a/codemeta.json
+++ b/codemeta.json
@@ -6,13 +6,16 @@
   "codeRepository": "https://github.com/caltechlibrary/ames",
   "issueTracker": "https://github.com/caltechlibrary/ames/issues",
   "license": "https://data.caltech.edu/license",
-  "version": "1.1.0",
+  "version": "1.1.1",
   "author": [
     {
       "@type": "Person",
       "givenName": "Thomas E",
       "familyName": "Morrell",
-      "affiliation": "Caltech Library",
+      "affiliation": {
+                "@type": "Organization",
+                "name": "Caltech Library"
+            },
       "email": "tmorrell@caltech.edu",
       "@id": "https://orcid.org/0000-0001-9266-5146"
     },
@@ -20,7 +23,10 @@
       "@type": "Person",
       "givenName": "Robert",
       "familyName": "Doiel",
-      "affiliation": "Caltech Library",
+      "affiliation": {
+                "@type": "Organization",
+                "name": "Caltech Library"
+            },
       "email": "rsdoiel@caltech.edu",
       "@id": "https://orcid.org/0000-0003-0900-6903"
     }