diff --git a/Writerside/fp.tree b/Writerside/fp.tree
index 66bc10c..97012db 100644
--- a/Writerside/fp.tree
+++ b/Writerside/fp.tree
@@ -30,4 +30,5 @@
+
\ No newline at end of file
diff --git a/Writerside/topics/Development-Guidelines.md b/Writerside/topics/Development-Guidelines.md
new file mode 100644
index 0000000..83e0d62
--- /dev/null
+++ b/Writerside/topics/Development-Guidelines.md
@@ -0,0 +1,121 @@
+# Development Guidelines
+
+This topic is all about the development guidelines that we follow at FancyPlugins. It is important to follow these
+guidelines to maintain the quality of the code and to make sure that the code is consistent and easy to read.
+
+## Pull Requests
+
+Generally pull requests are welcome. However, it is important to follow the guidelines below when creating a pull
+request.
+
+If you plan to make a major change to the code, please join our discord server and discuss it with us before creating a
+pull request out of nowhere.
+
+### Code Style
+
+Please try to adapt to the code style that is already present in the project. If you are unsure about the code style,
+please join our discord server and ask for help.
+
+If you have suggestions for a better code style, please join our discord server and discuss it with us.
+
+### Commit Messages
+
+Please make sure that your commit messages are clear and concise. It is important to write a good commit message so that
+it is easy to understand what the commit is about.
+
+Keep the commit message short and to the point. If you need to write a longer message, please use the body of the
+commit.
+
+### Testing
+
+Please make sure that your code is tested before marking the pull request as ready for review. This means that the code
+should compile and run without any errors. If you are unsure about how to test your code, please join our discord server
+and ask for help.
+
+When creating a PR for FancyNpcs please run the `/fancynpcs test` command in-game and attach a screenshot of the output
+to the PR.
+
+### Documentation
+
+Please add documentation to your code. This means that you should add comments to your code so that it is easy
+to understand what the code is doing. Also, please add Javadocs to the code if it is a public API.
+
+If you modified, added or removed any commands, please update the `/npcs help` messages and the docs in the [docs
+reposiotry](https://github.com/FancyMcPlugins/docs).
+
+## Versioning
+
+The version is structured as follows: `major.minor.patch.`. The build id is optional and is only used for
+development builds.
+
+### Major
+
+The major version is increased when there are very significant changes to the codebase. This could be a complete rewrite
+of the codebase or a major change in the way the plugin works. This is usually not done very often. When the major
+version is increased, the minor and patch versions are reset to 0.
+
+Data might be lost when updating to a new major version.
+
+Breaking changes in the API are expected when updating to a new major version.
+
+### Minor
+
+The minor version is increased when there are new features added to the codebase. This could be new commands, new
+features or support for a new minecraft version. This is done more often than increasing the major version. When the
+minor version is increased, the patch version is reset to 0.
+
+Data will not be lost when updating to a new minor version.
+
+Breaking changes in the API are expected when updating to a new minor version.
+
+### Patch
+
+The patch version is increased when there are bug fixes or small changes to the codebase. This is done very often.
+
+Data will not be lost when updating to a new patch version.
+
+Breaking changes in the API are not expected when updating to a new patch version.
+
+### Build
+
+The build id is optional and is only used for development builds. The build id is increased every time a new build is
+created.
+
+Development builds are not recommended for production use.
+
+Development builds might contain bugs.
+
+Development builds might contain incomplete features.
+
+Development builds might contain breaking changes.
+
+Development builds might contain experimental features.
+
+Development builds might contain untested features.
+
+Development builds might contain unoptimized code.
+
+Development builds might contain security vulnerabilities.
+
+Development builds might contain incomplete documentation.
+
+Development builds might cause data loss.
+
+Development builds might cause server crashes.
+
+Development builds might cause server lag.
+
+Development builds might cause other issues.
+
+## Changelog
+
+Every release should have a changelog. The changelog will be added to all platforms where the plugin is available. The
+changelog should contain the following information:
+
+- The version number
+- A list of changes that were made in this release
+- A list of bug fixes that were made in this release
+- A list of new features that were added in this release
+
+There are mostly changes list that are important to server admins. Breaking changes to the API might not be listed in
+the changelog.
\ No newline at end of file