void;
+}
+
+export function AudioSection({
+ muteDoneSound,
+ onMuteDoneSoundChange,
+}: AudioSectionProps) {
+ return (
+
+ );
+}
diff --git a/apps/app/src/components/views/settings-view/cli-status/claude-cli-status.tsx b/apps/app/src/components/views/settings-view/cli-status/claude-cli-status.tsx
index e0283130..8df5b836 100644
--- a/apps/app/src/components/views/settings-view/cli-status/claude-cli-status.tsx
+++ b/apps/app/src/components/views/settings-view/cli-status/claude-cli-status.tsx
@@ -23,9 +23,8 @@ export function ClaudeCliStatus({
return (
void;
+ onNavigate: (sectionId: SettingsViewId) => void;
}
export function SettingsNavigation({
diff --git a/apps/app/src/components/views/settings-view/config/navigation.ts b/apps/app/src/components/views/settings-view/config/navigation.ts
index b98a6e66..f907d99a 100644
--- a/apps/app/src/components/views/settings-view/config/navigation.ts
+++ b/apps/app/src/components/views/settings-view/config/navigation.ts
@@ -3,14 +3,15 @@ import {
Key,
Terminal,
Palette,
- LayoutGrid,
Settings2,
+ Volume2,
FlaskConical,
Trash2,
} from "lucide-react";
+import type { SettingsViewId } from "../hooks/use-settings-view";
export interface NavigationItem {
- id: string;
+ id: SettingsViewId;
label: string;
icon: LucideIcon;
}
@@ -20,8 +21,8 @@ export const NAV_ITEMS: NavigationItem[] = [
{ id: "api-keys", label: "API Keys", icon: Key },
{ id: "claude", label: "Claude", icon: Terminal },
{ id: "appearance", label: "Appearance", icon: Palette },
- { id: "kanban", label: "Kanban Display", icon: LayoutGrid },
{ id: "keyboard", label: "Keyboard Shortcuts", icon: Settings2 },
+ { id: "audio", label: "Audio", icon: Volume2 },
{ id: "defaults", label: "Feature Defaults", icon: FlaskConical },
{ id: "danger", label: "Danger Zone", icon: Trash2 },
];
diff --git a/apps/app/src/components/views/settings-view/danger-zone/danger-zone-section.tsx b/apps/app/src/components/views/settings-view/danger-zone/danger-zone-section.tsx
index e48aa471..b13d5fd3 100644
--- a/apps/app/src/components/views/settings-view/danger-zone/danger-zone-section.tsx
+++ b/apps/app/src/components/views/settings-view/danger-zone/danger-zone-section.tsx
@@ -16,9 +16,8 @@ export function DangerZoneSection({
return (
(initialView);
+
+ const navigateTo = useCallback((viewId: SettingsViewId) => {
+ setActiveView(viewId);
+ }, []);
+
+ return {
+ activeView,
+ navigateTo,
+ };
+}
diff --git a/apps/app/src/components/views/settings-view/keyboard-shortcuts/keyboard-shortcuts-section.tsx b/apps/app/src/components/views/settings-view/keyboard-shortcuts/keyboard-shortcuts-section.tsx
index a62bd3ac..10c25bc6 100644
--- a/apps/app/src/components/views/settings-view/keyboard-shortcuts/keyboard-shortcuts-section.tsx
+++ b/apps/app/src/components/views/settings-view/keyboard-shortcuts/keyboard-shortcuts-section.tsx
@@ -11,9 +11,8 @@ export function KeyboardShortcutsSection({
}: KeyboardShortcutsSectionProps) {
return (
+```
+
+**Branch naming conventions:**
+
+- `feature/` - for new features
+- `fix/` or `bugfix/` - for bug fixes
+- `refactor/` - for code refactoring
+- `docs/` - for documentation changes
+- `chore/` - for maintenance tasks
+
+**Example:**
+
+```bash
+git checkout -b refactor/monorepo-restructure
+```
+
+### 3. Stage Changes
+
+Stage all changes (including deletions and new files):
+
+```bash
+git add -A
+```
+
+Or stage specific files:
+
+```bash
+git add
+```
+
+### 4. Commit Changes
+
+Create a commit with a descriptive message:
+
+```bash
+git commit -m "type: descriptive commit message"
+```
+
+**Commit message conventions:**
+
+- Use conventional commits format: `type: description`
+- Types: `feat`, `fix`, `refactor`, `docs`, `chore`, `test`, `style`
+- Keep messages concise but descriptive
+
+**Example:**
+
+```bash
+git commit -m "refactor: restructure project to monorepo with apps directory"
+```
+
+### 5. Push Branch to Remote
+
+Push your branch to the remote repository:
+
+```bash
+git push -u origin
+```
+
+The `-u` flag sets up tracking so future pushes can use `git push` without specifying the branch.
+
+**Example:**
+
+```bash
+git push -u origin refactor/monorepo-restructure
+```
+
+### 6. Create Pull Request
+
+#### Option A: Using GitHub CLI (Recommended)
+
+If you have GitHub CLI installed:
+
+```bash
+gh pr create --title "Your PR Title" --body "Description of changes"
+```
+
+To open in browser for review before creating:
+
+```bash
+gh pr create --title "Your PR Title" --body "Description" --web
+```
+
+#### Option B: Using GitHub Web Interface
+
+After pushing, GitHub will provide a URL in the terminal output:
+
+```
+remote: Create a pull request for '' on GitHub by visiting:
+remote: https://github.com///pull/new/
+```
+
+Visit that URL to create the PR through the web interface.
+
+#### Option C: Manual PR Creation
+
+1. Go to your repository on GitHub
+2. Click "Pull requests" tab
+3. Click "New pull request"
+4. Select your branch as the source
+5. Select the target branch (usually `main` or `master`)
+6. Fill in title and description
+7. Click "Create pull request"
+
+## Complete Example Workflow
+
+```bash
+# 1. Check status
+git status
+
+# 2. Create branch
+git checkout -b feature/add-new-component
+
+# 3. Make your changes (edit files, etc.)
+
+# 4. Stage changes
+git add -A
+
+# 5. Commit
+git commit -m "feat: add new user dashboard component"
+
+# 6. Push
+git push -u origin feature/add-new-component
+
+# 7. Create PR
+gh pr create --title "feat: add new user dashboard component" --body "Implements new dashboard component with user statistics and activity feed."
+```
+
+## Handling Additional Changes
+
+If you need to make more changes after pushing:
+
+```bash
+# Make your changes
+git add -A
+git commit -m "fix: address review feedback"
+git push
+```
+
+The PR will automatically update with the new commits.
+
+## Troubleshooting
+
+### Branch already exists
+
+```bash
+git checkout
+```
+
+### Need to update from main before creating PR
+
+```bash
+git checkout main
+git pull origin main
+git checkout
+git merge main
+# Resolve conflicts if any
+git push
+```
+
+### PR creation fails
+
+- Ensure branch is pushed: `git push -u origin `
+- Check GitHub CLI authentication: `gh auth status`
+- Verify repository access permissions
+- Try creating PR via web interface instead
+
+## Best Practices
+
+1. **Keep branches focused**: One branch = one feature/fix
+2. **Write clear commit messages**: Help reviewers understand changes
+3. **Keep PRs small**: Easier to review and merge
+4. **Update before creating PR**: Merge latest `main` into your branch
+5. **Add tests**: Include tests for new features
+6. **Update documentation**: Keep docs in sync with code changes
+7. **Request reviews**: Tag relevant team members for review
+
+## Quick Reference Commands
+
+```bash
+# Status check
+git status
+
+# Create branch
+git checkout -b
+
+# Stage all changes
+git add -A
+
+# Commit
+git commit -m "type: message"
+
+# Push
+git push -u origin
+
+# Create PR (GitHub CLI)
+gh pr create --title "Title" --body "Description"
+
+# View PR
+gh pr view
+
+# List PRs
+gh pr list
+```