Content is user-generated and unverified.

πŸš€ Claude Code Quick Start Guide for Windows

πŸ“‹ What We're Building

A professional Claude Code environment using:

  • Docker for isolated development environments
  • Node.js 24 for running Claude Code
  • GitHub Desktop for easy version control
  • CLAUDE.md for persistent memory between sessions

🎯 PART 1: Get Claude Running (30 minutes)

Step 1: Install Docker Desktop

  1. Download: https://www.docker.com/products/docker-desktop/
  2. Install:
    • βœ… Enable WSL 2
    • βœ… Add desktop shortcut
  3. Restart your computer
  4. Verify: Open PowerShell and run:
powershell
   docker --version

Step 2: Create Claude Docker Image

2.1 Start Fresh Ubuntu Container

In PowerShell:

powershell
docker run -it --name claude-setup ubuntu:24.04 bash

2.2 Install Claude Code (Inside Container)

You're now inside the container. Copy and paste this entire block:

bash
# Update system
apt update && apt upgrade -y

# Install essential tools
apt install -y curl git ripgrep nano wget

# Install Node.js 24 (Latest LTS)
curl -fsSL https://deb.nodesource.com/setup_24.x | bash -
apt install -y nodejs

# Configure npm for global packages
mkdir -p ~/.npm-global
npm config set prefix '~/.npm-global'
echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

# Install Claude Code
npm install -g @anthropic-ai/claude-code

# Verify installation
claude --version

2.3 Save Your Claude Image

  1. Exit the container:
bash
   exit
  1. Save as reusable image (in PowerShell):
powershell
   docker commit claude-setup claude-image
   docker rm claude-setup

Step 3: Test Claude

Create a test project:

powershell
# Create test directory
mkdir C:\claude-test
cd C:\claude-test

# Run Claude
docker run -it --rm -v "C:\claude-test:/workspace" claude-image bash -c "cd /workspace && claude"

πŸŽ‰ If you see Claude's interface, you're ready to code!


πŸ“ PART 2: GitHub Integration with GitHub Desktop (15 minutes)

Step 1: Install GitHub Desktop

  1. Download: https://desktop.github.com/
  2. Install and sign in to your GitHub account
  3. Configure Git settings when prompted

Step 2: Create Your Projects Structure

powershell
# Create main projects folder
mkdir "C:\Users\$env:USERNAME\Documents\GitHub"

Step 3: Create Your First Project

  1. In GitHub Desktop:
    • File β†’ New Repository
    • Name: my-first-project
    • Local Path: C:\Users\[YourName]\Documents\GitHub
    • βœ… Initialize with README
    • Create Repository
  2. Add CLAUDE.md (crucial step):
    • Click "Show in Explorer"
    • Create new file: CLAUDE.md
    • Copy the template from Part 3 below
  3. Commit in GitHub Desktop:
    • You'll see CLAUDE.md in changes
    • Summary: "Add CLAUDE.md for Claude memory"
    • Click "Commit to main"
    • Click "Publish repository"

🧠 PART 3: The CLAUDE.md System - Claude's Memory

Why CLAUDE.md is Critical

Without CLAUDE.md: Every Claude session starts from zero. You'll repeat explanations, lose context, and waste time.

With CLAUDE.md: Claude remembers everything between sessions - your progress, decisions, and next steps.

Essential CLAUDE.md Template

Create this file in EVERY project:

markdown
# [Project Name] - Claude Development Guide

