A comprehensive template system for structured project development with Kiro, featuring spec-driven development methodology, guided decision-making, and quality assurance throughout all project phases.
kiro template-system project-management spec-driven-development property-based-testing ai-collaboration development-workflow quality-assurance markdown-templates validation-tools
This template system transforms rough project ideas into detailed, executable specifications through a structured workflow that emphasizes:
- Guided Decision-Making: Multiple choice options at every key decision point
- Quality Assurance: Built-in validation and quality gates
- Property-Based Testing: Formal correctness properties and testing strategies
- Spec-Driven Development: Integration with Kiro's requirements β design β tasks workflow
- Decision Tracking: Comprehensive logging of choices and reasoning
project-template.md # Master workflow guide
βββ templates/workflow/ # Phase-specific templates
β βββ requirements-template.md # Requirements gathering
β βββ design-template.md # Architecture & design
β βββ tasks-template.md # Implementation planning
βββ templates/standards/ # Development standards
β βββ tech-stack-standards.md # Technology requirements
β βββ interaction-rules.md # Developer interaction guidelines
β βββ ai-collaboration-guidelines.md # AI assistant collaboration best practices
βββ templates/reference/ # Reference materials
β βββ glossary.md # Terminology & definitions
βββ template-development-decisions.md # Decision log from template creation
βββ README.md # This file
βββ faq.md # Frequently asked questions
- Read the Master Guide: Start with
project-template.mdto understand the complete workflow - Choose Your Starting Phase:
- Phase 0: Project initialization (new projects)
- Phase 1: Requirements gathering (have rough idea)
- Phase 2: Design (have requirements)
- Phase 3: Implementation planning (have design)
- Use Phase Templates: Follow the appropriate template in
templates/workflow/ - Apply Standards: Reference
templates/standards/for technical requirements - Track Decisions: Create a decision log for your project
- Assess Current State: Determine which phase your project is in
- Fill Documentation Gaps: Use templates to create missing specifications
- Standardize: Apply standards to improve consistency
- Enhance Quality: Add property-based testing and validation
- Objective: Establish foundation and technology decisions
- Key Decisions: Project type, complexity level, quality requirements
- Outputs: Project structure, tech stack configuration, initial documentation
- Template:
templates/workflow/requirements-template.md - Objective: Define what the project should accomplish
- Key Decisions: Stakeholder identification, elicitation methods, acceptance criteria style
- Outputs:
.kiro/specs/{project-name}/requirements.md, user stories, priority matrix
- Template:
templates/workflow/design-template.md - Objective: Define how the project will be built
- Key Decisions: Architecture patterns, data management, API design, testing strategy
- Outputs:
.kiro/specs/{project-name}/design.md, architecture diagrams, correctness properties
- Template:
templates/workflow/tasks-template.md - Objective: Break down design into actionable tasks
- Key Decisions: Task breakdown strategy, development approach, quality gates
- Outputs:
.kiro/specs/{project-name}/tasks.md, dependencies, timeline estimates
- Process: Execute using Kiro's task execution capabilities
- Quality Gates: Validation at each step
- Documentation: Continuous updates and final deliverables
- Python: Version 3.14 (managed by uv)
- Package Manager: uv (with virtual environments)
- Platform: Cross-platform (Windows, Mac, Linux)
- Configuration: uv.toml and pyproject.toml
- Web Framework: FastAPI (preferred), Flask, Django
- Testing: pytest, hypothesis (property-based testing)
- Code Quality: Black, Ruff, mypy
- Documentation: Sphinx, MkDocs, Markdown Style Guide
- Databases: PostgreSQL (preferred), SQLite, MongoDB
- Build Tool: Just (modern make alternative)
- Validation: Python scripts with comprehensive checks
- Linting: markdownlint for documentation quality
- CI/CD: GitHub Actions integration
- Development: Automated project creation and testing
See templates/standards/tech-stack-standards.md for complete details.
Install Just: https://github.com/casey/just
# Quick development workflow
just dev
# Full validation suite
just validate-all
# Create new project from templates
just create-project my-new-project
# See all available commands
just --list# Validate templates
just validate
# Check markdown formatting
just lint
# Test template system
just test-templates
# Clean temporary files
just cleanEvery key decision point offers:
- 5 Standard Options: Covering most common scenarios
- Custom Option: "Other - please specify" for unique needs
- Clear Trade-offs: Advantages and disadvantages explained
- Decision Logging: Record choices and reasoning
Architecture Pattern Selection:
A) Layered architecture (traditional MVC/MVP)
B) Hexagonal architecture (ports & adapters)
C) Microservices architecture
D) Event-driven architecture
E) Custom architecture pattern
Choice: B) Hexagonal architecture
Reasoning: Better testability and separation of concerns for our domain-heavy application
- Requirements Phase: All requirements testable and measurable
- Design Phase: Architecture addresses all requirements
- Implementation: Code passes all tests and meets acceptance criteria
- Testing: Comprehensive test coverage including property-based tests
- Deployment: Complete documentation and monitoring
- Define correctness properties during design phase
- Implement property-based tests alongside unit tests
- Use Hypothesis framework for test generation
- Validate universal properties across all inputs
Maintain a decision log for every project:
| Decision ID | Date | Phase | Decision | Options | Choice | Reasoning | Impact |
|---|---|---|---|---|---|---|---|
| PD-001 | 2026-01-25 | Phase 0 | Architecture Pattern | Layered, Hexagonal, Microservices | B) Hexagonal | Better testability | Improved code organization |
For significant architectural decisions:
- Status: Proposed/Accepted/Deprecated
- Context: Why this decision was needed
- Decision: What was decided
- Consequences: Positive and negative outcomes
The template system is specifically designed for effective human-AI collaboration:
- Structured Prompts: Templates provide clear context for AI interactions
- Decision Partnership: Clear guidelines on when to use AI assistance vs. human judgment
- Quality Assurance: Built-in validation processes for AI-generated content
- Prompt Engineering: Phase-specific prompt templates for optimal AI collaboration
- Continuous Learning: Decision logs capture successful collaboration patterns
See templates/standards/ai-collaboration-guidelines.md for comprehensive guidance on:
- Effective prompt engineering for each workflow phase
- Decision delegation strategies
- Code quality validation for AI-generated content
- Common collaboration patterns and troubleshooting
- Code Generation: Implementing well-defined functions and boilerplate
- Testing: Creating unit tests, property-based tests, and test data
- Documentation: Generating docstrings, API docs, and technical content
- Analysis: Evaluating options, identifying patterns, suggesting improvements
- Standards Compliance: Ensuring code follows established guidelines
- Business Requirements: Understanding stakeholder needs and priorities
- Strategic Decisions: Long-term architecture and technology choices
- User Experience: Interface design and interaction patterns
- Quality Judgment: Final validation of AI suggestions and implementations
- Read
project-template.mdPhase 0 - Choose "Web Application (FastAPI + Frontend)"
- Use
templates/workflow/requirements-template.md - Apply tech stack from
templates/standards/tech-stack-standards.md - Create decision log for your project
- Review current test coverage
- Use design template to define correctness properties
- Implement property-based tests using Hypothesis
- Add integration tests following template guidance
- Explore
examples/task-manager-cli/for complete workflow demonstration - Review decision log to understand choice reasoning
- See how templates are applied to real project scenarios
- Use as reference for your own projects
- Assess current documentation gaps
- Use appropriate workflow templates to fill gaps
- Apply interaction standards for consistency
- Update decision log with documentation choices
- Test templates with real projects
- Gather feedback on usability
- Suggest improvements via issues or pull requests
- Share successful customizations
- Document successful decision patterns
- Share lessons learned from project outcomes
- Contribute to FAQ with common questions
- Help improve template effectiveness
This project was developed with assistance from Kiro AI, combining human creativity and direction with AI capabilities to create a comprehensive template system for structured project development.
- FAQ: See
faq.mdfor frequently asked questions - Decision Log: Review
template-development-decisions.mdfor template creation decisions - Example Project: Explore
examples/task-manager-cli/for complete workflow demonstration - Integration Guides: Check
guides/integrations/for tool integration examples - Glossary: Check
templates/reference/glossary.mdfor terminology - Standards: Reference
templates/standards/for detailed requirements- Tech Stack Standards - Technology requirements and approved tools
- Markdown Style Guide - Consistent formatting rules
- AI Collaboration Guidelines - Working effectively with AI assistants
- Interaction Rules - Developer interaction guidelines
- Check
faq.mdfor common questions - Review decision log for similar situations
- Use Kiro's built-in help and documentation
- Create issues for template-specific problems
- Always document your decisions
- Use quality gates to maintain standards
- Iterate and improve based on experience
- Share learnings with the community
Version: 1.0.0 Last Updated: January 25, 2026 Compatibility: Kiro AI Assistant, Python 3.14, uv package manager