diff --git a/.gitlab/.gitmessage b/.gitlab/.gitmessage
new file mode 100644
index 0000000000000000000000000000000000000000..b9db7232635742a00a55a87d627ca9a9c08ccb7f
--- /dev/null
+++ b/.gitlab/.gitmessage
@@ -0,0 +1,23 @@
+# Title: Summary, imperative, start upper case, don't end with a period
+# No more than 50 chars. #### 50 chars is here:  #
+
+# Remember blank line between title and body.
+
+# Body: Explain *what* and *why* (not *how*). Include task ID (Jira issue).
+# Wrap at 72 chars. ################################## which is here:  #
+
+
+# At the end: Include Co-authored-by for all contributors. 
+# Include at least one empty line before it. Format: 
+# Co-authored-by: name <user@users.noreply.github.com>
+#
+# How to Write a Git Commit Message:
+# https://chris.beams.io/posts/git-commit/
+#
+# 1. Separate subject from body with a blank line
+# 2. Limit the subject line to 50 characters
+# 3. Capitalize the subject line
+# 4. Do not end the subject line with a period
+# 5. Use the imperative mood in the subject line
+# 6. Wrap the body at 72 characters
+# 7. Use the body to explain what and why vs. how
\ No newline at end of file
diff --git a/.gitlab/VULNERABILTIY CLASSIFICATION GUIDE.md b/.gitlab/VULNERABILTIY CLASSIFICATION GUIDE.md
new file mode 100644
index 0000000000000000000000000000000000000000..e32bb92a3b115ef88c31eea7a5848c0806358391
--- /dev/null
+++ b/.gitlab/VULNERABILTIY CLASSIFICATION GUIDE.md	
@@ -0,0 +1,14 @@
+## Classification Score
+
+Disclosed vulnerabilities are evaluated by using the [Common Vulnerability Scoring System](https://www.first.org/cvss/v4.0/user-guide).
+
+The calculator can be found [here](https://www.first.org/cvss/calculator/4.0).
+
+
+## Vulnerability Severities
+
+**Critical:** ~"Vulnerability::Critical" Vulnerabilities with a Score >= 9, or vulnerabilities which enable remote code execution.
+
+**High:** ~"Vulnerability::High" Vulnerabilities with a Score >= 5.
+
+**Minor:** ~"Vulnerability::Minor" Vulnerabilities with a Score < 5, or which require physical access to the system.
\ No newline at end of file
diff --git a/.gitlab/changelog_config.yml b/.gitlab/changelog_config.yml
new file mode 100644
index 0000000000000000000000000000000000000000..f589acdbea3c22d71fa6458d725c5d1718782928
--- /dev/null
+++ b/.gitlab/changelog_config.yml
@@ -0,0 +1,38 @@
+---
+# Settings for generating changelogs using the GitLab API. See
+# https://docs.gitlab.com/ee/api/repositories.html#generate-changelog-data for
+# more information.
+categories:
+  added: Added
+  fixed: Fixed
+  changed: Changed
+  deprecated: Deprecated
+  removed: Removed
+  security: Security
+  performance: Performance
+  other: Other
+template: |
+  {% if categories %}
+  {% each categories %}
+  ### {{ title }} ({% if single_change %}1 change{% else %}{{ count }} changes{% end %})
+
+  {% each entries %}
+  - [{{ title }}]({{ commit.web_url }})\
+  {% if author.credit %} by {{ author.reference }}{% end %}\
+  {% if commit.trailers.MR %}\
+   ([merge request]({{ commit.trailers.MR }}))\
+  {% else %}\
+  {% if merge_request %}\
+   ([merge request]({{ merge_request.web_url }}))\
+  {% end %}\
+  {% end %}\
+  {% if commit.trailers.EE %}\
+   **GitLab Enterprise Edition**\
+  {% end %}
+
+  {% end %}
+
+  {% end %}
+  {% else %}
+  No changes.
+  {% end %}
diff --git a/.gitlab/issue_templates/bug_report.md b/.gitlab/issue_templates/bug_report.md
new file mode 100644
index 0000000000000000000000000000000000000000..621c58ebee00038d465b76581814fb2d1dab3422
--- /dev/null
+++ b/.gitlab/issue_templates/bug_report.md
@@ -0,0 +1,27 @@
+## Summary
+
+<!--Summarize the bug encountered concisely -->
+
+## Steps to reproduce
+
+<!--How one can reproduce the issue - this is very important-->
+
+
+## What is the current bug behavior?
+
+<!--What actually happens-->
+
+## What is the expected correct behavior?
+
+<!--What you should see instead-->
+
+## Relevant logs and/or screenshots
+
+<!--Paste any relevant logs - use code blocks (```) to format console output, logs, and code, as
+it's very hard to read otherwise.-->
+
+## Possible cause
+
+<!--If you can, link to the line of code that might be responsible for the problem-->
+
+/label Bug
\ No newline at end of file
diff --git a/.gitlab/issue_templates/documentation.md b/.gitlab/issue_templates/documentation.md
new file mode 100644
index 0000000000000000000000000000000000000000..b30eef6943e227298a771b1cbef0f600d795cf02
--- /dev/null
+++ b/.gitlab/issue_templates/documentation.md
@@ -0,0 +1,14 @@
+## Short description
+
+<!--Short description of what needs to be documented -->
+
+## Content
+
+<!--Clarify what should be contained in the documentation-->
+
+## Location
+
+<!--How should the documentation be made accessible-->
+
+
+/label Type::Documentation
\ No newline at end of file
diff --git a/.gitlab/issue_templates/feature_request.md b/.gitlab/issue_templates/feature_request.md
new file mode 100644
index 0000000000000000000000000000000000000000..877fac13545947228ea48141ede07fb0c792647b
--- /dev/null
+++ b/.gitlab/issue_templates/feature_request.md
@@ -0,0 +1,14 @@
+## Summary
+
+<!--Give a short summary of the requested feature-->
+
+## What is the function?
+
+<!--Give a detailed description of how the feature should work and the required steps and actors-->
+
+## Why is it requested?
+
+<!--Explain why and how the described feature would be useful-->
+
+
+/label Type::Feature Request
\ No newline at end of file
diff --git a/.gitlab/issue_templates/user_story.md b/.gitlab/issue_templates/user_story.md
new file mode 100644
index 0000000000000000000000000000000000000000..4bb52398846a795c5d43b8f21a6434a1eb859333
--- /dev/null
+++ b/.gitlab/issue_templates/user_story.md
@@ -0,0 +1,26 @@
+## Description
+
+<!--Give the User Story -->
+
+**As a:** <!--Role-->
+
+**I want:** <!--Functionality X-->
+
+**So that:** <!--Goal Y can be realized-->
+
+## Acceptance Criteria
+
+<!--Detail the scenarios needed to fulfill the User Story-->
+
+**Scenario X: Title of scenario**
+
+---
+**Given** <!--An action is done-->
+
+**When** <!--Some conditions apply-->
+
+
+**Then** <!--Detailed description of expected behavior.-->  
+
+
+/label Type::Feature Request
\ No newline at end of file
diff --git a/.gitlab/issue_templates/vulnerability_disclosure.md b/.gitlab/issue_templates/vulnerability_disclosure.md
new file mode 100644
index 0000000000000000000000000000000000000000..4dfbd18b2bd8120027a2ff01a245b002fcbe3cce
--- /dev/null
+++ b/.gitlab/issue_templates/vulnerability_disclosure.md
@@ -0,0 +1,28 @@
+## Summary
+
+<!--Summarize the vulnerability -->
+
+## Steps to reproduce
+
+<!--How one can reproduce the issue - this is very important-->
+
+
+## What is the current bug behavior?
+
+<!--What actually happens-->
+
+## What is the expected correct behavior?
+
+<!--What you should see instead-->
+
+## Relevant logs and/or screenshots
+
+<!--Paste any relevant logs - use code blocks (```) to format console output, logs, and code, as
+it's very hard to read otherwise.-->
+
+## Possible cause
+
+<!--If you can, link to the line of code that might be responsible for the problem-->
+
+/label Type::Bug Vulnerability::Unclassified 
+/confidential
\ No newline at end of file
diff --git a/.gitlab/merge_request_templates/Default.md b/.gitlab/merge_request_templates/Default.md
new file mode 100644
index 0000000000000000000000000000000000000000..72041d1481f6f9d454eb57280105a2879c5a1172
--- /dev/null
+++ b/.gitlab/merge_request_templates/Default.md
@@ -0,0 +1,21 @@
+<!-- After merging changes to this template, update the `Default description template for merge requests` -->
+<!-- found under Settings - General Merge Requests -->
+
+## What does this MR do?
+
+<!-- Briefly describe what this MR is about. -->
+
+
+## Related issues
+
+<!-- Link related issues below. Insert the issue link or reference.-->
+
+## Checklist
+
+- [ ] Commits squashed, following the message-template and containing changelog-trailers
+- [ ] MR title and description are up to date, accurate, and descriptive.
+- [ ] MR targeting the appropriate branch.
+- [ ] Latest Merge Result pipeline is green.
+
+
+
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000000000000000000000000000000000000..fd1b8fe4a3822d0bde27b8da32f40bc11002bf88
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,36 @@
+# Changelog
+
+All notable changes to this project will be documented in this file.
+
+The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
+and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+
+
+
+## [3.15.0] (2024-09-03)
+
+### Added (7 changes)
+
+- Add CityDoctorAutoPro extension.
+- Add CityDoctorGUI extension.
+- Add CityDoctorHealer extension.
+- Add CityDoctorHealerGUI extension.
+- Add CityDoctorHealerGenetic extension.
+- Add CityDoctorWebService extension.
+- Add Documentation for extension modules.
+
+### Fixed (1 change)
+
+- Fix false positives for Solid self-intersections.
+
+### Changed (1 change)
+
+- Update Maven dependencies: Include JavaFX
+
+### Security (1 change)
+
+- Upgrade SnakeYAML to version 2.0
+
+## [3.14.0] (2024-03-20)
+
+Official Release of CityDoctor2