Skip to content

eugeneoshepkov/claude_code_stuffs

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

15 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Claude Code Development Framework

A comprehensive development framework and best practices collection for working with Claude Code on various technology stacks.

Overview

This repository contains structured guidelines, best practices, and tools for efficient software development with Claude Code. It provides technology-specific guidance, workflow automation, and quality assurance processes.

πŸš€ New: Session Management System

The framework now includes an intelligent session management system that:

  • Prevents conversation limit issues with health monitoring (🟒 Healthy β†’ 🟑 Approaching β†’ πŸ”΄ Handover)
  • Enables seamless handovers between Claude sessions
  • Tracks work context including mode, scope, and task progress
  • Integrates with existing workflow for continuous development

Try it: Start any conversation with <Health-Check> to see session status!

Directory Structure

.
β”œβ”€β”€ .claude/
β”‚   β”œβ”€β”€ best_practices/  # Technology-specific best practices
β”‚   β”‚   β”œβ”€β”€ angular-best-practices.md
β”‚   β”‚   β”œβ”€β”€ api-design-best-practices.md
β”‚   β”‚   β”œβ”€β”€ apostrophe-best-practices.md
β”‚   β”‚   β”œβ”€β”€ database-best-practices.md
β”‚   β”‚   β”œβ”€β”€ docker-best-practices.md
β”‚   β”‚   β”œβ”€β”€ java-best-practices.md
β”‚   β”‚   β”œβ”€β”€ logging-monitoring-best-practices.md
β”‚   β”‚   β”œβ”€β”€ nodejs-best-practices.md
β”‚   β”‚   β”œβ”€β”€ php-best-practices.md
β”‚   β”‚   β”œβ”€β”€ python-best-practices.md
β”‚   β”‚   β”œβ”€β”€ security-best-practices.md
β”‚   β”‚   └── mcp-best-practices.md
β”‚   β”œβ”€β”€ commands/
β”‚   β”‚   β”œβ”€β”€ jira.md
β”‚   β”‚   β”œβ”€β”€ fix-github-issues.md
β”‚   β”‚   β”œβ”€β”€ document.md
β”‚   β”‚   └── health-check.md         # Session health monitoring
β”‚   β”œβ”€β”€ config/             # Team configurations
β”‚   β”‚   β”œβ”€β”€ examples/       # Example configurations
β”‚   β”‚   β”œβ”€β”€ config-schema.yaml
β”‚   β”‚   β”œβ”€β”€ default-config.yaml
β”‚   β”‚   └── load-config.sh
β”‚   β”œβ”€β”€ guides/             # How-to guides
β”‚   β”‚   β”œβ”€β”€ customization-guide.md
β”‚   β”‚   └── session-management-guide.md
β”‚   β”œβ”€β”€ session/            # Session state management
β”‚   β”‚   └── current-session.yaml
β”‚   └── templates/          # Project templates
β”‚       β”œβ”€β”€ code-review-checklist.md
β”‚       β”œβ”€β”€ pull-request-template.md
β”‚       β”œβ”€β”€ task-spec-template.md
β”‚       β”œβ”€β”€ custom-best-practice-template.md
β”‚       β”œβ”€β”€ best-practice-addendum-template.md
β”‚       β”œβ”€β”€ team-quick-reference.md
β”‚       β”œβ”€β”€ migration-guide-template.md
β”‚       └── handover-template.md    # Session handover documentation
β”œβ”€β”€ claude_code_changes/    # Session change tracking
β”œβ”€β”€ scripts/                # Utility scripts
β”‚   β”œβ”€β”€ setup-dev-env.sh   # Development environment setup
β”‚   β”œβ”€β”€ customize-framework.sh  # Interactive customization tool
β”‚   └── validate-best-practices.sh  # Validation tool for customizations
β”œβ”€β”€ tasks/                  # Task specifications and implementations
β”‚   └── specs/             # Task specification documents
β”œβ”€β”€ CLAUDE.md              # Main Claude Code guidelines
└── README.md              # This file

Quick Start

  1. Clone the repository:

    git clone <repository-url>
    cd claude_code_stuffs
  2. Set up development environment: This only applies if it is a new project and fits with your workflow.

    ./scripts/setup-dev-env.sh
  3. Customize for your team (optional but recommended):

    ./scripts/customize-framework.sh
  4. Review the main guidelines:

    • Read CLAUDE.md for core development principles
    • Check relevant technology-specific guides in .claude/best_practises/

Key Features

🎯 Session Management System

  • Health Monitoring: Automatic tracking of conversation length with visual indicators
  • Smart Handovers: Generate comprehensive handover documents when approaching limits
  • Mode Switching: DEBUG, BUILD, REVIEW, LEARN, RAPID modes for different contexts
  • Scope Tracking: MICRO to EPIC classifications for work complexity
  • Command Triggers: <Health-Check>, <Handover01>, mode/scope commands
  • State Persistence: Maintains context across sessions in .claude/session/

πŸ›  Technology-Specific Best Practices

