diff --git a/intelliJ/stackoverflow-plugin-gradle/build.gradle b/intelliJ/stackoverflow-plugin-gradle/build.gradle
new file mode 100644
index 0000000000..cd0cc258bf
--- /dev/null
+++ b/intelliJ/stackoverflow-plugin-gradle/build.gradle
@@ -0,0 +1,25 @@
+plugins {
+ id 'java'
+ id 'org.jetbrains.intellij' version '0.4.21'
+}
+
+group 'com.baeldung'
+version '1.0-SNAPSHOT'
+
+repositories {
+ mavenCentral()
+}
+
+dependencies {
+ testCompile group: 'junit', name: 'junit', version: '4.12'
+}
+
+// See https://github.com/JetBrains/gradle-intellij-plugin/
+intellij {
+ version '2020.1.1'
+}
+patchPluginXml {
+ changeNotes """
+ Add change notes here.
+ most HTML tags may be used"""
+}
\ No newline at end of file
diff --git a/intelliJ/stackoverflow-plugin-gradle/settings.gradle b/intelliJ/stackoverflow-plugin-gradle/settings.gradle
new file mode 100644
index 0000000000..bbbccdb823
--- /dev/null
+++ b/intelliJ/stackoverflow-plugin-gradle/settings.gradle
@@ -0,0 +1,3 @@
+rootProject.name = 'stackoverflow-plugin-gradle'
+include 'java'
+
diff --git a/intelliJ/stackoverflow-plugin-gradle/src/main/java/com/baeldung/intellij/stackoverflowplugin/AskQuestionAction.java b/intelliJ/stackoverflow-plugin-gradle/src/main/java/com/baeldung/intellij/stackoverflowplugin/AskQuestionAction.java
new file mode 100644
index 0000000000..2d53e7047a
--- /dev/null
+++ b/intelliJ/stackoverflow-plugin-gradle/src/main/java/com/baeldung/intellij/stackoverflowplugin/AskQuestionAction.java
@@ -0,0 +1,12 @@
+package com.baeldung.intellij.stackoverflowplugin;
+
+import com.intellij.ide.BrowserUtil;
+import com.intellij.openapi.actionSystem.AnAction;
+import com.intellij.openapi.actionSystem.AnActionEvent;
+
+public class AskQuestionAction extends AnAction {
+ @Override
+ public void actionPerformed(AnActionEvent e) {
+ BrowserUtil.browse("https://stackoverflow.com/questions/ask");
+ }
+}
diff --git a/intelliJ/stackoverflow-plugin-gradle/src/main/java/com/baeldung/intellij/stackoverflowplugin/SearchAction.java b/intelliJ/stackoverflow-plugin-gradle/src/main/java/com/baeldung/intellij/stackoverflowplugin/SearchAction.java
new file mode 100644
index 0000000000..a73a7ec415
--- /dev/null
+++ b/intelliJ/stackoverflow-plugin-gradle/src/main/java/com/baeldung/intellij/stackoverflowplugin/SearchAction.java
@@ -0,0 +1,41 @@
+package com.baeldung.intellij.stackoverflowplugin;
+
+import com.intellij.ide.BrowserUtil;
+import com.intellij.lang.Language;
+import com.intellij.openapi.actionSystem.AnAction;
+import com.intellij.openapi.actionSystem.AnActionEvent;
+import com.intellij.openapi.actionSystem.CommonDataKeys;
+import com.intellij.openapi.actionSystem.LangDataKeys;
+import com.intellij.openapi.editor.CaretModel;
+import com.intellij.openapi.editor.Editor;
+import com.intellij.psi.PsiFile;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.Optional;
+
+public class SearchAction extends AnAction {
+
+ @Override
+ public void actionPerformed(@NotNull AnActionEvent e) {
+ Optional psiFile = Optional.ofNullable(e.getData(LangDataKeys.PSI_FILE));
+ String languageTag = psiFile
+ .map(PsiFile::getLanguage)
+ .map(Language::getDisplayName)
+ .map(String::toLowerCase)
+ .map(lang -> "[" + lang + "]")
+ .orElse("");
+
+ Editor editor = e.getRequiredData(CommonDataKeys.EDITOR);
+ CaretModel caretModel = editor.getCaretModel();
+ String selectedText = caretModel.getCurrentCaret().getSelectedText();
+
+ BrowserUtil.browse("https://stackoverflow.com/search?q=" + languageTag + selectedText);
+ }
+
+ @Override
+ public void update(AnActionEvent e) {
+ Editor editor = e.getRequiredData(CommonDataKeys.EDITOR);
+ CaretModel caretModel = editor.getCaretModel();
+ e.getPresentation().setEnabledAndVisible(caretModel.getCurrentCaret().hasSelection());
+ }
+}
diff --git a/intelliJ/stackoverflow-plugin-gradle/src/main/resources/META-INF/plugin.xml b/intelliJ/stackoverflow-plugin-gradle/src/main/resources/META-INF/plugin.xml
new file mode 100644
index 0000000000..e68de96d33
--- /dev/null
+++ b/intelliJ/stackoverflow-plugin-gradle/src/main/resources/META-INF/plugin.xml
@@ -0,0 +1,41 @@
+
+ com.baeldung.stackoverflow-plugin-gradle
+ StackOverflow
+ Baeldung
+
+
+
+
+ com.intellij.modules.platform
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file