Cybersecurity-Projects/.github/learn-folder-template/CHECKLIST.md

5.1 KiB

Learn Folder Checklist

Quick reference for what to include in each file.

00-OVERVIEW.md

  • What This Is - 2-3 sentence project description
  • Why This Matters - Real world problem it solves
  • Real world scenarios - 3 specific use cases
  • What You'll Learn - Security concepts, technical skills, tools
  • Prerequisites - Required knowledge, tools needed, nice-to-haves
  • Quick Start - Installation steps that work
  • Project Structure - Key directories and files
  • Next Steps - Links to other learn files
  • Common Issues - 2-3 frequent problems with solutions
  • Related Projects - Links to similar projects

01-CONCEPTS.md

  • Primary Concept - What it is, why it matters, how it works
  • Common Attacks - 3+ specific attack techniques
  • Defense Strategies - How to protect against attacks
  • Secondary Concept - Same structure
  • Common Pitfalls - Code examples of mistakes vs correct approach
  • How Concepts Relate - Connection diagram
  • Industry Standards - OWASP, MITRE, CWE mappings
  • Real World Examples - 2+ actual incidents/breaches
  • Testing Your Understanding - 3+ questions
  • Further Reading - Essential and deep dive resources

02-ARCHITECTURE.md

  • High Level Architecture - ASCII diagram with components
  • Component Breakdown - Purpose and responsibilities of each
  • Data Flow - Step by step walkthrough with code references
  • Design Patterns - Patterns used, why, trade-offs
  • Layer Separation - If applicable, explain layers
  • Data Models - Key structures with field explanations
  • Security Architecture - Threat model and defense layers
  • Storage Strategy - What's stored where and why
  • Configuration - Environment variables and strategy
  • Performance Considerations - Bottlenecks and optimizations
  • Design Decisions - Major choices, alternatives, trade-offs
  • Deployment Architecture - How it runs in production
  • Error Handling - Strategy for different error types
  • Extensibility - Where and how to add features
  • Limitations - Current architectural constraints
  • Comparison - How this differs from similar systems

03-IMPLEMENTATION.md

  • File Structure - Walkthrough of directory layout
  • Building Core Feature 1 - Step by step with code
  • Building Core Feature 2 - Same structure
  • Security Implementation - How security features work
  • Data Flow Example - Complete request trace through system
  • Error Handling - Patterns with code examples
  • Performance Optimizations - Before/after with benchmarks
  • Configuration Management - Loading and validation
  • Database Operations - CRUD with transaction handling
  • Integration Points - External systems/APIs
  • Testing Strategy - Unit and integration test examples
  • Common Pitfalls - Mistakes with symptoms, causes, fixes
  • Debugging Tips - How to troubleshoot common issues
  • Code Organization - Why files structured this way
  • Extending the Code - Template for adding features
  • Code Style - Linting, formatting, type annotations
  • Dependencies - Why each dependency, security scanning
  • Build and Deploy - Commands for building and running

04-CHALLENGES.md

  • Easy Challenges (3+) - Simple extensions with hints
  • Intermediate Challenges (2+) - More complex features
  • Advanced Challenges (2+) - Significant new capabilities
  • Expert Challenges (1+) - Major features with detailed planning
  • Mix and Match - Combined project ideas
  • Real World Integration - External system connections
  • Performance Challenges - Scale and optimization tasks
  • Security Challenges - Additional security features
  • Contribution Ideas - How to share back
  • Challenge Yourself Further - Build new things, study others
  • Getting Help - Debugging and asking for help
  • Challenge Completion - Checklist to track progress

For Each Challenge

  • What to build - Specific feature description
  • Why it's useful - Real world application
  • What you'll learn - Skills and concepts
  • Hints - Guidance without full solution
  • Test it works - Verification steps

Writing Quality Checks

  • No em dashes (use periods or commas)
  • Minimal "it's not X, it's Y" contrast flips
  • Inconsistent hyphenation (mix it up)
  • Concrete examples, not abstractions
  • Real code from the project (not toy examples)
  • File and line number references
  • ASCII diagrams where helpful
  • Real world incidents referenced
  • Common mistakes shown
  • Human voice (not AI marketing speak)

Before Publishing

  • All links work
  • Code examples tested
  • Quick start instructions verified
  • Consistent formatting
  • No placeholder text left
  • Reviewed by someone else if possible
  • Spelling and grammar checked
  • Makes sense to someone unfamiliar with the project