Comprehensive guides for:

  • Frontend: Angular, JavaScript/TypeScript
  • Backend: Node.js, Python, PHP, Java
  • Infrastructure: Docker, Database (SQL/NoSQL)
  • API Development: RESTful APIs, OpenAPI/Swagger
  • CMS: ApostropheCMS
  • Security: OWASP compliance, authentication, encryption
  • Monitoring: Logging strategies, performance monitoring
  • MCP Tools: Model Context Protocol, version management, tool integration

πŸ“‹ Workflow Management

  • JIRA Integration: Structured task management
  • Git Workflow: Branch naming, commit conventions
  • Change Tracking: Automatic session documentation
  • Test-Driven Development: TDD methodology and practices

πŸ”’ Security & Quality

  • Security Best Practices: OWASP Top 10 compliance checklist
  • Code Quality: Linting, testing, and review processes
  • API Security: Authentication, rate limiting, CORS
  • Database Security: Query parameterization, encryption

βš™οΈ Team Configuration

  • Config Directory: .claude/config/ stores all team-specific settings
  • Example Configs: Pre-built configurations for startups, enterprises, and open source
  • Config Schema: Validation schema for configuration files
  • Config Loader: Shell script to load configurations as environment variables

πŸ“„ Customization Templates

  • Best Practice Template: Create new technology-specific best practices
  • Addendum Template: Add team customizations without modifying originals
  • Quick Reference: One-page team reference guide
  • Migration Guide: Template for teams transitioning from other frameworks

πŸ“Š Logging & Monitoring

Environment-specific logging strategies:

  • Development: Verbose console and file logging
  • Production: Error-only logging with monitoring integration

Usage Guide

Customizing Best Practices

The best practices files in .claude/best_practices/ provide comprehensive defaults based on industry standards. However, these files are meant to be customized to match your team's specific workflows and requirements.

πŸš€ Quick Start: Run ./scripts/customize-framework.sh for an interactive setup that customizes practices based on your team's needs.

πŸ“– Manual Customization: See the Customization Guide for detailed instructions.

βœ… Validate Customizations: Run ./scripts/validate-best-practices.sh to check your customizations for errors and consistency.

Feel free to edit these files to:

  • Add project-specific conventions
  • Modify guidelines to match your team's practices
  • Include company-specific requirements
  • Remove sections that don't apply to your use case

Session Management

When working with Claude Code, the session management system helps prevent conversation limit issues:

  1. Start with a health check:

    <Health-Check>
    

    This shows your session status and sets appropriate mode/scope.

  2. Monitor session health:

    • 🟒 Healthy (0-30 messages): Continue normally
    • 🟑 Approaching (31-45 messages): Plan for handover
    • πŸ”΄ Handover Now (46+ messages): Generate handover immediately
  3. Switch modes as needed:

    MODE: DEBUG      # For troubleshooting
    MODE: BUILD      # For implementation
    MODE: REVIEW     # For code review
    MODE: RAPID      # For quick responses
    
  4. Generate handover when needed:

    <Handover01>
    

    This creates a comprehensive handover document for the next session.

For detailed information, see the Session Management Guide.

Working on a New Task

  1. Start with session initialization:

    <Health-Check>
    Please retrieve the task from Jira MCP with the ID TASK-123 and proceed to create documentation for it.
    
  2. Create implementation:

    Create implementation from TASK-123
    
  3. Track your changes:

    • Claude Code automatically creates session files in claude_code_changes/
    • Format: claude_changes_YYYY-MM-DD_HH-MM.txt
    • Session state tracked in .claude/session/current-session.yaml
  4. Test your code in real-world cases

    Do your usual testing. Since I recommend always having a separate branch for each task, you can easily view the changes using Git Diff in any visual editor. This allows you to see what needs testing, what has been affected, and to apply your programming skills accordingly. Of course, test it and code it until it works.
    
  5. Linting and retest

    Sometimes linting modifies files, so you will need to review the changes and retest your code.
    
  6. Commit

    Commit your changes, push them, and create a pull request (PR) in Git, or merge directly into the develop/main branch (depending on your workflow). You can also request a version tag if needed. Use any Git commands you typically work with.
    
  7. Create Jira Comment/Change status

    Ask Claude to add a comment summarizing the work you’ve done. You can also ask to log the time spent or change the task status so it moves to QA for review.
    

Best Practices Summary

Git Commits

  • Only commit when explicitly requested
  • Use clear, descriptive commit messages
  • Include task IDs in branch names

Code Quality

  • Run linters before committing
  • Write tests before implementation (TDD)
  • Document API endpoints
  • Follow technology-specific conventions

Security

  • Never commit secrets or credentials
  • Use environment variables for configuration
  • Implement proper authentication and authorization
  • Follow OWASP guidelines

Logging

  • Development: Console + error logs for debugging
  • Production: No console output unless configured
  • Use structured logging with appropriate levels
  • Include request IDs for tracing

Contributing

  1. Follow the established patterns in existing files
  2. Update relevant documentation when adding features
  3. Test all changes thoroughly
  4. Create pull requests with detailed descriptions

Resources

License

[Your License Here]


For questions or issues, please refer to the project's issue tracker or contact the development team.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%