diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..797bd7f
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,10 @@
+# Changelog
+All notable changes to this project will be documented in this file.
+
+The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
+and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
+
+## [Unreleased]
+
+## [1.0.0] - 2019-01-09
+- Initial Release
\ No newline at end of file
diff --git a/README.md b/README.md
index c1970b8..9b9d274 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,46 @@
-# bootstrap_gridelements
\ No newline at end of file
+# bootstrap_gridelements
+> TYPO3 Extension for adding Bootstrap 4 Grid to GridElements
+
+## Features
+- Elements for 2, 3, 4 Columns
+- English and German Translation
+- TYPO3 8 & 9
+- Documentantion
+
+## Usage
+### Installation
+
+#### Installation as extension from TYPO3 Extension Repository (TER) (recomened)
+Download and install the extension with the extension manager module.
+
+#### Manual Installation (FTP required)
+
+- Download extension via GitHub or [TYPO3-Ter](https://extensions.typo3.org/extension/bootstrap_gridelements/)
+- Go to your FTP and navigate to `/typo3conf/ext/` and upload the bootstrap_gridelements folder there
+
+### Minimal Setup
+
+1. Activate Extension in Extensionmanager
+2. Include the static TypoScript of the extension and Gridelements
+3. Gridelements must be above the bootstrap_gridelements extension
+
+## Administartion corner
+
+### Versions and support
+
+| bootstrap_gridelements | TYPO3 | PHP | Support/Development |
+| ---------------------- | ------------ | --------- | ------------------------------------ |
+| 1.x | 8.7.x - 9.x | 7.0 - 7.3 | Features, Bugfixes, Security updates |
+
+### Changelog
+
+Please look [here in the changelog.md](https://github.com/Thejuse/bootstrap_gridelements/blob/master/CHANGELOG.md)
+
+### Release Management
+bootstrap_gridelements uses semantic versioning which basically means for you, that
+
+- **bugfix update**s (e.g. 1.0.0 => 1.0.1) just includes small bugfixes or security relevant stuff without breaking changes.
+- **minor updates** (e.g. 1.0.0 => 1.1.0) includes new features and smaller tasks without breaking changes.
+- **major updates** (e.g. 1.0.0 => 2.0.0) breaking changes wich can be refactorings, features or bugfixes.
+
+© 2019 [Koerbler. - Digital Erfolgreich!](https://www.koerbler.com/)
diff --git a/bootstrap_gridelements/.gitignore b/bootstrap_gridelements/.gitignore
new file mode 100644
index 0000000..42cd73d
--- /dev/null
+++ b/bootstrap_gridelements/.gitignore
@@ -0,0 +1 @@
+/vendor/
\ No newline at end of file
diff --git a/bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_2col.xml b/bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_2col.xml
new file mode 100644
index 0000000..23e4e91
--- /dev/null
+++ b/bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_2col.xml
@@ -0,0 +1,228 @@
+
+
+
+ 1
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.normal
+
+
+
+
+
+
+ select
+
+ 1/12col-lg-1
+ 2/12col-lg-2
+ 3/12col-lg-3
+ 4/12col-lg-4
+ 5/12col-lg-5
+ 6/12col-lg-6
+ 7/12col-lg-7
+ 8/12col-lg-8
+ 9/12col-lg-9
+ 10/12col-lg-10
+ 11/12col-lg-11
+ 12/12col-lg-12
+
+ col-lg-6
+
+
+
+
+
+
+
+ select
+
+ 1/12col-lg-1
+ 2/12col-lg-2
+ 3/12col-lg-3
+ 4/12col-lg-4
+ 5/12col-lg-5
+ 6/12col-lg-6
+ 7/12col-lg-7
+ 8/12col-lg-8
+ 9/12col-lg-9
+ 10/12col-lg-10
+ 11/12col-lg-11
+ 12/12col-lg-12
+
+ col-lg-6
+
+
+
+
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.xs
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-1
+ 2/12col-2
+ 3/12col-3
+ 4/12col-4
+ 5/12col-5
+ 6/12col-6
+ 7/12col-7
+ 8/12col-8
+ 9/12col-9
+ 10/12col-10
+ 11/12col-11
+ 12/12col-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-1
+ 2/12col-2
+ 3/12col-3
+ 4/12col-4
+ 5/12col-5
+ 6/12col-6
+ 7/12col-7
+ 8/12col-8
+ 9/12col-9
+ 10/12col-10
+ 11/12col-11
+ 12/12col-12
+
+
+
+
+
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.md
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-md-1
+ 2/12col-md-2
+ 3/12col-md-3
+ 4/12col-md-4
+ 5/12col-md-5
+ 6/12col-md-6
+ 7/12col-md-7
+ 8/12col-md-8
+ 9/12col-md-9
+ 10/12col-md-10
+ 11/12col-md-11
+ 12/12col-md-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-md-1
+ 2/12col-md-2
+ 3/12col-md-3
+ 4/12col-md-4
+ 5/12col-md-5
+ 6/12col-md-6
+ 7/12col-md-7
+ 8/12col-md-8
+ 9/12col-md-9
+ 10/12col-md-10
+ 11/12col-md-11
+ 12/12col-md-12
+
+
+
+
+
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.xl
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-xl-1
+ 2/12col-xl-2
+ 3/12col-xl-3
+ 4/12col-xl-4
+ 5/12col-xl-5
+ 6/12col-xl-6
+ 7/12col-xl-7
+ 8/12col-xl-8
+ 9/12col-xl-9
+ 10/12col-xl-10
+ 11/12col-xl-11
+ 12/12col-xl-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-xl-1
+ 2/12col-xl-2
+ 3/12col-xl-3
+ 4/12col-xl-4
+ 5/12col-xl-5
+ 6/12col-xl-6
+ 7/12col-xl-7
+ 8/12col-xl-8
+ 9/12col-xl-9
+ 10/12col-xl-10
+ 11/12col-xl-11
+ 12/12col-xl-12
+
+
+
+
+
+
+
+
+
diff --git a/bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_3col.xml b/bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_3col.xml
new file mode 100644
index 0000000..0921dc1
--- /dev/null
+++ b/bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_3col.xml
@@ -0,0 +1,320 @@
+
+
+
+ 1
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.normal
+
+
+
+
+
+
+ select
+
+ 1/12col-lg-1
+ 2/12col-lg-2
+ 3/12col-lg-3
+ 4/12col-lg-4
+ 5/12col-lg-5
+ 6/12col-lg-6
+ 7/12col-lg-7
+ 8/12col-lg-8
+ 9/12col-lg-9
+ 10/12col-lg-10
+ 11/12col-lg-11
+ 12/12col-lg-12
+
+ col-lg-4
+
+
+
+
+
+
+
+ select
+
+ 1/12col-lg-1
+ 2/12col-lg-2
+ 3/12col-lg-3
+ 4/12col-lg-4
+ 5/12col-lg-5
+ 6/12col-lg-6
+ 7/12col-lg-7
+ 8/12col-lg-8
+ 9/12col-lg-9
+ 10/12col-lg-10
+ 11/12col-lg-11
+ 12/12col-lg-12
+
+ col-lg-4
+
+
+
+
+
+
+
+ select
+
+ 1/12col-lg-1
+ 2/12col-lg-2
+ 3/12col-lg-3
+ 4/12col-lg-4
+ 5/12col-lg-5
+ 6/12col-lg-6
+ 7/12col-lg-7
+ 8/12col-lg-8
+ 9/12col-lg-9
+ 10/12col-lg-10
+ 11/12col-lg-11
+ 12/12col-lg-12
+
+ col-lg-4
+
+
+
+
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.xs
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-1
+ 2/12col-2
+ 3/12col-3
+ 4/12col-4
+ 5/12col-5
+ 6/12col-6
+ 7/12col-7
+ 8/12col-8
+ 9/12col-9
+ 10/12cos-10
+ 11/12col-11
+ 12/12col-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-1
+ 2/12col-2
+ 3/12col-3
+ 4/12col-4
+ 5/12col-5
+ 6/12col-6
+ 7/12col-7
+ 8/12col-8
+ 9/12col-9
+ 10/12cos-10
+ 11/12col-11
+ 12/12col-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-1
+ 2/12col-2
+ 3/12col-3
+ 4/12col-4
+ 5/12col-5
+ 6/12col-6
+ 7/12col-7
+ 8/12col-8
+ 9/12col-9
+ 10/12cos-10
+ 11/12col-11
+ 12/12col-12
+
+
+
+
+
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.md
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-md-1
+ 2/12col-md-2
+ 3/12col-md-3
+ 4/12col-md-4
+ 5/12col-md-5
+ 6/12col-md-6
+ 7/12col-md-7
+ 8/12col-md-8
+ 9/12col-md-9
+ 10/12colmdm-10
+ 11/12col-md-11
+ 12/12col-md-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-md-1
+ 2/12col-md-2
+ 3/12col-md-3
+ 4/12col-md-4
+ 5/12col-md-5
+ 6/12col-md-6
+ 7/12col-md-7
+ 8/12col-md-8
+ 9/12col-md-9
+ 10/12co-mdm-10
+ 11/12col-md-11
+ 12/12col-md-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-md-1
+ 2/12col-md-2
+ 3/12col-md-3
+ 4/12col-md-4
+ 5/12col-md-5
+ 6/12col-md-6
+ 7/12col-md-7
+ 8/12col-md-8
+ 9/12col-md-9
+ 10/12colmdm-10
+ 11/12col-md-11
+ 12/12col-md-12
+
+
+
+
+
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.xl
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-xl-1
+ 2/12col-xl-2
+ 3/12col-xl-3
+ 4/12col-xl-4
+ 5/12col-xl-5
+ 6/12col-xl-6
+ 7/12col-xl-7
+ 8/12col-xl-8
+ 9/12col-xl-9
+ 10/12co-xlg-10
+ 11/12col-xl-11
+ 12/12col-xl-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-xl-1
+ 2/12col-xl-2
+ 3/12col-xl-3
+ 4/12col-xl-4
+ 5/12col-xl-5
+ 6/12col-xl-6
+ 7/12col-xl-7
+ 8/12col-xl-8
+ 9/12col-xl-9
+ 10/12colxlg-10
+ 11/12col-xl-11
+ 12/12col-xl-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-xl-1
+ 2/12col-xl-2
+ 3/12col-xl-3
+ 4/12col-xl-4
+ 5/12col-xl-5
+ 6/12col-xl-6
+ 7/12col-xl-7
+ 8/12col-xl-8
+ 9/12col-xl-9
+ 10/12colxlg-10
+ 11/12col-xl-11
+ 12/12col-xl-12
+
+
+
+
+
+
+
+
+
diff --git a/bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_4col.xml b/bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_4col.xml
new file mode 100644
index 0000000..523341f
--- /dev/null
+++ b/bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_4col.xml
@@ -0,0 +1,412 @@
+
+
+
+ 1
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.normal
+
+
+
+
+
+
+ select
+
+ 1/12col-lg-1
+ 2/12col-lg-2
+ 3/12col-lg-3
+ 4/12col-lg-4
+ 5/12col-lg-5
+ 6/12col-lg-6
+ 7/12col-lg-7
+ 8/12col-lg-8
+ 9/12col-lg-9
+ 10/12col-lg-10
+ 11/12col-lg-11
+ 12/12col-lg-12
+
+ col-lg-3
+
+
+
+
+
+
+
+ select
+
+ 1/12col-lg-1
+ 2/12col-lg-2
+ 3/12col-lg-3
+ 4/12col-lg-4
+ 5/12col-lg-5
+ 6/12col-lg-6
+ 7/12col-lg-7
+ 8/12col-lg-8
+ 9/12col-lg-9
+ 10/12col-lg-10
+ 11/12col-lg-11
+ 12/12col-lg-12
+
+ col-lg-3
+
+
+
+
+
+
+
+ select
+
+ 1/12col-lg-1
+ 2/12col-lg-2
+ 3/12col-lg-3
+ 4/12col-lg-4
+ 5/12col-lg-5
+ 6/12col-lg-6
+ 7/12col-lg-7
+ 8/12col-lg-8
+ 9/12col-lg-9
+ 10/12col-lg-10
+ 11/12col-lg-11
+ 12/12col-lg-12
+
+ col-lg-3
+
+
+
+
+
+
+
+ select
+
+ 1/12col-lg-1
+ 2/12col-lg-2
+ 3/12col-lg-3
+ 4/12col-lg-4
+ 5/12col-lg-5
+ 6/12col-lg-6
+ 7/12col-lg-7
+ 8/12col-lg-8
+ 9/12col-lg-9
+ 10/12col-lg-10
+ 11/12col-lg-11
+ 12/12col-lg-12
+
+ col-lg-3
+
+
+
+
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.xs
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-1
+ 2/12col-2
+ 3/12col-3
+ 4/12col-4
+ 5/12col-5
+ 6/12col-6
+ 7/12col-7
+ 8/12col-8
+ 9/12col-9
+ 10/12col-10
+ 11/12col-11
+ 12/12col-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-1
+ 2/12col-2
+ 3/12col-3
+ 4/12col-4
+ 5/12col-5
+ 6/12col-6
+ 7/12col-7
+ 8/12col-8
+ 9/12col-9
+ 10/12col-10
+ 11/12col-11
+ 12/12col-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-1
+ 2/12col-2
+ 3/12col-3
+ 4/12col-4
+ 5/12col-5
+ 6/12col-6
+ 7/12col-7
+ 8/12col-8
+ 9/12col-9
+ 10/12col-10
+ 11/12col-11
+ 12/12col-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-1
+ 2/12col-2
+ 3/12col-3
+ 4/12col-4
+ 5/12col-5
+ 6/12col-6
+ 7/12col-7
+ 8/12col-8
+ 9/12col-9
+ 10/12col-10
+ 11/12col-11
+ 12/12col-12
+
+
+
+
+
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.md
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-md-1
+ 2/12col-md-2
+ 3/12col-md-3
+ 4/12col-md-4
+ 5/12col-md-5
+ 6/12col-md-6
+ 7/12col-md-7
+ 8/12col-md-8
+ 9/12col-md-9
+ 10/12col-md-10
+ 11/12col-md-11
+ 12/12col-md-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-md-1
+ 2/12col-md-2
+ 3/12col-md-3
+ 4/12col-md-4
+ 5/12col-md-5
+ 6/12col-md-6
+ 7/12col-md-7
+ 8/12col-md-8
+ 9/12col-md-9
+ 10/12col-md-10
+ 11/12col-md-11
+ 12/12col-md-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-md-1
+ 2/12col-md-2
+ 3/12col-md-3
+ 4/12col-md-4
+ 5/12col-md-5
+ 6/12col-md-6
+ 7/12col-md-7
+ 8/12col-md-8
+ 9/12col-md-9
+ 10/12col-md-10
+ 11/12col-md-11
+ 12/12col-md-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-md-1
+ 2/12col-md-2
+ 3/12col-md-3
+ 4/12col-md-4
+ 5/12col-md-5
+ 6/12col-md-6
+ 7/12col-md-7
+ 8/12col-md-8
+ 9/12col-md-9
+ 10/12col-md-10
+ 11/12col-md-11
+ 12/12col-md-12
+
+
+
+
+
+
+
+
+
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.sizename.xl
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-xl-1
+ 2/12col-xl-2
+ 3/12col-xl-3
+ 4/12col-xl-4
+ 5/12col-xl-5
+ 6/12col-xl-6
+ 7/12col-xl-7
+ 8/12col-xl-8
+ 9/12col-xl-9
+ 10/12col-xl-10
+ 11/12col-xl-11
+ 12/12col-xl-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-xl-1
+ 2/12col-xl-2
+ 3/12col-xl-3
+ 4/12col-xl-4
+ 5/12col-xl-5
+ 6/12col-xl-6
+ 7/12col-xl-7
+ 8/12col-xl-8
+ 9/12col-xl-9
+ 10/12col-xl-10
+ 11/12col-xl-11
+ 12/12col-xl-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-xl-1
+ 2/12col-xl-2
+ 3/12col-xl-3
+ 4/12col-xl-4
+ 5/12col-xl-5
+ 6/12col-xl-6
+ 7/12col-xl-7
+ 8/12col-xl-8
+ 9/12col-xl-9
+ 10/12col-xl-10
+ 11/12col-xl-11
+ 12/12col-xl-12
+
+
+
+
+
+
+
+
+ select
+
+ LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:form.notdefined
+ 1/12col-xl-1
+ 2/12col-xl-2
+ 3/12col-xl-3
+ 4/12col-xl-4
+ 5/12col-xl-5
+ 6/12col-xl-6
+ 7/12col-xl-7
+ 8/12col-xl-8
+ 9/12col-xl-9
+ 10/12col-xl-10
+ 11/12col-xl-11
+ 12/12col-xl-12
+
+
+
+
+
+
+
+
+
diff --git a/bootstrap_gridelements/Configuration/PageTS/PageTS.typoscript b/bootstrap_gridelements/Configuration/PageTS/PageTS.typoscript
new file mode 100644
index 0000000..eaaee1c
--- /dev/null
+++ b/bootstrap_gridelements/Configuration/PageTS/PageTS.typoscript
@@ -0,0 +1,87 @@
+tx_gridelements.setup.uebb_bootstrap_2col {
+ title = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.col2.title
+ description = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.col2.description
+ flexformDS = FILE:EXT:bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_2col.xml
+
+ config {
+ colCount = 2
+ rowCount = 1
+
+ rows {
+ 1 {
+ columns {
+ 1 {
+ name = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.name.col1
+ colPos = 0
+ }
+ 2 {
+ name = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.name.col2
+ colPos = 1
+ }
+ }
+ }
+ }
+ }
+}
+tx_gridelements.setup.uebb_bootstrap_3col {
+ title = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.col3.title
+ description = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.col3.description
+ flexformDS = FILE:EXT:bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_3col.xml
+
+ config {
+ colCount = 3
+ rowCount = 1
+
+ rows {
+ 1 {
+ columns {
+ 1 {
+ name = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.name.col1
+ colPos = 0
+ }
+ 2 {
+ name = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.name.col2
+ colPos = 1
+ }
+ 3 {
+ name = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.name.col3
+ colPos = 2
+ }
+ }
+ }
+ }
+ }
+}
+tx_gridelements.setup.uebb_bootstrap_4col {
+ title = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.col4.title
+ description = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.col4.description
+ flexformDS = FILE:EXT:bootstrap_gridelements/Configuration/GridElements/bootstrap_4_columns_4col.xml
+
+ config {
+ colCount = 4
+ rowCount = 1
+
+ rows {
+ 1 {
+ columns {
+ 1 {
+ name = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.name.col1
+ colPos = 0
+ }
+ 2 {
+ name = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.name.col2
+ colPos = 1
+ }
+ 3 {
+ name = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.name.col3
+ colPos = 2
+ }
+ 4 {
+ name = LLL:EXT:bootstrap_gridelements/Resources/Private/Language/locallang.xlf:col.name.col4
+ colPos = 3
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/bootstrap_gridelements/Configuration/TypoScript/Library/gridelements.typoscript b/bootstrap_gridelements/Configuration/TypoScript/Library/gridelements.typoscript
new file mode 100644
index 0000000..e8d45a9
--- /dev/null
+++ b/bootstrap_gridelements/Configuration/TypoScript/Library/gridelements.typoscript
@@ -0,0 +1,142 @@
+plugin.tx_gridelements_pi1.setup.uebb_bootstrap_2col {
+
+ preCObject = LOAD_REGISTER
+ preCObject {
+ containerClasses.cObject = COA
+ containerClasses.cObject {
+ 10 = TEXT
+ 10 {
+ field = flexform_visibility_element
+ noTrimWrap = | ||
+ split {
+ token = ,
+ cObjNum = 1
+ 1.current = 1
+ 1.noTrimWrap = | ||
+ }
+ }
+
+ stdWrap.insertData = 1
+ stdWrap.trim = 1
+ }
+
+ containerAttributes.cObject = COA
+ containerAttributes.cObject {
+ 10 = TEXT
+ 10 {
+ data = register: containerClasses
+ noTrimWrap = | class="row |"|
+ }
+ }
+ }
+
+ outerWrap =
|
+ outerWrap.insertData = 1
+
+ columns.0 {
+
+ preCObject = LOAD_REGISTER
+ preCObject {
+ contentColumnClass.cObject = COA
+ contentColumnClass.cObject {
+ 10 = TEXT
+ 10 {
+ field = flexform_width_column_xs_1
+ noTrimWrap = || |
+ required = 1
+ }
+
+ 11 = TEXT
+ 11 {
+ field = flexform_width_column_sm_1
+ noTrimWrap = || |
+ required = 1
+ }
+
+ 12 = TEXT
+ 12 {
+ field = flexform_width_column_md_1
+ noTrimWrap = || |
+ required = 1
+ }
+
+ 13 = TEXT
+ 13 {
+ field = flexform_width_column_lg_1
+ noTrimWrap = || |
+ required = 1
+ }
+
+ 20 = TEXT
+ 20 {
+ field = flexform_visibility_col1
+ noTrimWrap = | ||
+ split {
+ token = ,
+ cObjNum = 1
+ 1.current = 1
+ 1.noTrimWrap = | ||
+ }
+ }
+
+ stdWrap.noTrimWrap = | class="|"|
+ }
+ }
+
+ outerWrap = |
+ outerWrap.insertData = 1
+
+ renderObj =< tt_content
+ }
+
+ columns.1 < .columns.0
+ columns.1 {
+ preCObject {
+ contentColumnClass.cObject {
+ 10.field = flexform_width_column_xs_2
+ 11.field = flexform_width_column_sm_2
+ 12.field = flexform_width_column_md_2
+ 13.field = flexform_width_column_lg_2
+ 20.field = flexform_visibility_col2
+ }
+ }
+ }
+}
+
+plugin.tx_gridelements_pi1.setup.uebb_bootstrap_3col < plugin.tx_gridelements_pi1.setup.uebb_bootstrap_2col
+plugin.tx_gridelements_pi1.setup.uebb_bootstrap_3col {
+ columns.2 < .columns.0
+ columns.2 {
+ preCObject {
+ contentColumnClass.cObject {
+ 10.field = flexform_width_column_xs_3
+ 11.field = flexform_width_column_sm_3
+ 12.field = flexform_width_column_md_3
+ 13.field = flexform_width_column_lg_3
+ 20.field = flexform_visibility_col3
+ }
+ }
+ }
+}
+
+plugin.tx_gridelements_pi1.setup.uebb_bootstrap_4col < plugin.tx_gridelements_pi1.setup.uebb_bootstrap_3col
+plugin.tx_gridelements_pi1.setup.uebb_bootstrap_4col {
+ columns.3 < .columns.0
+ columns.3 {
+ preCObject {
+ contentColumnClass.cObject {
+ 10.field = flexform_width_column_xs_4
+ 11.field = flexform_width_column_sm_4
+ 12.field = flexform_width_column_md_4
+ 13.field = flexform_width_column_lg_4
+ 20.field = flexform_visibility_col4
+ }
+ }
+ }
+}
+
+tt_content.gridelements_pi1.20.10.setup {
+ uebb_bootstrap_2col < plugin.tx_gridelements_pi1.setup.uebb_bootstrap_2col
+ uebb_bootstrap_3col < plugin.tx_gridelements_pi1.setup.uebb_bootstrap_3col
+ uebb_bootstrap_4col < plugin.tx_gridelements_pi1.setup.uebb_bootstrap_4col
+}
diff --git a/bootstrap_gridelements/Configuration/TypoScript/constants.typoscript b/bootstrap_gridelements/Configuration/TypoScript/constants.typoscript
new file mode 100644
index 0000000..e69de29
diff --git a/bootstrap_gridelements/Configuration/TypoScript/setup.typoscript b/bootstrap_gridelements/Configuration/TypoScript/setup.typoscript
new file mode 100644
index 0000000..06c0c67
--- /dev/null
+++ b/bootstrap_gridelements/Configuration/TypoScript/setup.typoscript
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/bootstrap_gridelements/Resources/Private/.htaccess b/bootstrap_gridelements/Resources/Private/.htaccess
new file mode 100644
index 0000000..96d0729
--- /dev/null
+++ b/bootstrap_gridelements/Resources/Private/.htaccess
@@ -0,0 +1,11 @@
+# Apache < 2.3
+
+ Order allow,deny
+ Deny from all
+ Satisfy All
+
+
+# Apache >= 2.3
+
+ Require all denied
+
diff --git a/bootstrap_gridelements/Resources/Private/Language/de.locallang.xlf b/bootstrap_gridelements/Resources/Private/Language/de.locallang.xlf
new file mode 100644
index 0000000..67b7fb7
--- /dev/null
+++ b/bootstrap_gridelements/Resources/Private/Language/de.locallang.xlf
@@ -0,0 +1,106 @@
+
+
+
+
+
+
+
+
+ Zwei Spalten
+
+
+
+ Element um zwei Spalten darstellen zu können.
+
+
+
+
+
+ Drei Spalten
+
+
+
+ Element um drei Spalten darstellen zu können.
+
+
+
+
+
+ Vier Spalten
+
+
+
+ Element um vier Spalten darstellen zu können.
+
+
+
+
+
+ Spalte 1
+
+
+
+ Spalte 2
+
+
+
+ Spalte 3
+
+
+
+ Spalte 4
+
+
+
+
+
+ Spalte (Normal - col-lg)
+
+
+
+ Spalte (Sehr Klein - col)
+
+
+
+ Spalte (Mittel - col-md)
+
+
+
+ Spalte (Extra Groß - col-xl)
+
+
+
+
+
+ Breite Spalte 1
+
+
+
+ Breite Spalte 2
+
+
+
+ Breite Spalte 3
+
+
+
+ Breite Spalte 4
+
+
+
+
+
+ Nicht definiert
+
+
+
+ Aktiviert
+
+
+
+
diff --git a/bootstrap_gridelements/Resources/Private/Language/locallang.xlf b/bootstrap_gridelements/Resources/Private/Language/locallang.xlf
new file mode 100644
index 0000000..2ebba7d
--- /dev/null
+++ b/bootstrap_gridelements/Resources/Private/Language/locallang.xlf
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bootstrap_gridelements/ext_emconf.php b/bootstrap_gridelements/ext_emconf.php
new file mode 100644
index 0000000..bb551e0
--- /dev/null
+++ b/bootstrap_gridelements/ext_emconf.php
@@ -0,0 +1,22 @@
+ 'Bootstrap Gridelements',
+ 'description' => 'Build grids easy with Bootstrap 4 & Gridelements.',
+ 'category' => 'plugin',
+ 'author' => 'Julian Seidl',
+ 'author_email' => 'support@koerbler.com',
+ 'author_company' => 'Koerbler. - Digital Erfolgreich!',
+ 'state' => 'stable',
+ 'uploadfolder' => 0,
+ 'createDirs' => '',
+ 'clearCacheOnLoad' => 1,
+ 'version' => '1.0.0',
+ 'constraints' => [
+ 'depends' => [
+ 'typo3' => '8.7.0-9.5.99',
+ 'gridelements' => '8.0.0-9.99.99'
+ ],
+ 'conflicts' => [],
+ 'suggests' => [],
+ ],
+];
diff --git a/bootstrap_gridelements/ext_icon.svg b/bootstrap_gridelements/ext_icon.svg
new file mode 100644
index 0000000..a2a48ac
--- /dev/null
+++ b/bootstrap_gridelements/ext_icon.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/bootstrap_gridelements/ext_localconf.php b/bootstrap_gridelements/ext_localconf.php
new file mode 100644
index 0000000..cd47ed4
--- /dev/null
+++ b/bootstrap_gridelements/ext_localconf.php
@@ -0,0 +1,7 @@
+');
+})();
diff --git a/bootstrap_gridelements/ext_tables.php b/bootstrap_gridelements/ext_tables.php
new file mode 100644
index 0000000..f9c4194
--- /dev/null
+++ b/bootstrap_gridelements/ext_tables.php
@@ -0,0 +1,11 @@
+