diff --git a/simpleexample2/fxui/src/main/java/simpleex/ui/tags/AutoCompleteTextField.java b/simpleexample2/fxui/src/main/java/simpleex/ui/tags/AutoCompleteTextField.java
new file mode 100644
index 0000000000000000000000000000000000000000..c2a6dc4422c2dcb745c3dada0c25eeac130e3d96
--- /dev/null
+++ b/simpleexample2/fxui/src/main/java/simpleex/ui/tags/AutoCompleteTextField.java
@@ -0,0 +1,152 @@
+package simpleex.ui.tags;
+
+import java.util.SortedSet;
+import java.util.TreeSet;
+
+import javafx.geometry.Side;
+import javafx.scene.control.ContextMenu;
+import javafx.scene.control.IndexRange;
+import javafx.scene.control.MenuItem;
+import javafx.scene.control.TextField;
+import javafx.scene.input.KeyCode;
+
+/**
+ * @author GOXR3PLUS
+ * https://github.com/goxr3plus/JavaFX-TagsBar
+ */
+public class AutoCompleteTextField extends TextField {
+
+	/** The existing auto complete entries. */
+	private final SortedSet<String> entries = new TreeSet<>();
+	/** The pop up used to select an entry. */
+	private ContextMenu contextMenu = new ContextMenu();
+	private int maximumEntries = 15;
+
+	private StringBuilder sb = new StringBuilder();
+	private int lastLength;
+
+	// Constructor
+	public AutoCompleteTextField() {
+
+		// TextChanged Listener
+		textProperty().addListener(l -> {
+			if (getText().length() == 0)
+				contextMenu.hide();
+			else {
+				if (entries.size() > 0) {
+					populatePopup();
+					if (!contextMenu.isShowing()) {
+						contextMenu.show(AutoCompleteTextField.this, Side.BOTTOM, 0, 0);
+						// Request focus on first item
+						if (!contextMenu.getItems().isEmpty())
+							contextMenu.getSkin().getNode().lookup(".menu-item:nth-child(1)").requestFocus();
+					}
+
+				} else
+					contextMenu.hide();
+
+			}
+
+		});
+
+		// FocusListener
+		focusedProperty().addListener(l -> {
+			lastLength = 0;
+			sb.delete(0, sb.length());
+			contextMenu.hide();
+		});
+
+	}
+
+	/**
+	 * Get the existing set of autocomplete entries.
+	 * 
+	 * @return The existing autocomplete entries.
+	 */
+	public SortedSet<String> getEntries() {
+		return entries;
+	}
+
+	// TODO ---------------This method not works perfect needs to be redone....
+	public void buggedMethod() {
+		// KeyReleased Listener
+		setOnKeyReleased(key -> {
+			KeyCode k = key.getCode();
+			// this variable is used to bypass the auto complete process if the
+			// length is the same. this occurs if user types fast, the length of
+			// textfield will record after the user has typed after a certain
+			// delay.
+			if (lastLength != (getLength() - getSelectedText().length()))
+				lastLength = getLength() - getSelectedText().length();
+
+			// Not causing problems by these buttons
+			if (key.isControlDown() || k == KeyCode.BACK_SPACE || k == KeyCode.RIGHT || k == KeyCode.LEFT
+					|| k == KeyCode.DELETE || k == KeyCode.HOME || k == KeyCode.END || k == KeyCode.TAB)
+				return;
+
+			IndexRange ir = getSelection();
+			sb.delete(0, sb.length());
+			sb.append(getText());
+			// remove selected string index until end so only unselected text
+			// will be recorded
+			try {
+				sb.delete(ir.getStart(), sb.length());
+			} catch (Exception e) {
+				e.printStackTrace();
+			}
+
+			String originalLowered = getText().toLowerCase();
+			// Select the first Matching
+			for (String s : entries)
+				if (s.toLowerCase().startsWith(originalLowered)) {
+					try {
+						setText(s);
+					} catch (Exception e) {
+						setText(sb.toString());
+					}
+					positionCaret(sb.toString().length());
+					selectEnd();
+					break;
+				}
+
+		});
+
+	}
+
+	/**
+	 * Populate the entry set with the given search results.
+	 * 
+	 * @param sortedSet
+	 *            The set of matching strings.
+	 */
+	private void populatePopup() {
+		contextMenu.getItems().clear();
+
+		String text = getText().toLowerCase();
+		// Filter the first maximumEntries matching the text
+		entries.stream().filter(string -> {
+			return string.toLowerCase().startsWith(text);
+		}).limit(maximumEntries).forEach(s -> {
+			// Add the element
+			MenuItem item = new MenuItem(s);
+			item.setOnAction(a -> {
+				setText(s);
+				positionCaret(getLength());
+			});
+			contextMenu.getItems().add(item);
+		});
+
+		// Entries to be shown
+		// for (int i = 0; i < count; i++) {
+		// final String result = searchResult.get(i);
+		// Label entryLabel = new Label(result);
+		// CustomMenuItem item = new CustomMenuItem(entryLabel, true);
+		// item.setOnAction(a->{
+		// setText(result);
+		// contextMenu.hide();
+		// });
+		// menuItems.add(item);
+		// }
+
+	}
+}
\ No newline at end of file
diff --git a/simpleexample2/fxui/src/main/java/simpleex/ui/tags/LICENSE b/simpleexample2/fxui/src/main/java/simpleex/ui/tags/LICENSE
new file mode 100644
index 0000000000000000000000000000000000000000..8dada3edaf50dbc082c9a125058f25def75e625a
--- /dev/null
+++ b/simpleexample2/fxui/src/main/java/simpleex/ui/tags/LICENSE
@@ -0,0 +1,201 @@
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "{}"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright {yyyy} {name of copyright owner}
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
diff --git a/simpleexample2/fxui/src/main/java/simpleex/ui/tags/README.md b/simpleexample2/fxui/src/main/java/simpleex/ui/tags/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..1bc28ed71b0579e205ae92c2950d92f975a8899d
--- /dev/null
+++ b/simpleexample2/fxui/src/main/java/simpleex/ui/tags/README.md
@@ -0,0 +1,7 @@
+# JavaFX-TagsBar
+Until now javaFX hadn't a TagsBar so here is a simple implementation.
+
+## IMAGE(using css)
+![Demostration](http://i.stack.imgur.com/qL6FD.png)
+
+### Code source is https://github.com/goxr3plus/JavaFX-TagsBar
\ No newline at end of file
diff --git a/simpleexample2/fxui/src/main/java/simpleex/ui/tags/Snippet.java b/simpleexample2/fxui/src/main/java/simpleex/ui/tags/Snippet.java
new file mode 100644
index 0000000000000000000000000000000000000000..953edeee3c8da9daa4a517e0cfe3bb67ec9c4770
--- /dev/null
+++ b/simpleexample2/fxui/src/main/java/simpleex/ui/tags/Snippet.java
@@ -0,0 +1,45 @@
+package simpleex.ui.tags;
+
+import java.util.Arrays;
+import java.util.List;
+
+import javafx.application.Application;
+import javafx.scene.Scene;
+import javafx.scene.layout.VBox;
+import javafx.stage.Stage;
+
+/**
+ * @author GOXR3PLUS
+ * https://github.com/goxr3plus/JavaFX-TagsBar
+ */
+public class Snippet extends Application {
+
+	@Override
+	public void start(Stage primaryStage) {
+
+		// All the musicGenres
+		List<String> genres = Arrays.asList("50s", "60s", "70s", "80s", "90s", "Adult Contemporary", "African",
+				"Alternative", "Ambient", "Americana", "Baladas", "Bass", "Big Band", "Big Beat", "Bluegrass", "Blues ",
+				"Bollywood", "Breakbeat", "Breakcore", "Breaks", "Calypso", "Caribbean", "Celtic", "Chill", "Zouk");
+
+		TagsBar tagBar = new TagsBar();
+		tagBar.getEntries().addAll(genres);
+
+		// Root
+		VBox root = new VBox();
+		root.getChildren().addAll(tagBar);
+		root.setMinSize(300, 400);
+
+		// Scene
+		Scene scene = new Scene(root, 500, 500);
+		scene.getStylesheets().add(getClass().getResource("style.css").toExternalForm());
+
+		// PrimaryStage
+		primaryStage.setScene(scene);
+		primaryStage.show();
+	}
+
+	public static void main(String[] args) {
+		launch(args);
+	}
+}
diff --git a/simpleexample2/fxui/src/main/java/simpleex/ui/tags/TagsBar.java b/simpleexample2/fxui/src/main/java/simpleex/ui/tags/TagsBar.java
new file mode 100644
index 0000000000000000000000000000000000000000..92ddcd0a274a09b760b26c69ee7b095de63fcde9
--- /dev/null
+++ b/simpleexample2/fxui/src/main/java/simpleex/ui/tags/TagsBar.java
@@ -0,0 +1,182 @@
+package simpleex.ui.tags;
+
+import java.util.SortedSet;
+
+import javafx.collections.ObservableList;
+import javafx.scene.Node;
+import javafx.scene.control.Label;
+import javafx.scene.control.ScrollPane;
+import javafx.scene.control.ScrollPane.ScrollBarPolicy;
+import javafx.scene.image.Image;
+import javafx.scene.image.ImageView;
+import javafx.scene.image.WritableImage;
+import javafx.scene.input.ClipboardContent;
+import javafx.scene.input.Dragboard;
+import javafx.scene.input.TransferMode;
+import javafx.scene.layout.HBox;
+
+/**
+ * @author GOXR3PLUS
+ * https://github.com/goxr3plus/JavaFX-TagsBar
+ */
+public class TagsBar extends HBox {
+
+	private HBox hBox = new HBox();
+	private ScrollPane scrollPane = new ScrollPane(hBox);
+	private AutoCompleteTextField field = new AutoCompleteTextField();
+
+	// Constructor
+	public TagsBar() {
+
+		getStyleClass().setAll("tags-bar");
+
+		// hBox
+		hBox.setStyle(" -fx-spacing:3px;");
+
+		// scrollPane
+		scrollPane.setVbarPolicy(ScrollBarPolicy.NEVER);
+		scrollPane.setHbarPolicy(ScrollBarPolicy.AS_NEEDED);
+
+		// field
+		field.setPromptText("tag...");
+		field.setMinSize(120, 30);
+		field.setBackground(null);
+		field.setOnAction(evt -> {
+			String text = field.getText();
+			// No Duplicates allowed
+			if (!text.isEmpty() && getEntries().contains(text) && !hBox.getChildren().stream()
+					.anyMatch(s -> ((Tag) s).getTag().toLowerCase().equals(text.toLowerCase())))
+				hBox.getChildren().add(new Tag(text));
+			field.clear();
+		});
+
+		getChildren().addAll(scrollPane, field);
+	}
+
+	/**
+	 * Returns all the tags of TagsBar
+	 * 
+	 * @return
+	 */
+	public ObservableList<Node> getTags() {
+		return hBox.getChildren();
+	}
+
+	/**
+	 * Get the existing set of auto complete entries.
+	 * 
+	 * @return The existing auto complete entries.
+	 */
+	public SortedSet<String> getEntries() {
+		return field.getEntries();
+	}
+
+	/**
+	 * Clears all the tags
+	 * 
+	 */
+	public void clearAllTags() {
+		hBox.getChildren().clear();
+	}
+
+	/**
+	 * Add this tag if it doesn't exist
+	 * 
+	 * @param tag
+	 */
+	public void addTag(String tag) {
+		if (!hBox.getChildren().stream().anyMatch(s -> ((Tag) s).getTag().toLowerCase().equals(tag.toLowerCase())))
+			hBox.getChildren().add(new Tag(tag));
+	}
+
+	/**
+	 * @author SuperGoliath TagClass
+	 */
+	public class Tag extends HBox {
+
+		private Label textLabel = new Label();
+		private Label iconLabel = new Label(null, new ImageView(new Image(getClass().getResourceAsStream("x.png"))));
+
+		// Constructor
+		public Tag(String tag) {
+			getStyleClass().add("tag");
+
+			// drag detected
+			setOnDragDetected(event -> {
+
+				/* allow copy transfer mode */
+				Dragboard db = startDragAndDrop(TransferMode.MOVE);
+
+				/* put a string on dragboard */
+				ClipboardContent content = new ClipboardContent();
+				content.putString("#c" + getTag());
+
+				db.setDragView(snapshot(null, new WritableImage((int) getWidth(), (int) getHeight())), getWidth() / 2,
+						0);
+
+				db.setContent(content);
+
+				event.consume();
+			});
+
+			// drag over
+			setOnDragOver((event) -> {
+				/*
+				 * data is dragged over the target accept it only if it is not
+				 * dragged from the same imageView and if it has a string data
+				 */
+				if (event.getGestureSource() != this && event.getDragboard().hasString())
+					event.acceptTransferModes(TransferMode.MOVE);
+
+				event.consume();
+			});
+
+			// drag dropped
+			setOnDragDropped(event -> {
+
+				boolean sucess = false;
+				if (event.getDragboard().hasString() && event.getDragboard().getString().startsWith("#c")) {
+					String currentTag = getTag();
+					setTag(event.getDragboard().getString().replace("#c", ""));
+					((Tag) event.getGestureSource()).setTag(currentTag);
+					sucess = true;
+				}
+
+				event.setDropCompleted(sucess);
+				event.consume();
+			});
+
+			// drag done
+			setOnDragDone(event -> {
+				if (event.getTransferMode() == TransferMode.MOVE) {
+					// System.out.println("Source"+event.getGestureSource() + "
+					// /Target:" + event.getGestureTarget());
+				}
+
+				event.consume();
+			});
+
+			// textLabel
+			textLabel.getStyleClass().add("label");
+			textLabel.setText(tag);
+			// textLabel.setMinWidth(getTag().length() * 6);
+
+			// iconLabel
+			iconLabel.setOnMouseReleased(r -> {
+				hBox.getChildren().remove(this);
+			});
+
+			getChildren().addAll(textLabel, iconLabel);
+		}
+
+		public String getTag() {
+			return textLabel.getText();
+		}
+
+		public void setTag(String text) {
+			textLabel.setText(text);
+		}
+
+	}
+
+}
\ No newline at end of file
diff --git a/simpleexample2/fxui/src/main/resources/simpleex/ui/tags/style.css b/simpleexample2/fxui/src/main/resources/simpleex/ui/tags/style.css
new file mode 100644
index 0000000000000000000000000000000000000000..5e520d580c1d1d9c9a9233ccabd665e4319d13e2
--- /dev/null
+++ b/simpleexample2/fxui/src/main/resources/simpleex/ui/tags/style.css
@@ -0,0 +1,138 @@
+
+
+/*******************************************************************************
+
+*                           ToolTips!!!                              *
+
+******************************************************************************/
+
+.tooltip{
+  -fx-background-color: yellow;
+  -fx-text-fill:black;
+  -fx-font-size:12.0;
+  -fx-effect: dropshadow( three-pass-box, black, 10.0, 0.0, 0.0, 0.0);
+   
+}
+
+ 
+/*******************************************************************************
+
+* CSS Styles for the Layouts..                                  *
+
+******************************************************************************/
+  .scroll-pane .viewport {
+    -fx-background-color: transparent;
+  }
+
+  .scroll-pane {
+	-fx-background-color:transparent;
+  }
+  
+  
+  .scroll-bar{
+    -fx-background-color: transparent;
+    /*-fx-background-radius:2.0em;*/
+  }
+
+  .scroll-bar:horizontal .increment-arrow {
+  	-fx-background-color: black;
+   -fx-shape: "M 0 0 L 4 8 L 8 0 Z";  
+   -fx-padding: 0.3em;
+   -fx-rotate: -90.0;
+  }
+  
+   .scroll-bar:horizontal .decrement-arrow {
+   -fx-background-color: black;
+   -fx-shape: "M 0 0 L 4 8 L 8 0 Z";
+   -fx-padding: 0.3em;
+   -fx-rotate: 90.0;
+  }
+  
+  .scroll-bar:vertical .increment-arrow {
+   -fx-background-color: rgb(211.0,211.0,211.0);
+   -fx-shape: "M 0 0 L 4 8 L 8 0 Z";
+   -fx-padding: 0.3em;
+   -fx-rotate: 0.0;
+  }
+  
+  
+  
+  .scroll-bar:vertical .decrement-arrow {
+   -fx-background-color: rgb(211.0,211.0,211.0);
+   -fx-shape: "M 0 0 L 4 8 L 8 0 Z";
+   -fx-padding: 0.3em;
+   -fx-rotate: -180.0;
+  }
+
+  .scroll-bar:vertical .increment-button,
+  .scroll-bar:vertical .decrement-button {
+   -fx-background-color:transparent;
+  }
+  
+  .scroll-bar:horizontal .increment-button,
+  .scroll-bar:horizontal .decrement-button {
+   -fx-background-color:transparent;
+  }
+
+
+/*******************************************************************************
+
+* CSS Styles for the TextField and Search-Box....                                 *
+
+******************************************************************************/
+
+.text-field {
+	 -fx-background-color: black;	
+    -fx-background-insets:3.0;
+    -fx-background-radius: 5.0;
+     -fx-text-fill:white;
+    -fx-font-size:15.0;      
+}
+
+.text-field:focused{
+	 -fx-background-color: orange, black;
+    -fx-background-insets: -0.1, 2.0;
+}
+
+
+  
+/*******************************************************************************
+
+* CSS Styles for the TextArea                            *
+
+******************************************************************************/
+  
+  
+  
+ /*******************************************************************************
+
+* CSS Styles for the TagsBar                         *
+
+******************************************************************************/
+   
+  .tags-bar {
+    -fx-background-color:white;
+    -fx-background-radius:15.0px;   
+    -fx-min-height: 45.0;
+    -fx-alignment:center-right;
+    -fx-spacing: 3.0px;
+    -fx-padding: 3.0px;
+ }
+
+ .tags-bar .tag {
+    -fx-background-color:black;
+    -fx-background-radius:10.0px;   
+    -fx-alignment: center;
+    -fx-padding:1.0px;
+    -fx-cursor:hand;
+ }
+ 
+  .tags-bar .tag .label{	
+  	-fx-text-fill:white;
+  	-fx-font-size:14.0px;
+  }
+  
+   
+   .text-field,.text-area {
+    -fx-prompt-text-fill:white;
+  }
\ No newline at end of file
diff --git a/simpleexample2/fxui/src/main/resources/simpleex/ui/tags/x.png b/simpleexample2/fxui/src/main/resources/simpleex/ui/tags/x.png
new file mode 100644
index 0000000000000000000000000000000000000000..a60eba732fdb5a0451cbd774a274e9c9e6a13800
Binary files /dev/null and b/simpleexample2/fxui/src/main/resources/simpleex/ui/tags/x.png differ