## 🎯 Project Mission
[One sentence describing what we're building and why]

## πŸ“Š Current Status
- **Version**: 0.1.0
- **Last Session**: [Date]
- **Next Priority**: [What to work on next]

## πŸ”₯ Active Tasks (Current Session)
Working on:
- [ ] Current task

## πŸ“‹ Master Task List

### High Priority
- [ ] Task 1
- [ ] Task 2

### Medium Priority
- [ ] Task 3
- [ ] Task 4

### Completed βœ…
- [x] Set up project (Date)

## πŸ—οΈ Project Structure

project/ β”œβ”€β”€ src/ β”œβ”€β”€ tests/ β”œβ”€β”€ CLAUDE.md <-- You are here └── README.md


## πŸ’‘ Key Decisions & Context
- **Why we chose X**: [Reasoning]
- **Important constraint**: [Details]

## πŸ”§ Technical Notes
- **API Endpoint**: https://api.example.com
- **Database**: PostgreSQL
- **Key Dependencies**: express, postgres

## πŸ“ Session Notes

### Session [Date]
- Completed: [What we did]
- Discovered: [Problems/insights]
- Next time: [What to do next]

## ⚑ Quick Commands
```bash
# Start dev server
npm run dev

# Run tests
npm test

# Deploy
npm run deploy
```

## 🚨 Claude Instructions
1. ALWAYS read this file first when starting
2. Update task lists as we complete items
3. Add new discoveries to session notes
4. Ask for clarification if anything is unclear

Working with CLAUDE.md

Starting Each Session

powershell
# Start your container
docker run -it --name claude-myproject -v "C:\Users\$env:USERNAME\Documents\GitHub\my-first-project:/workspace" claude-image bash

# Inside container
cd /workspace
claude

First prompt to Claude:

Read CLAUDE.md to understand our project. What should we work on today based on our priorities?

During Your Session

  • "Let's update CLAUDE.md with our progress"
  • "What new tasks should we add to CLAUDE.md?"
  • "Please document this decision in CLAUDE.md"

Ending Your Session

Final prompt:

Update CLAUDE.md with:
1. Tasks we completed (move to Completed section)
2. New tasks we discovered
3. Session notes with key decisions
4. What we should work on next time

Then commit:

  1. In GitHub Desktop, review CLAUDE.md changes
  2. Commit message: "Update CLAUDE.md: [what you worked on]"
  3. Push to GitHub

πŸš€ PART 4: Advanced Memory Techniques

1. Code Markers for Context

In your code files, add:

javascript
// CLAUDE-CONTEXT: This handles user authentication
// CLAUDE-TODO: Add rate limiting here
// CLAUDE-CAREFUL: Security-critical - don't modify without review

Reference these in CLAUDE.md:

markdown
## Code Markers
- Look for CLAUDE-TODO markers for quick tasks
- CLAUDE-CONTEXT explains complex sections
- CLAUDE-CAREFUL marks security-sensitive code

2. Decision Log

Add to CLAUDE.md:

markdown
## Architecture Decisions

### 2024-03-15: Chose PostgreSQL over MongoDB
- **Reason**: Need ACID compliance for financial data
- **Trade-off**: Less flexible schema
- **Mitigation**: Using JSONB columns for flexibility

3. Progress Tracking

markdown
## Project Milestones
- [x] Phase 1: Basic Setup (Week 1)
- [x] Phase 2: Core Features (Week 2-3)
- [ ] Phase 3: Testing (Week 4)
- [ ] Phase 4: Deployment (Week 5)

Current Phase: 2 (60% complete)

4. Context Preservation

markdown
## Important Context
- **Client Requirement**: Must work offline
- **Performance Target**: <100ms response time
- **Browser Support**: Chrome, Firefox, Safari (no IE)
- **Mobile**: Responsive, not native

5. Session Continuity

Always end CLAUDE.md with:

markdown
## πŸ”„ Next Session Setup
1. First, run: `npm install` (if any new dependencies)
2. Check tests: `npm test`
3. Continue with: [Specific task]
4. Watch out for: [Any gotchas]

πŸ“š Daily Workflow Summary

Morning Routine

  1. Start Docker Desktop
  2. Open GitHub Desktop β†’ Fetch origin
  3. Start Container:
powershell
   docker start -ai claude-myproject
  1. In Container:
bash
   cd /workspace
   git pull
   claude
  1. First Prompt: "Read CLAUDE.md and let's continue where we left off"

During Work

  • Commit every 1-2 hours via GitHub Desktop
  • Update CLAUDE.md with decisions and progress
  • Use descriptive commit messages

End of Day

  1. Final Claude Prompt: "Update CLAUDE.md with today's progress and tomorrow's priorities"
  2. In GitHub Desktop:
    • Review all changes
    • Commit with message: "End of day: [what you accomplished]"
    • Push to GitHub
  3. Exit Container: exit

πŸ”§ Quick Troubleshooting

Claude command not found

bash
source ~/.bashrc
# or
export PATH="$HOME/.npm-global/bin:$PATH"

Container name already in use

powershell
docker rm claude-myproject
# Then create new container

GitHub Desktop not seeing changes

  • File β†’ Repository Settings β†’ Repository
  • Make sure path is correct
  • Click "Fetch origin" to sync

🎯 Key Takeaways

  1. CLAUDE.md is NOT optional - It's Claude's brain between sessions
  2. Commit CLAUDE.md frequently - It's your progress tracker
  3. Be specific in CLAUDE.md - Vague notes = confused Claude
  4. Use GitHub Desktop - Visual commits are easier than command line
  5. One project = One container - Keep projects isolated

πŸ“Š Setup Checklist

  • Docker Desktop installed and running
  • Claude Docker image created (claude-image)
  • GitHub Desktop installed and logged in
  • Projects folder created (C:\Users\[You]\Documents\GitHub)
  • First project with CLAUDE.md
  • Successfully ran Claude in container
  • Pushed to GitHub via GitHub Desktop

Ready to build amazing things with Claude! πŸš€

Content is user-generated and unverified.
    Claude Code Quick Start Guide - Windows + Docker + GitHub | Claude