Skip to content

Commit 294b6cf

Browse files
authored
Merge pull request #577 from devoxx/feature-robust-mcp-check
Feature robust mcp check
2 parents 84734a5 + 511385f commit 294b6cf

File tree

79 files changed

+24345
-81
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+24345
-81
lines changed

docusaurus/.gitignore

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Dependencies
2+
/node_modules
3+
4+
# Production
5+
/build
6+
7+
# Generated files
8+
.docusaurus
9+
.cache-loader
10+
11+
# Misc
12+
.DS_Store
13+
.env.local
14+
.env.development.local
15+
.env.test.local
16+
.env.production.local
17+
18+
npm-debug.log*
19+
yarn-debug.log*
20+
yarn-error.log*

docusaurus/README.md

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
# DevoxxGenie Documentation
2+
3+
This directory contains the documentation website for the DevoxxGenie IntelliJ IDEA plugin, built with [Docusaurus](https://docusaurus.io/).
4+
5+
## Local Development
6+
7+
### Prerequisites
8+
9+
- [Node.js](https://nodejs.org/en/download/) version 18 or above
10+
- [npm](https://www.npmjs.com/) (comes with Node.js)
11+
12+
### Installation
13+
14+
```bash
15+
npm install
16+
```
17+
18+
### About Image Placeholders
19+
20+
The documentation references many screenshots that need to be created. For development and testing, we use automatically generated placeholder images.
21+
22+
The `npm start` and `npm run build` commands will automatically generate these placeholders for all missing images. You don't need to run any separate commands for this.
23+
24+
### Local Development Server
25+
26+
```bash
27+
npm run start
28+
```
29+
30+
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
31+
32+
### Build
33+
34+
```bash
35+
npm run build
36+
```
37+
38+
This command generates static content into the `build` directory and can be served using any static contents hosting service.
39+
40+
## Adding Screenshots
41+
42+
Replace the placeholder images in the `static/img` directory with actual screenshots of the plugin:
43+
44+
1. Take screenshots of the relevant features in the plugin
45+
2. Save them with the same filenames as the placeholders
46+
3. Place them in the `static/img` directory
47+
48+
## Structure
49+
50+
- `docs/`: Documentation content in Markdown
51+
- `src/`: React components for custom pages
52+
- `static/`: Static assets like images
53+
- `docusaurus.config.js`: Docusaurus configuration
54+
- `sidebars.js`: Sidebar structure for documentation
55+
56+
## Adding Content
57+
58+
### Adding Documentation Pages
59+
60+
1. Add Markdown files to the `docs` directory
61+
2. Update `sidebars.js` if you want to add the page to the sidebar
62+
63+
### Adding Images
64+
65+
1. Place image files in `static/img/`
66+
2. Reference them in Markdown using relative paths: `![Alt text](/img/example.png)`
67+
68+
### Adding Components
69+
70+
If you need custom React components, add them to the `src/components/` directory.
71+
72+
## Deployment
73+
74+
The documentation site can be deployed to GitHub Pages:
75+
76+
```bash
77+
GIT_USER=<Your GitHub username> npm run deploy
78+
```
79+
80+
This command is a convenient way to build the website and push to the `gh-pages` branch.

docusaurus/WEBSITE.md

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# DevoxxGenie Documentation Website
2+
3+
This folder contains a [Docusaurus](https://docusaurus.io/) website that provides comprehensive documentation for the DevoxxGenie plugin.
4+
5+
## Running the Documentation Site
6+
7+
### Prerequisites
8+
9+
- Node.js version 18 or higher
10+
- npm (comes with Node.js)
11+
12+
### On Unix/Linux/macOS
13+
14+
1. Make the install script executable:
15+
```bash
16+
chmod +x install.sh
17+
```
18+
19+
2. Run the install script:
20+
```bash
21+
./install.sh
22+
```
23+
24+
### On Windows
25+
26+
1. Run the install script:
27+
```cmd
28+
install.bat
29+
```
30+
31+
Alternatively, you can manually install and run the site:
32+
33+
```bash
34+
# Install dependencies
35+
npm install
36+
37+
# Start development server
38+
npm start
39+
```
40+
41+
## Building for Production
42+
43+
To build the website for production deployment:
44+
45+
```bash
46+
npm run build
47+
```
48+
49+
This will generate static content in the `build` directory that can be served by any static hosting service.
50+
51+
## Deploying to GitHub Pages
52+
53+
The documentation can be deployed to GitHub Pages with:
54+
55+
```bash
56+
GIT_USER=<Your GitHub username> npm run deploy
57+
```
58+
59+
## Documentation Structure
60+
61+
- `docs/`: Contains all documentation markdown files
62+
- `blog/`: Contains blog posts
63+
- `static/`: Contains static assets like images
64+
- `src/`: Contains React components and custom pages
65+
66+
## Contributing to Documentation
67+
68+
1. Add or modify content in the appropriate folders
69+
2. Run the development server to preview changes
70+
3. Submit a pull request with your changes
71+
72+
## Best Practices
73+
74+
- Keep documentation up to date with the latest plugin features
75+
- Include screenshots and diagrams where helpful
76+
- Provide clear step-by-step instructions
77+
- Follow the existing organization and style
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
---
2+
slug: devoxxgenie-assistant-for-idea
3+
title: DevoxxGenie - Your AI Assistant for IDEA
4+
authors: [devoxx]
5+
tags: [announcements, AI, IntelliJ IDEA]
6+
date: 2025-03-24
7+
---
8+
9+
# DevoxxGenie: Your AI Assistant for IDEA
10+
11+
DevoxxGenie is a powerful AI-powered assistant for IntelliJ IDEA that helps developers be more productive by leveraging the capabilities of Large Language Models (LLMs). Unlike other code assistants, DevoxxGenie is built entirely in Java and offers unique flexibility by supporting both local and cloud-based LLM providers.
12+
13+
## A New Approach to AI Code Assistance
14+
15+
Most AI coding assistants lock you into a specific model or cloud provider. DevoxxGenie takes a different approach, giving you the freedom to choose how you want to use AI in your development workflow:
16+
17+
- Run models locally for privacy and offline use
18+
- Connect to cloud providers for more powerful capabilities
19+
- Switch between providers as needed without changing tools
20+
21+
## Key Features
22+
23+
DevoxxGenie offers a comprehensive set of features that integrate seamlessly with your development workflow:
24+
25+
### Multi-Provider LLM Support
26+
27+
Connect to a wide range of LLM providers:
28+
- **Local Providers**: Ollama, LMStudio, GPT4All, Llama.cpp, and more
29+
- **Cloud Providers**: OpenAI, Anthropic (Claude), Mistral, Groq, Google (Gemini), and others
30+
31+
### Advanced Context Features
32+
33+
- **MCP Support**: Access external tools and services for enhanced capabilities
34+
- **Project Scanner**: Add source code to prompt context for better responses
35+
- **Chat Memory**: Maintain conversation context for more coherent assistance
36+
37+
### Developer-Focused Tools
38+
39+
- **Git Diff/Merge**: Review and accept AI-generated code changes with a Git diff interface
40+
- **Web Search**: Augment LLM knowledge with web search results
41+
- **Token Cost Calculator**: Manage API usage efficiently
42+
- **MCP Support**: Model Context Protocol for extended capabilities
43+
44+
## Getting Started
45+
46+
Setting up DevoxxGenie is easy. Install the plugin from the JetBrains Marketplace, connect it to your preferred LLM provider, and start prompting. The plugin supports various workflows:
47+
48+
1. **Code Explanation**: Select code and ask for explanations
49+
2. **Generation**: Request code generation for specific functionality
50+
3. **Refactoring**: Get suggestions for code improvements
51+
4. **Learning**: Ask questions about frameworks, libraries, or concepts
52+
53+
## Why DevoxxGenie?
54+
55+
1. **Built in Java**: Created by Java developers for the Java ecosystem
56+
2. **Provider Flexibility**: Use any supported LLM provider
57+
3. **Privacy Options**: Run models locally to keep your code private
58+
4. **Deep Integration**: Works seamlessly with IntelliJ IDEA
59+
5. **Open Source**: Community-driven development
60+
61+
## The Future of DevoxxGenie
62+
63+
The DevoxxGenie team is actively working on enhancing the plugin with new features:
64+
65+
- **Enhanced MCP Support**: More specialized tools for development tasks
66+
- **Agentic AI**: More sophisticated reasoning and planning capabilities
67+
- **Enhanced MCP Support**: More specialized tools for development tasks
68+
- **Improved Multimodal Support**: Better handling of visual elements
69+
70+
## Join the Community
71+
72+
DevoxxGenie is an open-source project, and we welcome contributions from the community. Whether you're fixing bugs, improving documentation, or adding new features, your help is appreciated!
73+
74+
Check out our [GitHub repository](https://github.com/devoxx/DevoxxGenieIDEAPlugin) to get involved.
75+
76+
---
77+
78+
Ready to try DevoxxGenie? Install it from the [JetBrains Marketplace](https://plugins.jetbrains.com/plugin/24169-devoxxgenie) and experience the next generation of AI-assisted development!

docusaurus/blog/authors.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
devoxx:
2+
name: Devoxx Team
3+
title: DevoxxGenie Development Team
4+
url: https://github.com/devoxx
5+
image_url: https://github.com/devoxx.png
6+
7+
stephanj:
8+
name: Stephan Janssen
9+
title: Creator of DevoxxGenie
10+
url: https://github.com/stephanj
11+
image_url: https://github.com/stephanj.png
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
#!/bin/bash
2+
# This script creates placeholder images for the Docusaurus site
3+
4+
PLACEHOLDER_SVG="./static/img/devoxxgenie-placeholder.svg"
5+
IMG_DIR="./static/img"
6+
7+
# List of all image names mentioned in the documentation
8+
image_names=(
9+
"logo.svg"
10+
"installation-marketplace.png"
11+
"ollama-setup.png"
12+
"openai-setup.png"
13+
"provider-selection.png"
14+
"custom-openai-settings.png"
15+
"settings-llm-providers.png"
16+
"prompts-settings.png"
17+
"token-cost-settings.png"
18+
"token-calculator.png"
19+
"devoxxgenie-md-settings.png"
20+
"chat-interface.png"
21+
"rag-setup.png"
22+
"rag-references.png"
23+
"mcp-settings.png"
24+
"mcp-logs.png"
25+
"dnd-images.png"
26+
"git-diff-settings.png"
27+
"git-diff-viewer.png"
28+
"add-project.png"
29+
"project-scanner-settings.png"
30+
"web-search-settings.png"
31+
"chat-memory-settings.png"
32+
"devoxxgenie-toolwindow.png"
33+
"devoxxgenie-demo.gif"
34+
"rag-feature.png"
35+
"devoxxgenie-social-card.jpg"
36+
"favicon.ico"
37+
)
38+
39+
# Create placeholder image for each image name if it doesn't exist
40+
for img in "${image_names[@]}"; do
41+
if [[ ! -f "$IMG_DIR/$img" ]]; then
42+
echo "Creating placeholder for $img"
43+
if [[ "$img" == *.svg ]]; then
44+
cp "$PLACEHOLDER_SVG" "$IMG_DIR/$img"
45+
else
46+
# For non-SVG files, convert the SVG to the appropriate format
47+
# This requires ImageMagick to be installed
48+
# If ImageMagick is not available, simply copy the SVG as a placeholder
49+
cp "$PLACEHOLDER_SVG" "$IMG_DIR/$img"
50+
fi
51+
fi
52+
done
53+
54+
echo "Placeholder images created in $IMG_DIR"

docusaurus/create-placeholders.js

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
// Create placeholder images for the documentation
2+
const fs = require('fs');
3+
const path = require('path');
4+
5+
const imgDir = path.join(__dirname, 'static', 'img');
6+
7+
// Create a basic SVG placeholder
8+
const createPlaceholderSvg = (filename) => {
9+
const name = path.basename(filename, path.extname(filename));
10+
const extension = path.extname(filename).slice(1);
11+
12+
const svgContent = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 400 200">
13+
<rect width="400" height="200" fill="#e0e0e0"/>
14+
<text x="200" y="100" font-family="Arial" font-size="18" text-anchor="middle" dominant-baseline="middle" fill="#333">${name}</text>
15+
<text x="200" y="130" font-family="Arial" font-size="14" text-anchor="middle" dominant-baseline="middle" fill="#666">(${extension} placeholder)</text>
16+
</svg>`;
17+
18+
fs.writeFileSync(filename, svgContent);
19+
console.log(`Created placeholder: ${filename}`);
20+
}
21+
22+
// List of all image names mentioned in the documentation
23+
const imageNames = [
24+
'logo.svg',
25+
'installation-marketplace.png',
26+
'ollama-setup.png',
27+
'openai-setup.png',
28+
'provider-selection.png',
29+
'custom-openai-settings.png',
30+
'settings-llm-providers.png',
31+
'prompts-settings.png',
32+
'token-cost-settings.png',
33+
'token-calculator.png',
34+
'devoxxgenie-md-settings.png',
35+
'chat-interface.png',
36+
'rag-setup.png',
37+
'rag-references.png',
38+
'mcp-settings.png',
39+
'mcp-logs.png',
40+
'dnd-images.png',
41+
'git-diff-settings.png',
42+
'git-diff-viewer.png',
43+
'add-project.png',
44+
'project-scanner-settings.png',
45+
'web-search-settings.png',
46+
'chat-memory-settings.png',
47+
'devoxxgenie-toolwindow.png',
48+
'devoxxgenie-demo.gif',
49+
'rag-feature.png',
50+
'devoxxgenie-social-card.jpg',
51+
];
52+
53+
// Ensure img directory exists
54+
if (!fs.existsSync(imgDir)) {
55+
fs.mkdirSync(imgDir, { recursive: true });
56+
console.log(`Created directory: ${imgDir}`);
57+
}
58+
59+
// Create placeholder image for each image name if it doesn't exist
60+
for (const img of imageNames) {
61+
const imgPath = path.join(imgDir, img);
62+
if (!fs.existsSync(imgPath)) {
63+
createPlaceholderSvg(imgPath);
64+
}
65+
}
66+
67+
console.log('All placeholder images created in', imgDir);

0 commit comments

Comments
 (0)