diff --git a/README.md b/README.md
new file mode 100644
index 0000000..0beaa2d
--- /dev/null
+++ b/README.md
@@ -0,0 +1,90 @@
+
SpyglassMC Action
+
+This action lets you validate your Minecraft datapack using [SpyglassMC](https://spyglassmc.com/).
+All JSON and MCFunction files are checked for syntax errors.
+
+
+Table of Contents
+
+---
+- [Basic workflow](#basic-workflow)
+- [Input parameters](#input-parameters)
+- [GitHub vs. Gitea](#github-vs-gitea)
+ - [Gitea](#gitea)
+ - [GitHub](#github)
+---
+
+
+
+
+## Basic workflow
+Here is a simple example showing how to use this action:
+
+```yaml
+name: Check datapack
+on:
+ pull_request:
+ branches:
+ - main
+jobs:
+ check:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v4
+
+ - name: Check syntax and schemas
+ uses: https://git.kb28.ch/HEL/spyglassmc-action@v1.1.3
+```
+
+## Input parameters
+The following parameters can be passed using the `with` section:
+|Parameter|Type|Default|Description|
+|:---|:---|:---:|:---|
+|`rootDir` |Path |`./` |Root datapack directory (containing the data folder and pack.mcmeta file)|
+|`version` |String |`auto` |The Minecraft version to use. If not specified or set to 'auto', will try to use the version indicated in `pack.mcmeta`|
+|`reportAllErrors`|Boolean|`false`|Whether to report all errors or only the first one|
+|`verbose` |Boolean|`false`|Whether to provide details on errors or just the number of errors|
+
+
+## GitHub vs. Gitea
+
+Depending on where you want to execute this action, you should be mindful of the following points
+
+### Gitea
+If your workflow will be running on Gitea, you might need to set a specific runner image (see https://gitea.com/gitea/runner-images#migration). For example:
+```yaml
+...
+jobs:
+ check:
+ runs-on: ubuntu-latest
+ container: catthehacker/ubuntu:act-latest
+...
+```
+
+### GitHub
+If your workflow will be running on GitHub, you will not be able to simply use the action from this Gitea repository.\
+Instead, you need to add a step to clone this repository, and use the action locally
+
+```yaml
+name: Check datapack
+on:
+ pull_request:
+ branches:
+ - main
+jobs:
+ deploy:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v4
+
+ - name: Checkout action
+ run: |
+ git clone https://git.kb28.ch/HEL/spyglassmc-action ./.github/actions/spyglassmc-action
+
+ - name: Check syntax and schemas
+ uses: ./.github/actions/spyglassmc-action
+```
+
+You might also want to `git checkout` a specific tagged version