# Word of Wisdom TCP Server ## Implementation Details ### Technology Stack - **Language**: Go (Golang) - **Protocol**: Custom TCP protocol as defined in PROTOCOL.md - **Implementation Plan**: Follow the detailed plan and checkboxes in IMPLEMENTATION.md ### Development Guidelines #### Commit Strategy - Create a commit after every finished change - Commit messages must answer: "What should I do to make this change?" - Example: "Add proof of work challenge generation", "Implement quote storage service" #### Code Quality Standards - No AI-generated code indicators (avoid verbose comments or watermarks) - Production-grade implementation required #### Production Requirements ##### Observability - Structured logging throughout the application - Metrics collection for monitoring - Proper error handling and reporting ##### Documentation - Comprehensive documentation for all server components - Clear API documentation - Usage examples and deployment guides ##### Testability & Architecture - Dependency Injection (DI) pattern for all major components - Easily testable architecture - Mock implementations for external dependencies ##### Testing Strategy - Unit tests for all major functionality - Integration tests for end-to-end workflows - Test coverage for critical paths ##### Deployment - Dockerfiles for both server and client - Docker Compose file for orchestration - Production-ready configuration ##### Data Storage - Use fake/in-memory implementations for quick development - Architecture must support easy swapping to real databases - DI pattern enables seamless production deployment upgrades ## Quick Start 1. Follow protocol specification in docs/PROTOCOL.md 2. Complete implementation tasks in docs/IMPLEMENTATION.md 3. Run tests: `go test ./...` 4. Build containers: `docker-compose build` 5. Start services: `docker-compose up`