|
| 1 | +# CLAUDE.md |
| 2 | + |
| 3 | +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. |
| 4 | + |
| 5 | +## Repository Overview |
| 6 | + |
| 7 | +This is a generic GitHub Codespace/devcontainer template repository that provides a standardized development environment. The repository focuses on devcontainer configuration rather than specific application code. |
| 8 | + |
| 9 | +## Architecture |
| 10 | + |
| 11 | +- **Base Environment**: Ubuntu 24.04 via Microsoft devcontainer base image |
| 12 | +- **Container Configuration**: Uses Docker Compose with devcontainer.json for proper service orchestration |
| 13 | +- **Tool Stack**: Pre-configured with Docker-in-Docker, Kubernetes (kubectl, helm, minikube), Git, GitHub CLI, and SSH |
| 14 | +- **User Dotfiles**: Integrates with idvoretskyi/dotfiles repository for personalized shell configuration |
| 15 | +- **SSH Access**: Pre-configured SSH server with proper directory structure for remote development |
| 16 | + |
| 17 | +## Key Components |
| 18 | + |
| 19 | +- `.devcontainer/devcontainer.json`: Main devcontainer configuration using Docker Compose with features, VS Code extensions, and settings |
| 20 | +- `.devcontainer/Dockerfile`: Custom Ubuntu image with essential development packages (curl, wget, jq, build-essential, openssh-server) |
| 21 | +- `.devcontainer/docker-compose.yml`: Container orchestration with volume mounts and SSH port forwarding |
| 22 | + |
| 23 | +## Common Commands |
| 24 | + |
| 25 | +### Development Environment |
| 26 | +The environment includes these pre-configured tools: |
| 27 | +- Docker and Docker Compose (via docker-in-docker) |
| 28 | +- Kubernetes tools: kubectl, helm, minikube |
| 29 | +- GitHub CLI (gh) |
| 30 | +- SSH server (automatically started on port 22) |
| 31 | + |
| 32 | +## VS Code Configuration |
| 33 | + |
| 34 | +Pre-installed extensions: |
| 35 | +- Docker support (ms-azuretools.vscode-docker) |
| 36 | +- GitHub Copilot and Copilot Chat |
| 37 | +- YAML support (redhat.vscode-yaml) |
| 38 | +- Kubernetes tools (ms-kubernetes-tools.vscode-kubernetes-tools) |
| 39 | + |
| 40 | +Editor settings enforce: |
| 41 | +- Format on save |
| 42 | +- 80/120 character rulers |
| 43 | +- Zsh as default terminal |
| 44 | +- Trailing whitespace trimming |
| 45 | +- Bracket pair colorization |
| 46 | + |
| 47 | +## Environment Customization |
| 48 | + |
| 49 | +To customize this template: |
| 50 | +- Modify `.devcontainer/devcontainer.json` for VS Code extensions/settings |
| 51 | +- Edit `.devcontainer/Dockerfile` for additional system packages |
| 52 | +- Update `.devcontainer/docker-compose.yml` for additional services |
0 commit comments