Everybody can contribute to Angular, let's build it together! | Matthieu Riegler | ng-conf 2024

Learn how to contribute effectively to Angular with best practices for code comments, breaking changes, testing, and community participation - from small fixes to major features.

Key takeaways
  • Contributing to Angular is welcome and encouraged by the team, with specific issue labels like “good first issue” and “help wanted” to guide new contributors

  • Writing good code comments is essential - focus on explaining why something was done rather than what the code does, helping future maintainers understand the context

  • When making changes, be aware of breaking changes and provide migration paths when needed to help users upgrade smoothly

  • The Angular codebase is protected by extensive testing (30K+ test cases), integration tests, and is battle-tested in Google’s monorepo with thousands of apps

  • Start with simple contributions you’re comfortable with - fixing typos, refactoring deprecated code, or addressing non-critical but valuable features

  • Always provide a minimal reproduction when reporting issues - it helps both investigation and solution development

  • The API surface (public interfaces) must be carefully managed, as changes can affect many applications

  • Changes are tracked through multiple systems:

    • Symbol tracking for API changes
    • Size tracking for bundle size impacts
    • Dependency circle tracking to prevent circular dependencies
  • Making breaking changes requires careful consideration and usually needs migration scripts that run with ng-update

  • The community can contribute beyond code - including RFCs, suggesting features, testing release candidates, and reporting issues