Skip to content

Project Goals

Jason Miller edited this page Feb 3, 2016 · 1 revision

Preact's 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 (recycling, 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 What's Missing?:
    • PropTypes, which are easily used as a separate library
    • Children, since Preact always boxes children as an Array
    • Synthetic Events, since Preact does not attempt to patch issues in older browsers like IE8