Skip to content

Proposal: New Starter Template Strategy for Waku Ecosystem #246

@jimenezz22

Description

@jimenezz22

Problem Statement

After conducting a comprehensive analysis of the current @waku/create-app
template ecosystem, I've identified critical gaps that are hindering developer
adoption and showcasing Waku's full potential:

Current Issues:

  • Fragmentation: 13+ separate repositories create confusion for new developers
  • Outdated Patterns: 0% of templates use the official @waku/react hooks despite availability and also this templates are too old
  • Single Protocol Focus: Each template demonstrates only one Waku protocol, missing the synergy
  • Inconsistent Quality: Variable code quality, some with XSS vulnerabilities, no testing patterns
  • Framework Gaps: No Vue.js, NextJS, or modern framework support beyond React in the starters.

Proposed Solution

Phase 1: Flagship "Community Hub" Template

Create a comprehensive template that demonstrates all core Waku protocols
working together in a realistic use case:


🏠 Community Hub Application
├── 📢 Public Announcements    (Light Push + Filter + RLN)
├── 💬 Group Discussions      (Light Push + Filter + Store)
├── 🔒 Private Messages       (Light Push + Filter + Noise)
├── 📊 Network Status         (Relay + Peer Discovery)
└── ⚙️ Protocol Configuration

Key Features:

  • Shows protocol synergy in realistic UX
  • Modern patterns: TypeScript, @waku/react hooks, PWA capabilities
  • Production-ready with proper error handling and security
  • Educational value: developers see Waku's full potential immediately

Phase 2: Feature-Specific Starters

Extract focused templates from the Community Hub for specific learning:

  • waku-chat-starter (basic messaging)
  • waku-private-starter (Noise encryption)
  • waku-sync-starter (Store protocol patterns)
  • waku-announcements-starter (RLN + public messaging)

Phase 3: Framework Expansion

Leverage shared core logic to create versions for:

  • Vue.js
  • Next.js
  • React Native (When waku sdk for react native is available)

Implementation Approach

Shared Architecture


core/                   # Framework-agnostic Waku logic
├── waku-service.ts    # Protocol management
├── message-codecs.ts  # Encoding/decoding
├── encryption.ts      # Noise implementation
└── types.ts           # TypeScript definitions

ui/                    # Framework-specific implementations
├── react/            # React + @waku/react hooks
├── vue/              # Vue 3 + Composition API
└── nextjs/           # Next.js + SSR patterns

Benefits:

  • 80% code reuse across frameworks
  • Consistent Waku patterns
  • Faster development and maintenance
  • Better testing coverage

Quality Standards

All new templates will include:

  • ✅ TypeScript with strict mode
  • ✅ PWA capabilities (Service Worker, Manifest)
  • ✅ Comprehensive error handling and recovery
  • ✅ Input sanitization and security best practices
  • ✅ Mobile-first responsive design
  • ✅ Testing examples and patterns
  • ✅ Production deployment guides

Community Impact

This approach will:

  • Reduce developer confusion with clear, modern examples
  • Showcase Waku's full capabilities in realistic applications
  • Enable faster onboarding with production-ready patterns
  • Expand framework support beyond just React
  • Improve ecosystem quality with consistent standards

💬 Would love to get feedback and approval to move forward with this implementation!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions