Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 33 additions & 32 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,32 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
5. **Branch naming** - Use format: `type/scope/short-description` (e.g., `feat/ui/settings-dialog`)
6. **Working an issue** - Always create a new branch from an updated main branch
7. **Check branch status before pushing** - Verify the remote tracking branch still exists. If a PR was merged/deleted, create a new branch from main instead
8. **WPF for all UI** - All UI must be implemented using WPF (XAML/C#). No web-based technologies (HTML, JavaScript, WebView)
8. **Microsoft coding guidelines** - Follow [Microsoft C# coding conventions](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/coding-style/coding-conventions) and [.NET library design guidelines](https://learn.microsoft.com/en-us/dotnet/standard/design-guidelines/)
9. **WPF for all UI** - All UI must be implemented using WPF (XAML/C#). No web-based technologies (HTML, JavaScript, WebView)

---

### GitHub CLI Commands

```bash
gh issue list # List open issues
gh issue view <number> # View details
gh issue create --title "type(scope): description" --body "..."
gh issue close <number>
```

### Conventional Commit Types

| Type | Description |
|------|-------------|
| `feat` | New feature |
| `fix` | Bug fix |
| `docs` | Documentation only |
| `refactor` | Code change that neither fixes a bug nor adds a feature |
| `test` | Adding or updating tests |
| `chore` | Maintenance tasks |
| `perf` | Performance improvement |
| `ci` | CI/CD changes |

### VSIX Development Rules

Expand All @@ -25,7 +50,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co

**Build Configuration:**
- Configurations: Debug and Release
- Platform: AnyCPU
- Platform: AnyCPU (or x64 where required)
- Build Tools: Latest 17.* release
- VSSDK: Latest 17.* release

Expand All @@ -45,51 +70,27 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co

**Development Environment:**
- Required extension: Extensibility Essentials 2022
- Helper library: VsixCommunity Toolkit
- Helper library: Community.VisualStudio.Toolkit (where applicable)

**Documentation:**
- README should be exciting and use emojis

---

### GitHub CLI Commands

```bash
gh issue list # List open issues
gh issue view <number> # View details
gh issue create --title "type(scope): description" --body "..."
gh issue close <number>
```

### Conventional Commit Types

| Type | Description |
|------|-------------|
| `feat` | New feature |
| `fix` | Bug fix |
| `docs` | Documentation only |
| `refactor` | Code change that neither fixes a bug nor adds a feature |
| `test` | Adding or updating tests |
| `chore` | Maintenance tasks |

---

## Project Overview

VS-CouchbaseExplorer is a Visual Studio 2022 extension for browsing and querying Couchbase Server and Capella databases. The extension is currently in preview/beta status.

## Build Commands

```bash
# Restore NuGet packages
nuget restore src/CodingWithCalvin.CouchbaseExplorer.sln
# Build the solution
dotnet build src/CodingWithCalvin.CouchbaseExplorer/CodingWithCalvin.CouchbaseExplorer.csproj

# Build (Release, x64)
msbuild src/CodingWithCalvin.CouchbaseExplorer/CodingWithCalvin.CouchbaseExplorer.csproj /p:configuration=Release /p:platform=x64 /p:DeployExtension=False
# Build Release
dotnet build src/CodingWithCalvin.CouchbaseExplorer/CodingWithCalvin.CouchbaseExplorer.csproj -c Release
```

The `/p:DeployExtension=False` flag prevents auto-deployment during CI builds. Remove it for local development to auto-deploy to the VS experimental instance.

## Architecture

### VS Extension Pattern
Expand Down Expand Up @@ -122,7 +123,7 @@ Uses **CouchbaseNetClient 3.5.2** for cluster connections, authentication, and N
## CI/CD

GitHub Actions workflows in `.github/workflows/`:
- `release_build_and_deploy.yml` - Builds on PR and main branch push, creates VSIX artifact
- `build.yml` - Builds on PR and main branch push, creates VSIX artifact
- `publish.yml` - Manual trigger to publish to VS Marketplace

## Development Prerequisites
Expand Down