LogoSkills

Feature Complete Checklist

A checklist to verify before completing feature development.

A checklist to verify before completing feature development.

Usage#

@checklist:feature-complete [feature_name]

1. Structure Verification#

Domain Layer#

  • Entity definition complete (Freezed)
  • Repository Interface defined (I prefix)
  • UseCase implementation complete
  • Failure class defined
  • Unit tests written

Data Layer#

  • Repository implementation complete
  • Serverpod Mixin implemented (if needed)
  • Local Database implemented (if needed)
  • DTO ↔ Entity mapper implemented
  • Caching strategy applied (SWR/Cache-First)

Presentation Layer#

  • Page widget implemented
  • Reusable Widgets extracted
  • BLoC/Cubit implemented
  • Event/State defined (Freezed)
  • Widget tests written

DI & Routing#

  • Injectable annotations added
  • Route defined (Auto_route)
  • Route Guard applied (if needed)

2. Code Generation#

# Feature package build
melos run generate:{feature_name}

# Or full build
melos run build
  • Freezed code generated (*.freezed.dart)
  • Injectable code generated (*.g.dart)
  • Route code generated
  • No build errors

3. Testing#

Unit Tests#

  • UseCase tests
    • Happy path tests
    • Error case tests
    • Edge case tests
  • Repository tests (mocked data source)

BLoC Tests#

  • Initial state test
  • Event → state transition tests
  • Error handling tests
  • Sequential event tests

Widget Tests#

  • Rendering tests
  • Interaction tests
  • State-specific UI tests

Execution Verification#

# Run feature tests
flutter test feature/{type}/{feature_name}/test/

# Check coverage
melos run test:with-html-coverage
  • All tests passing
  • Coverage 80% or above

4. Documentation#

Code Documentation#

  • dartdoc comments on public APIs
  • Explanatory comments on complex logic
  • TODO comments resolved or issues filed

Feature Documentation#

  • README.md updated (if needed)
  • API changes documented
  • Breaking Changes noted

5. Internationalization#

  • All UI text uses translation keys
  • Translation files updated
       melos run generate:locale
    
  • Pluralization/parameter handling verified
  • All supported languages translated

6. Performance Optimization#

UI Performance#

  • const widgets utilized
  • BlocBuilder buildWhen applied
  • ListView.builder used (for long lists)
  • Image cacheWidth/cacheHeight applied

Data Performance#

  • Appropriate caching strategy
  • Pagination applied (if needed)
  • Unnecessary API calls removed

Memory Management#

  • Resources released in dispose
  • Stream subscriptions cancelled
  • Controllers disposed

7. Security Review#

  • No hardcoded sensitive information
  • Input validation applied
  • Appropriate error messages (no information leakage)
  • Authentication/authorization applied (if needed)

8. Accessibility#

  • Semantics labels applied
  • Touch target size verified (48x48 minimum)
  • Color contrast verified
  • Screen reader tested

9. Static Analysis#

# Lint check
melos run analyze

# Formatting check
melos run format
  • No lint warnings
  • Code formatting complete

10. Integration Verification#

Local Testing#

  • Working correctly in development environment
  • Error case scenarios tested
  • Network offline tested

Build Verification#

# iOS build
flutter build ios --flavor development

# Android build
flutter build apk --flavor development
  • iOS build successful
  • Android build successful

11. PR Preparation#

  • Meaningful commit messages (Conventional + Gitmoji)
  • Related issues linked
  • Reviewers assigned
  • Labels added

Commit Message Example#

feat(home):Add user profile feature

- Profile view/edit UseCase implementation
- ProfileBloc state management
- Profile edit UI implementation

Closes #123

Completion Summary#

ItemStatus
Structure Verification
Code Generation
Testing
Documentation
Internationalization
Performance Optimization
Security Review
Accessibility
Static Analysis
Integration Verification
PR Preparation

Overall Complete: ⬜/11


  • @feature: Feature structure generation
  • @test: Test writing guide
  • @code-review: Code review checklist
  • @i18n: Internationalization guide