Skip to main content

TODO

Other Potential Additions

  • Microservices Patterns

    • Service communication, API versioning, saga patterns, distributed transactions
  • Feature Flags

    • Implementation, rollout strategies, cleanup process
  • Database Advanced Topics

    • Sharding, replication, read replicas, query optimization at scale
  • Message Queues

    • Kafka, RabbitMQ patterns, event-driven architecture

Outstanding Questions & Open Items

General

  • Sample HTTP requests from Insomnia
    • Should we use .http format for sharing API examples?
    • Consider adding example .http files to repository templates

Repositories

  • Developers using forks?

    • Current guidance assumes direct branch push access
    • Consider documenting fork-based workflow for open-source projects
  • Contents of .repo-metadata.json file - RESOLVED

    • Now documented in repositories.md with full example

Branching Strategy

  • Pre-release branches to encourage earlier feature merges?
    • Current GitFlow uses release/x.y.z branches
    • Consider adding guidance on early integration patterns
    • Trade-offs: complexity vs. early feedback

Java

  • Null safety with annotations @Nullable and @NonNull?

    • Consider enforcing with JSpecify/NullAway plugins in CI pipeline
    • Spring already uses @Nullable and @NonNull in many places
    • Decision: Make this mandatory or optional?
  • Return standard response structures?

    • Include status, message, and data fields (ApiResponse<T>)
    • Note: RFC 7807 Problem Details already documented for errors in api.md
    • Question: Should we standardize success responses too?

Spring Boot

Java Testing

  • Need TestContainers when only Wiremock required?
    • Current guidance: TestContainers for database integration tests
    • Question: For APIs with limited DB interaction, is Wiremock sufficient?
    • Consider: Test isolation vs. test execution speed trade-offs
    • Recommendation: Document both approaches with clear use case guidance

Angular

  • Prettier formatting via Spotless
    • For consistent pipelines across languages (Java uses Spotless)
    • Decision: Should Angular/TypeScript projects use Spotless or standard Prettier?
    • Current: Standard Prettier documented

React Native

  • CodePush vs. App Store updates?
    • When to use CodePush for hot fixes vs. full app store releases
    • Security implications for banking apps
    • Documented comprehensively across 6 React Native files

Security

  • Certificate pinning for mobile apps?
    • Mentioned as consideration but not fully documented
    • Banking apps may require this for production
    • Add comprehensive guide if needed