Preact's Goals

Goals

Preact aims to deliver on a few key goals:

  • Performance: Render quickly & efficiently
  • Size: Small size, lightweight (approximately 3.5kb)
  • Efficiency: Effective memory usage (avoiding GC thrash)
  • Understandability: Understanding the codebase should take no more than a few hours
  • Compatibility: Preact aims to be largely compatible with the React API. preact/compat attempts to achieve as much compatibility with React as possible.

Non-Goals

Some React features are intentionally omitted from Preact, either because they are not achievable while meeting the primary project goals listed above or because they don't fit within the scope of Preact's core set of functionality.

  • The intentional items under Differences to React:
  • PropTypes, which are easily used as a separate library
  • Children, can be replaced with native arrays
  • Synthetic Events, since Preact does not attempt to patch issues in older browsers like IE8

Built by a bunch of lovely people like @robertknight.