diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml
new file mode 100644
index 0000000000000000000000000000000000000000..409abc9cf2fd986d2992cc136a68456ce56322e1
--- /dev/null
+++ b/.github/workflows/python-publish.yml
@@ -0,0 +1,31 @@
+# This workflow will upload a Python Package using Twine when a release is created
+# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries
+
+name: Build and Upload Python Package
+
+on:
+  release:
+    types: [published]
+
+jobs:
+  deploy:
+
+    runs-on: ubuntu-latest
+    environment: release
+    permissions:
+      id-token: write  # IMPORTANT: this permission is mandatory for trusted publishing
+
+    steps:
+    - uses: actions/checkout@v4
+    - name: Set up Python
+      uses: actions/setup-python@v5
+      with:
+        python-version: '3.x'
+    - name: Install dependencies
+      run: |
+        python -m pip install --upgrade pip
+        pip install build twine
+    - name: Build package
+      run: python -m build
+    - name: Publish package
+      uses: pypa/gh-action-pypi-publish@v1.8.11
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 52bfa5c87153d7c02d47247af0824e4c1c605676..66604dbd94503ddd877af18b32b9e2189eeff376 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,11 +1,16 @@
 # CHANGELOG
 
-## Unreleased
+## [0.2.0] - 2024-05-07
 
-_Restructured package for easier maintenance and extension._
+_Completely restructured package for easier maintenance and extension._
 
+**Full Changelog**: https://github.com/BenediktBurger/snlo-helper/compare/v0.1.0...v0.2.0
 
-## 0.1.0 - 2024-04-17
+
+## [0.1.0] - 2024-04-17
 
 _Initial release_
 
+
+[0.2.0]: https://github.com/BenediktBurger/snlo-helper/releases/tag/v0.2.0
+[0.1.0]: https://github.com/BenediktBurger/snlo-helper/releases/tag/v0.1.0
diff --git a/README.md b/README.md
index f8c6902767002bb1f8e5fa9c3bf32cd9a0fe6479..c2f707ddccb6e0b3d4a8354a5c094faa87e2a7fc 100644
--- a/README.md
+++ b/README.md
@@ -11,6 +11,13 @@ Attention:
 - The autoclicker can be interrupted by moving the mouse into the top left corner of the screen.
 
 
+Currently it supports the following functions (feel free to add more):
+- Ref. Ind.
+- 2D-mix-LP
+- 2D-mix-SP
+- Focus
+
+
 ## Installation
 
 Install it executing `pip install -e .` in this folder or via `pip install git+https://git.rwth-aachen.de/nloqo/snlo-helper.git` to download it in the background and install it.
@@ -54,4 +61,5 @@ For more examples see the `examples` folder.
 
 ## Contribution
 
-You are welcome to contribute to this library. Just open an issue for suggestions or bug reports and open a pull request for code contributions.
+You are welcome to contribute to this library.
+Just open an issue for suggestions or bug reports and open a pull request for code contributions.
diff --git a/pyproject.toml b/pyproject.toml
index 71c154b8326db4353972dfc7911dbe28d1011e34..cc9683d79fc1b8dde44023721f604ab6c87d1d39 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -2,7 +2,7 @@
 name = "snlo-helper"
 dynamic = ["version"]
 authors = [
-    {name = "Benedikt Burger},
+    {name = "Benedikt Burger"},
 ]
 description = "An autoclicker to automatically configure and read SNLO."
 keywords = ["SNLO", "nonlinear optics", "simulation"]
@@ -25,10 +25,16 @@ readme = "README.md"
 full = ["numpy"]
 
 
+[project.urls]
+Repository = "https://github.com/BenediktBurger/snlo-helper"
+Issues = "https://github.com/BenediktBurger/snlo-helper/issues"
+
 [build-system]
 requires = ["setuptools>=61.0", "wheel", "setuptools_scm>=7.0"]
 build-backend = "setuptools.build_meta"
 
+[tool.setuptools_scm]
+# write_to = "pyleco/_version.py"
 
 [tool.ruff]
 select = ["E", "F", "W"]